Skip to content

Releases: tokio-rs/tracing

tracing-core 0.1.31

11 May 23:23
tracing-core-0.1.31
bec8228
Compare
Choose a tag to compare

This release of tracing-core fixes a bug that caused threads which call
dispatcher::get_default before a global default subscriber is set to never
see the global default once it is set. In addition, it includes improvements for
instrumentation performance in some cases, especially when using a global
default dispatcher.

Fixed

  • Fixed incorrect thread-local caching of Dispatch::none if
    dispatcher::get_default is called before dispatcher::set_global_default
    (#2593)

Changed

  • Cloning a Dispatch that points at a global default subscriber no longer
    requires an Arc reference count increment, improving performance
    substantially (#2593)
  • dispatcher::get_default no longer attempts to access a thread local if the
    scoped dispatcher is not in use, improving performance when the default
    dispatcher is global (#2593)
  • Added #[inline] annotations called by the event! and span! macros to
    reduce the size of macro-generated code and improve recording performance
    (#2555)

Thanks to new contributor @ldm0 for contributing to this release!

tracing 0.1.38

25 Apr 17:31
tracing-0.1.38
3de7f8c
Compare
Choose a tag to compare

This tracing release changes the Drop implementation for Instrumented
Futures so that the attached Span is entered when dropping the Future. This
means that events emitted by the Future's Drop implementation will now be
recorded within its Span. It also adds #[inline] hints to methods called in
the event! macro's expansion, for an improvement in both binary size and
performance.

Additionally, this release updates the tracing-attributes dependency to
v0.1.24, which updates the syn dependency to v2.x.x.
tracing-attributes v0.1.24 also includes improvements to the #[instrument]
macro; see the tracing-attributes 0.1.24 release notes for
details.

Added

  • Instrumented futures will now enter the attached Span in their Drop
    implementation, allowing events emitted when dropping the future to occur
    within the span (#2562)
  • #[inline] attributes for methods called by the event! macros, making
    generated code smaller (#2555)
  • attributes: level argument to #[instrument(err)] and
    #[instrument(ret)] to override the level of
    the generated return value event (#2335)
  • attributes: Improved compiler error message when #[instrument] is added to a const fn
    (#2418)

Changed

  • tracing-attributes: updated to 0.1.24
  • Removed unneeded cfg-if dependency (#2553)
  • attributes: Updated syn dependency to 2.0 (#2516)

Fixed

  • attributes: Fix clippy::unreachable warnings in #[instrument]-generated code (#2356)
  • attributes: Removed unused "visit" feature flag from syn dependency (#2530)

Documented

  • attributes: Documented default level for #[instrument(err)] (#2433)
  • attributes: Improved documentation for levels in #[instrument] (#2350)

Thanks to @nitnelave, @jsgf, @Abhicodes-crypto, @LukeMathWalker, @andrewpollack,
@quad, @klensy, @davidpdrsn, @dbidwell94, @ldm0, @NobodyXu, @ilsv, and @daxpedda
for contributing to this release!

tracing-attributes 0.1.24

24 Apr 16:39
tracing-attributes-0.1.24
e35265a
Compare
Choose a tag to compare

This release of tracing-attributes adds support for passing an optional
level to the err and ret arguments to #[instrument], allowing the level
of the generated return-value event to be overridden. For example,

#[instrument(err(level = "info"))]
fn my_great_function() -> Result<(), &'static str> {
    // ...
}

will emit an INFO-level event if the function returns an Err.

In addition, this release updates the syn dependency to v2.x.x.

Added

  • level argument to err and ret to override the level of the generated
    return value event (#2335)
  • Improved compiler error message when #[instrument] is added to a const fn
    (#2418)

Changed

  • Updated syn dependency to 2.0 (#2516)

Fixed

  • Fix clippy::unreachable warnings in #[instrument]-generated code (#2356)
  • Removed unused "visit" feature flag from syn dependency (#2530)

Documented

  • Documented default level for err (#2433)
  • Improved documentation for levels in #[instrument] (#2350)

Thanks to @nitnelave, @jsgf, @Abhicodes-crypto, @LukeMathWalker, @andrewpollack,
@quad, @klensy, @davidpdrsn, and @dbidwell94 for contributign to this release!

tracing-subscriber 0.3.17

22 Apr 01:58
tracing-subscriber-0.3.17
0114ec1
Compare
Choose a tag to compare

This release of tracing-subscriber fixes a build error when using env-filter
with recent versions of the regex crate. It also introduces several minor API
improvements.

Fixed

  • env-filter: Add "unicode-case" and "unicode-perl" to the regex
    dependency, fixing a build error with recent versions of regex (#2566)
  • A number of minor documentation typos and other fixes (#2384, #2378,
    #2368, #2548)

Added

  • filter: Add fmt::Display impl for filter::Targets (#2343)
  • fmt: Made with_ansi(false) no longer require the "ansi" feature, so that
    ANSI formatting escapes can be disabled without requiring ANSI-specific
    dependencies (#2532)

Changed

  • fmt: Dim targets in the Compact formatter, matching the default
    formatter (#2409)

Thanks to @keepsimple1, @andrewhalle, @LeoniePhiline, @LukeMathWalker,
@howardjohn, @daxpedda, and @dbidwell94 for contributing to this release!

tracing-subscriber 0.3.16

06 Oct 22:27
tracing-subscriber-0.3.16
b28c935
Compare
Choose a tag to compare

This release of tracing-subscriber fixes a regression introduced in
v0.3.15 where Option::None's Layer implementation would
set the max level hint to OFF. In addition, it adds several new APIs,
including the Filter::event_enabled method for filtering events based on
fields values, and the ability to log internal errors that occur when writing a
log line.

This release also replaces the dependency on the unmaintained [ansi-term]
crate with the [nu-ansi-term] crate, resolving an informational security
advisory (RUSTSEC-2021-0139) for [ansi-term]'s maintainance status. This
increases the minimum supported Rust version (MSRV) to Rust 1.50+, although the
crate should still compile for the previous MSRV of Rust 1.49+ when the ansi
feature is not enabled.

Fixed

  • layer: Option::None's Layer impl always setting the max_level_hint
    to LevelFilter::OFF (#2321)
  • Compilation with -Z minimal versions (#2246)
  • env-filter: Clarify that disabled level warnings are emitted by
    tracing-subscriber (#2285)

Added

  • fmt: Log internal errors to stderr if writing a log line fails (#2102)
  • fmt: FmtLayer::log_internal_errors and
    FmtSubscriber::log_internal_errors methods for configuring whether internal
    writer errors are printed to stderr (#2102)
  • fmt: #[must_use] attributes on builders to warn if a Subscriber is
    configured but not set as the default subscriber (#2239)
  • filter: Filter::event_enabled method for filtering an event based on its
    fields (#2245, #2251)
  • filter: Targets::default_level accessor ([#2242])

Changed

  • ansi: Replaced dependency on unmaintained ansi-term crate with
    nu-ansi-term ((#2287, fixes informational advisory RUSTSEC-2021-0139)
  • tracing-core: updated to 0.1.30
  • Minimum Supported Rust Version (MSRV) increased to Rust 1.50+ (when the
    ansi) feature flag is enabled (#2287)

Documented

  • fmt: Correct inaccuracies in fmt::init documentation (#2224)
  • filter: Fix incorrect doc link in filter::Not combinator (#2249)

Thanks to new contributors @cgbur, @DesmondWillowbrook, @RalfJung, and
@poliorcetics, as well as returning contributors @CAD97, @connec, @jswrenn,
@guswynn, and @bryangarza, for contributing to this release!

tracing-core 0.1.30

06 Oct 17:53
tracing-core-0.1.30
8b01ea9
Compare
Choose a tag to compare

This release of tracing-core adds a new on_register_dispatch method to the
Subscriber trait to allow the Subscriber to perform initialization after
being registered as a Dispatch, and a WeakDispatch type to allow a
Subscriber to store its own Dispatch without creating reference count
cycles.

Added

  • Subscriber::on_register_dispatch method (#2269)
  • WeakDispatch type and Dispatch::downgrade() function (#2293)

Thanks to @jswrenn for contributing to this release!

tracing-attributes 0.1.23

06 Oct 19:02
tracing-attributes-0.1.23
64b221d
Compare
Choose a tag to compare

This release of tracing-attributes fixes a bug where compiler diagnostic spans
for type errors in #[instrument]ed async fns have the location of the
#[instrument] attribute rather than the location of the actual error, and a
bug where inner attributes in #[instrument]ed functions would cause a compiler
error.

Fixed

  • Fix incorrect handling of inner attributes in #[instrument]ed functions (#2307)
  • Add fake return to improve spans generated for type errors in async fns (#2270)
  • Updated syn dependency to fix compilation with -Z minimal-versions
    (#2246)

Thanks to new contributors @compiler-errors and @e-nomem, as well as @CAD97, for
contributing to this release!

tracing 0.1.37

06 Oct 19:40
tracing-0.1.37
8e35927
Compare
Choose a tag to compare

This release of tracing incorporates changes from tracing-core
v0.1.30 and tracing-attributes v0.1.23,
including the new Subscriber::on_register_dispatch method for performing late
initialization after a Subscriber is registered as a Dispatch, and bugfixes
for the #[instrument] attribute. Additionally, it fixes instances of the
bare_trait_objects lint, which is now a warning on tracing's MSRV and will
become an error in the next edition.

Fixed

  • attributes: Incorrect handling of inner attributes in #[instrument]ed
    functions (#2307)
  • attributes: Incorrect location of compiler diagnostic spans generated for
    type errors in #[instrument]ed async fns (#2270)
  • attributes: Updated syn dependency to fix compilation with -Z minimal-versions (#2246)
  • bare_trait_objects warning in valueset! macro expansion (#2308)

Added

  • core: Subscriber::on_register_dispatch method (#2269)
  • core: WeakDispatch type and Dispatch::downgrade() function (#2293)

Changed

  • tracing-core: updated to 0.1.30
  • tracing-attributes: updated to 0.1.23

Documented

Thanks to new contributors @compiler-errors, @e-nomem, @WorldSEnder, @Xiami2012,
and @tl-rodrigo-gryzinski, as well as @jswrenn and @CAD97, for contributing to
this release!

tracing-opentelemetry 0.18.0

19 Sep 18:54
tracing-opentelemetry-0.18.0
a4f2ee2
Compare
Choose a tag to compare

Breaking Changes

  • Upgrade to v0.18.0 of opentelemetry (#2303)
    For list of breaking changes in OpenTelemetry, see the
    v0.18.0 changelog.

Fixed

  • on_event respects event's explicit parent (#2296)

Thanks to @wprzytula for contributing to this release!

tracing-core 0.1.29

29 Jul 19:46
275eded
Compare
Choose a tag to compare

This release of tracing-core adds PartialEq and Eq implementations for
metadata types, and improves error messages when setting the global default
subscriber fails.

Added

  • PartialEq and Eq implementations for Metadata (#2229)
  • PartialEq and Eq implementations for FieldSet (#2229)

Fixed

  • Fixed unhelpful fmt::Debug output for dispatcher::SetGlobalDefaultError
    (#2250)
  • Fixed compilation with -Z minimal-versions (#2246)

Thanks to @jswrenn and @CAD97 for contributing to this release!