mirror of
https://github.com/tokio-rs/tracing.git
synced 2025-09-30 06:20:38 +00:00
subscriber: prepare to release v0.3.0 (#1677)
# 0.3.0 (Oct 22, 2021) This is a breaking release of `tracing-subscriber`. The primary breaking change in this release is the removal of the dependency on the [`chrono` crate], due to [RUSTSEC-2020-0159]. To replace `chrono`, support is added for formatting timestamps using the [`time` crate] instead. In addition, this release includes a number of other breaking API changes, such as adding (limited) support for `#![no_std]` targets, removing previously deprecated APIs, and more. ### Breaking Changes - Removed APIs deprecated in the v0.2.x release series. - Renamed `Layer::new_span` to `Layer::on_new_span` ([#1674]) - Removed `Layer` impl for `Arc<L: Layer<S>>` and `Arc<dyn Layer<S> + ...>` ([#1649]) - Replaced the [`chrono` crate] with the [`time` crate] for timestamp formatting, to resolve [RUSTSEC-2020-0159] ([#1646]) - Removed `json` and `env-filter` from default features. They must now be enabled explictly ([#1647]) - Changed `FormatEvent::format_event` and `FormatFields::format_fields` trait methods to take a `Writer` type, rather than a `&mut dyn fmt::Write` trait object ([#1661]) - Changed the signature of the `MakeWriter` trait by adding a lifetime parameter ([#781]) ### Changed - **layer**: Renamed `Layer::new_span` to `Layer::on_new_span` ([#1674]) - **fmt**: Changed `FormatEvent::format_event` and `FormatFields::format_fields` trait methods to take a `Writer` type, rather than a `&mut dyn fmt::Write` trait object ([#1661]) - **json**, **env-filter**: `json` and `env-filter` feature flags are no longer enabled by default ([#1647]) ### Removed - Removed deprecated `CurrentSpan` type ([#1320]) - **registry**: Removed deprecated `SpanRef::parents` iterator, replaced by `SpanRef::scope` in [#1431] ([#1648)]) - **layer**: Removed deprecated `Context::scope` iterator, replaced by `Context::span_scope` and `Context::event_scope` in [#1431] and [#1434] ([#1648)]) - **layer**: Removed `Layer` impl for `Arc<L: Layer<S>>` and `Arc<dyn Layer<S> + ...>`. These interfere with per-layer filtering. ([#1649]) - **fmt**: Removed deprecated `LayerBuilder` type ([#1673]) - **fmt**: Removed `fmt::Layer::on_event` (renamed to `fmt::Layer::fmt_event`) ([#1673]) - **fmt**, **chrono**: Removed the `chrono` feature flag and APIs for using the [`chrono` crate] for timestamp formatting ([#1646]) ### Added - **fmt**, **time**: `LocalTime` and `UtcTime` types for formatting timestamps using the [`time` crate] ([#1646]) - **fmt**: Added a lifetime parameter to the `MakeWriter` trait, allowing it to return a borrowed writer. This enables implementations of `MakeWriter` for types such as `Mutex<T: io::Write>` and `std::fs::File`. ([#781]) - **env-filter**: Documentation improvements ([#1637]) - Support for some APIs on `#![no_std]` targets, by disabling the `std` feature flag ([#1660]) Thanks to @Folyd and @nmathewson for contributing to this release! [#1320]: https://github.com/tokio-rs/tracing/pull/1320 [#1673]: https://github.com/tokio-rs/tracing/pull/1673 [#1674]: https://github.com/tokio-rs/tracing/pull/1674 [#1646]: https://github.com/tokio-rs/tracing/pull/1646 [#1647]: https://github.com/tokio-rs/tracing/pull/1647 [#1648]: https://github.com/tokio-rs/tracing/pull/1648 [#1649]: https://github.com/tokio-rs/tracing/pull/1649 [#1660]: https://github.com/tokio-rs/tracing/pull/1660 [#1661]: https://github.com/tokio-rs/tracing/pull/1661 [#1431]: https://github.com/tokio-rs/tracing/pull/1431 [#1434]: https://github.com/tokio-rs/tracing/pull/1434 [#781]: https://github.com/tokio-rs/tracing/pull/781 [`chrono` crate]: https://crates.io/crates/chrono [`time` crate]: https://crates.io/crates/time [RUSTSEC-2020-0159]: https://rustsec.org/advisories/RUSTSEC-2020-0159.html Signed-off-by: Eliza Weisman <eliza@buoyant.io>
This commit is contained in:
parent
f461c5bbd0
commit
4e56741c65
@ -48,7 +48,7 @@ To use `tracing-subscriber`, add the following to your `Cargo.toml`:
|
||||
```toml
|
||||
[dependencies]
|
||||
tracing = "0.1"
|
||||
tracing-subscriber = "0.2"
|
||||
tracing-subscriber = "0.3"
|
||||
```
|
||||
|
||||
Then create and install a `Subscriber`, for example using [`init()`]:
|
||||
|
@ -15,7 +15,7 @@ tracing-core = { path = "../tracing-core", version = "0.1" }
|
||||
tracing-error = { path = "../tracing-error" }
|
||||
tracing-flame = { path = "../tracing-flame" }
|
||||
tracing-tower = { version = "0.1.0", path = "../tracing-tower" }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.2", features = ["json", "env-filter"] }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", features = ["json", "env-filter"] }
|
||||
tracing-futures = { version = "0.2.1", path = "../tracing-futures", features = ["futures-01"] }
|
||||
tracing-attributes = { path = "../tracing-attributes", version = "0.1.2" }
|
||||
tracing-log = { path = "../tracing-log", version = "0.1.1", features = ["env_logger"] }
|
||||
|
@ -25,7 +25,7 @@ time = { version = "0.3", default-features = false, features = ["formatting"] }
|
||||
|
||||
[dependencies.tracing-subscriber]
|
||||
path = "../tracing-subscriber"
|
||||
version = "0.2.7"
|
||||
version = "0.3"
|
||||
default-features = false
|
||||
features = ["fmt", "std"]
|
||||
|
||||
|
@ -38,7 +38,7 @@ default = ["traced-error"]
|
||||
traced-error = []
|
||||
|
||||
[dependencies]
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.2.19", default-features = false, features = ["registry", "fmt"] }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "fmt"] }
|
||||
tracing = { path = "../tracing", version = "0.1.12", default-features = false, features = ["std"] }
|
||||
|
||||
[badges]
|
||||
|
@ -15,10 +15,10 @@ use tracing_subscriber::{
|
||||
/// when formatting the fields of each span in a trace. When no formatter is
|
||||
/// provided, the [default format] is used instead.
|
||||
///
|
||||
/// [`Layer`]: https://docs.rs/tracing-subscriber/0.2.10/tracing_subscriber/layer/trait.Layer.html
|
||||
/// [`Layer`]: https://docs.rs/tracing-subscriber/0.3/tracing_subscriber/layer/trait.Layer.html
|
||||
/// [`SpanTrace`]: ../struct.SpanTrace.html
|
||||
/// [field formatter]: https://docs.rs/tracing-subscriber/0.2.10/tracing_subscriber/fmt/trait.FormatFields.html
|
||||
/// [default format]: https://docs.rs/tracing-subscriber/0.2.10/tracing_subscriber/fmt/format/struct.DefaultFields.html
|
||||
/// [field formatter]: https://docs.rs/tracing-subscriber/0.3/tracing_subscriber/fmt/trait.FormatFields.html
|
||||
/// [default format]: https://docs.rs/tracing-subscriber/0.3/tracing_subscriber/fmt/format/struct.DefaultFields.html
|
||||
pub struct ErrorLayer<S, F = DefaultFields> {
|
||||
format: F,
|
||||
|
||||
|
@ -25,7 +25,7 @@ default = ["smallvec"]
|
||||
smallvec = ["tracing-subscriber/smallvec"]
|
||||
|
||||
[dependencies]
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.2.19", default-features = false, features = ["registry", "fmt"] }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "fmt"] }
|
||||
tracing = { path = "../tracing", version = "0.1.12", default-features = false, features = ["std"] }
|
||||
lazy_static = "1.3.0"
|
||||
|
||||
|
@ -16,4 +16,4 @@ keywords = ["tracing", "journald"]
|
||||
|
||||
[dependencies]
|
||||
tracing-core = { path = "../tracing-core", version = "0.1.10" }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.2.19" }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3" }
|
||||
|
@ -25,7 +25,7 @@ default = ["tracing-log"]
|
||||
opentelemetry = { version = "0.16", default-features = false, features = ["trace"] }
|
||||
tracing = { path = "../tracing", version = "0.1", default-features = false, features = ["std"] }
|
||||
tracing-core = { path = "../tracing-core", version = "0.1" }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.2", default-features = false, features = ["registry", "std"] }
|
||||
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "std"] }
|
||||
tracing-log = { path = "../tracing-log", version = "0.1", default-features = false, optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
|
@ -1,3 +1,82 @@
|
||||
# 0.3.0 (Oct 22, 2021)
|
||||
|
||||
This is a breaking release of `tracing-subscriber`. The primary breaking change
|
||||
in this release is the removal of the dependency on the [`chrono` crate], due to
|
||||
[RUSTSEC-2020-0159]. To replace `chrono`, support is added for formatting
|
||||
timestamps using the [`time` crate] instead.
|
||||
|
||||
In addition, this release includes a number of other breaking API changes, such
|
||||
as adding (limited) support for `#![no_std]` targets, removing previously
|
||||
deprecated APIs, and more.
|
||||
|
||||
### Breaking Changes
|
||||
|
||||
- Removed APIs deprecated in the v0.2.x release series.
|
||||
- Renamed `Layer::new_span` to `Layer::on_new_span` ([#1674])
|
||||
- Removed `Layer` impl for `Arc<L: Layer<S>>` and `Arc<dyn Layer<S> + ...>`
|
||||
([#1649])
|
||||
- Replaced the [`chrono` crate] with the [`time` crate] for timestamp formatting, to
|
||||
resolve [RUSTSEC-2020-0159] ([#1646])
|
||||
- Removed `json` and `env-filter` from default features. They must now be
|
||||
enabled explictly ([#1647])
|
||||
- Changed `FormatEvent::format_event` and `FormatFields::format_fields`
|
||||
trait methods to take a `Writer` type, rather than a `&mut dyn fmt::Write`
|
||||
trait object ([#1661])
|
||||
- Changed the signature of the `MakeWriter` trait by adding a lifetime parameter
|
||||
([#781])
|
||||
### Changed
|
||||
|
||||
- **layer**: Renamed `Layer::new_span` to `Layer::on_new_span` ([#1674])
|
||||
- **fmt**: Changed `FormatEvent::format_event` and `FormatFields::format_fields`
|
||||
trait methods to take a `Writer` type, rather than a `&mut dyn fmt::Write`
|
||||
trait object ([#1661])
|
||||
- **json**, **env-filter**: `json` and `env-filter` feature flags are no longer
|
||||
enabled by default ([#1647])
|
||||
### Removed
|
||||
|
||||
- Removed deprecated `CurrentSpan` type ([#1320])
|
||||
- **registry**: Removed deprecated `SpanRef::parents` iterator, replaced by
|
||||
`SpanRef::scope` in [#1431] ([#1648)])
|
||||
- **layer**: Removed deprecated `Context::scope` iterator, replaced by
|
||||
`Context::span_scope` and `Context::event_scope` in [#1431] and [#1434]
|
||||
([#1648)])
|
||||
- **layer**: Removed `Layer` impl for `Arc<L: Layer<S>>` and
|
||||
`Arc<dyn Layer<S> + ...>`. These interfere with per-layer filtering. ([#1649])
|
||||
- **fmt**: Removed deprecated `LayerBuilder` type ([#1673])
|
||||
- **fmt**: Removed `fmt::Layer::on_event` (renamed to `fmt::Layer::fmt_event`)
|
||||
([#1673])
|
||||
- **fmt**, **chrono**: Removed the `chrono` feature flag and APIs for using the
|
||||
[`chrono` crate] for timestamp formatting ([#1646])
|
||||
### Added
|
||||
|
||||
- **fmt**, **time**: `LocalTime` and `UtcTime` types for formatting timestamps
|
||||
using the [`time` crate] ([#1646])
|
||||
- **fmt**: Added a lifetime parameter to the `MakeWriter` trait, allowing it to
|
||||
return a borrowed writer. This enables implementations of `MakeWriter` for
|
||||
types such as `Mutex<T: io::Write>` and `std::fs::File`. ([#781])
|
||||
- **env-filter**: Documentation improvements ([#1637])
|
||||
- Support for some APIs on `#![no_std]` targets, by disabling the `std` feature
|
||||
flag ([#1660])
|
||||
|
||||
Thanks to @Folyd and @nmathewson for contributing to this release!
|
||||
|
||||
[#1320]: https://github.com/tokio-rs/tracing/pull/1320
|
||||
[#1673]: https://github.com/tokio-rs/tracing/pull/1673
|
||||
[#1674]: https://github.com/tokio-rs/tracing/pull/1674
|
||||
[#1646]: https://github.com/tokio-rs/tracing/pull/1646
|
||||
[#1647]: https://github.com/tokio-rs/tracing/pull/1647
|
||||
[#1648]: https://github.com/tokio-rs/tracing/pull/1648
|
||||
[#1649]: https://github.com/tokio-rs/tracing/pull/1649
|
||||
[#1660]: https://github.com/tokio-rs/tracing/pull/1660
|
||||
[#1661]: https://github.com/tokio-rs/tracing/pull/1661
|
||||
[#1431]: https://github.com/tokio-rs/tracing/pull/1431
|
||||
[#1434]: https://github.com/tokio-rs/tracing/pull/1434
|
||||
[#781]: https://github.com/tokio-rs/tracing/pull/781
|
||||
|
||||
[`chrono` crate]: https://crates.io/crates/chrono
|
||||
[`time` crate]: https://crates.io/crates/time
|
||||
[RUSTSEC-2020-0159]: https://rustsec.org/advisories/RUSTSEC-2020-0159.html
|
||||
|
||||
# 0.2.25 (October 5, 2021)
|
||||
|
||||
This release fixes an issue where a `Layer` implementation's custom
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "tracing-subscriber"
|
||||
version = "0.2.25"
|
||||
version = "0.3.0"
|
||||
authors = [
|
||||
"Eliza Weisman <eliza@buoyant.io>",
|
||||
"David Barsky <me@davidbarsky.com>",
|
||||
|
@ -21,7 +21,7 @@ Utilities for implementing and composing [`tracing`][tracing] subscribers.
|
||||
[crates-badge]: https://img.shields.io/crates/v/tracing-subscriber.svg
|
||||
[crates-url]: https://crates.io/crates/tracing-subscriber
|
||||
[docs-badge]: https://docs.rs/tracing-subscriber/badge.svg
|
||||
[docs-url]: https://docs.rs/tracing-subscriber/0.2.25
|
||||
[docs-url]: https://docs.rs/tracing-subscriber/0.3.0
|
||||
[docs-master-badge]: https://img.shields.io/badge/docs-master-blue
|
||||
[docs-master-url]: https://tracing-rs.netlify.com/tracing_subscriber
|
||||
[mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg
|
||||
|
@ -126,7 +126,7 @@
|
||||
//! [`parking_lot`]: https://crates.io/crates/parking_lot
|
||||
//! [`time` crate]: https://crates.io/crates/time
|
||||
//! [`liballoc`]: https://doc.rust-lang.org/alloc/index.html
|
||||
#![doc(html_root_url = "https://docs.rs/tracing-subscriber/0.2.25")]
|
||||
#![doc(html_root_url = "https://docs.rs/tracing-subscriber/0.3.0")]
|
||||
#'s
|
||||
[`fmt` module](https://docs.rs/tracing-subscriber/0.2.0-alpha.2/tracing_subscriber/fmt/index.html) provides reasonable defaults.
|
||||
[`fmt` module](https://docs.rs/tracing-subscriber/0.3/tracing_subscriber/fmt/index.html) provides reasonable defaults.
|
||||
Additionally, `tracing-subscriber` is able to consume messages emitted by `log`-instrumented libraries and modules.
|
||||
|
||||
The simplest way to use a subscriber is to call the `set_global_default` function.
|
||||
|
Loading…
x
Reference in New Issue
Block a user