1 # 0.1.21 (April 26, 2022)
3 This release adds support for setting explicit parent and follows-from spans
4 in the `#[instrument]` attribute.
8 - `#[instrument(follows_from = ...)]` argument for setting one or more
9 follows-from span ([#2093])
10 - `#[instrument(parent = ...)]` argument for overriding the generated span's
15 - Extra braces around `async` blocks in expanded code (causes a Clippy warning)
17 - Broken documentation links ([#2068], [#2077])
19 Thanks to @jarrodldavis, @ben0x539, and new contributor @jswrenn for
20 contributing to this release!
23 [#2093]: https://github.com/tokio-rs/tracing/pull/2093
24 [#2091]: https://github.com/tokio-rs/tracing/pull/2091
25 [#2090]: https://github.com/tokio-rs/tracing/pull/2090
26 [#2077]: https://github.com/tokio-rs/tracing/pull/2077
27 [#2068]: https://github.com/tokio-rs/tracing/pull/2068
29 # 0.1.20 (March 8, 2022)
33 - Compilation failure with `--minimal-versions` due to a too-permissive `syn`
38 - Bumped minimum supported Rust version (MSRV) to 1.49.0 ([#1913])
40 Thanks to new contributor @udoprog for contributing to this release!
42 [#1960]: https://github.com/tokio-rs/tracing/pull/1960
43 [#1913]: https://github.com/tokio-rs/tracing/pull/1913
45 # 0.1.19 (February 3, 2022)
47 This release introduces a new `#[instrument(ret)]` argument to emit an event
48 with the return value of an instrumented function.
52 - `#[instrument(ret)]` to record the return value of a function ([#1716])
53 - added `err(Debug)` argument to cause `#[instrument(err)]` to record errors
54 with `Debug` rather than `Display ([#1631])
58 - incorrect code generation for functions returning async blocks ([#1866])
59 - incorrect diagnostics when using `rust-analyzer` ([#1634])
61 Thanks to @Swatinem, @hkmatsumoto, @cynecx, and @ciuncan for contributing to
64 [#1716]: https://github.com/tokio-rs/tracing/pull/1716
65 [#1631]: https://github.com/tokio-rs/tracing/pull/1631
66 [#1634]: https://github.com/tokio-rs/tracing/pull/1634
67 [#1866]: https://github.com/tokio-rs/tracing/pull/1866
69 # 0.1.18 (October 5, 2021)
71 This release fixes issues introduced in v0.1.17.
75 - fixed mismatched types compiler error that may occur when using
76 `#[instrument]` on an `async fn` that returns an `impl Trait` value that
77 includes a closure ([#1616])
78 - fixed false positives for `clippy::suspicious_else_formatting` warnings due to
79 rust-lang/rust-clippy#7760 and rust-lang/rust-clippy#6249 ([#1617])
80 - fixed `clippy::let_unit_value` lints when using `#[instrument]` ([#1614])
82 [#1617]: https://github.com/tokio-rs/tracing/pull/1617
83 [#1616]: https://github.com/tokio-rs/tracing/pull/1616
84 [#1614]: https://github.com/tokio-rs/tracing/pull/1614
86 # 0.1.17 (YANKED) (October 1, 2021)
88 This release significantly improves performance when `#[instrument]`-generated
89 spans are below the maximum enabled level.
93 - improve performance when skipping `#[instrument]`-generated spans below the
94 max level ([#1600], [#1605])
96 Thanks to @oli-obk for contributing to this release!
98 [#1600]: https://github.com/tokio-rs/tracing/pull/1600
99 [#1605]: https://github.com/tokio-rs/tracing/pull/1605
101 # 0.1.16 (September 13, 2021)
103 This release adds a new `#[instrument(skip_all)]` option to skip recording *all*
104 arguments to an instrumented function as fields. Additionally, it adds support
105 for recording arguments that are `tracing` primitive types as typed values,
106 rather than as `fmt::Debug`.
110 - add `skip_all` option to `#[instrument]` ([#1548])
111 - record primitive types as primitive values rather than as `fmt::Debug`
113 - added support for `f64`s as typed values ([#1522])
115 Thanks to @Folyd and @jsgf for contributing to this release!
117 [#1548]: https://github.com/tokio-rs/tracing/pull/1548
118 [#1378]: https://github.com/tokio-rs/tracing/pull/1378
119 [#1522]: https://github.com/tokio-rs/tracing/pull/1524
121 # 0.1.15 (March 12, 2021)
125 - `#[instrument]` on functions returning `Box::pin`ned futures incorrectly
126 skipping function bodies prior to returning a future ([#1297])
128 Thanks to @nightmared for contributing to this release!
130 [#1297]: https://github.com/tokio-rs/tracing/pull/1297
132 # 0.1.14 (March 10, 2021)
136 - Compatibility between `#[instrument]` and `async-trait` v0.1.43 and newer
139 Thanks to @nightmared for lots of hard work on this fix!
141 [#1228]: https://github.com/tokio-rs/tracing/pull/1228
143 # 0.1.13 (February 17, 2021)
147 - Compiler error when using `#[instrument(err)]` on functions which return `impl
150 [#1236]: https://github.com/tokio-rs/tracing/pull/1236
152 # 0.1.12 (February 4, 2021)
156 - Compiler error when using `#[instrument(err)]` on functions with mutable
158 - Missing function visibility modifier when using `#[instrument]` with
159 `async-trait` ([#977])
160 - Multiple documentation fixes and improvements ([#965], [#981], [#1215])
164 - `tracing-futures` dependency is no longer required when using `#[instrument]`
165 on async functions ([#808])
167 Thanks to @nagisa, @Txuritan, @TaKO8Ki, and @okready for contributing to this
170 [#1167]: https://github.com/tokio-rs/tracing/pull/1167
171 [#977]: https://github.com/tokio-rs/tracing/pull/977
172 [#965]: https://github.com/tokio-rs/tracing/pull/965
173 [#981]: https://github.com/tokio-rs/tracing/pull/981
174 [#1215]: https://github.com/tokio-rs/tracing/pull/1215
175 [#808]: https://github.com/tokio-rs/tracing/pull/808
177 # 0.1.11 (August 18, 2020)
181 - Corrected wrong minimum supported Rust version note in docs (#941)
182 - Removed unused `syn` features (#928)
184 Thanks to new contributor @jhpratt for contributing to this release!
186 # 0.1.10 (August 10, 2020)
190 - Support for using `self` in field expressions when instrumenting `async-trait`
192 - Several documentation improvements (#832, #897, #911, #913)
194 Thanks to @anton-dutov and @nightmared for contributing to this release!
196 # 0.1.9 (July 8, 2020)
200 - Support for arbitrary expressions as fields in `#[instrument]` (#672)
204 - `#[instrument]` now emits a compiler warning when ignoring unrecognized
207 # 0.1.8 (May 13, 2020)
211 - Support for using `#[instrument]` on methods that are part of [`async-trait`]
212 trait implementations (#711)
213 - Optional `#[instrument(err)]` argument to automatically emit an event if an
214 instrumented function returns `Err` (#637)
216 Thanks to @ilana and @nightmared for contributing to this release!
218 [`async-trait`]: https://crates.io/crates/async-trait
220 # 0.1.7 (February 26, 2020)
224 - Support for adding arbitrary literal fields to spans generated by
225 `#[instrument]` (#569)
226 - `#[instrument]` now emits a helpful compiler error when attempting to skip a
227 function parameter (#600)
229 Thanks to @Kobzol for contributing to this release!
231 # 0.1.6 (December 20, 2019)
235 - Updated documentation (#468)
237 # 0.1.5 (October 22, 2019)
241 - Support for destructuring in arguments to `#[instrument]`ed functions (#397)
242 - Generated field for `self` parameters when `#[instrument]`ing methods (#397)
244 # 0.1.4 (September 26, 2019)
248 - Optional `skip` argument to `#[instrument]` for excluding function parameters
249 from generated spans (#359)
251 # 0.1.3 (September 12, 2019)
255 - Fixed `#[instrument]`ed async functions not compiling on `nightly-2019-09-11`
258 # 0.1.2 (August 19, 2019)
262 - Updated `syn` and `quote` dependencies to 1.0 (#292)
263 - Removed direct dependency on `proc-macro2` to avoid potential version
268 - Outdated idioms in examples (#271, #273)
270 # 0.1.1 (August 9, 2019)
274 - Using the `#[instrument]` attribute on `async fn`s no longer requires a
279 - The `#[instrument]` macro now works on generic functions (#262)
281 # 0.1.0 (August 8, 2019)