Skip to content

Commit

Permalink
chore: fix minimal-versions correctness (#2231)
Browse files Browse the repository at this point in the history
## Motivation

Fix minimal-versions failure.

## Solution

Upgrade all the dependencies to their most recent semver-compatible
version, adjusting back down as necessary for MSRV.

## Context

[cargo-minimal-versions](https://lib.rs/crates/cargo-minimal-versions)
is wonderful. With this PR, the full repo passes under all of

- `cargo hack --workspace minimal-versions check --all-features`
- `cargo +1.49 hack --workspace --exclude tracing-appender
  minimal-versions check --all-features`
- `cargo +1.53 hack -p tracing-appender minimal-versions check
  --all-features`
- All of CI 😇
  • Loading branch information
CAD97 committed Jul 20, 2022
1 parent 7ecaedf commit 44d9ee3
Show file tree
Hide file tree
Showing 15 changed files with 95 additions and 85 deletions.
36 changes: 18 additions & 18 deletions examples/Cargo.toml
Expand Up @@ -26,35 +26,35 @@ tracing-appender = { path = "../tracing-appender" }
tracing-journald = { path = "../tracing-journald" }

# serde example
serde_json = "1.0"
serde_json = "1.0.82"

futures = "0.3"
tokio = { version = "1.1", features = ["full"] }
futures = "0.3.21"
tokio = { version = "1.20.0", features = ["full"] }

# env-logger example
env_logger = "0.8"
env_logger = "0.8.4"

# tower examples
tower = { version = "0.4.4", features = ["full"] }
http = "0.2"
hyper = { version = "0.14.11", features = ["full"] }
rand = "0.7"
bytes = "1"
argh = "0.1.5"
tower = { version = "0.4.13", features = ["full"] }
http = "0.2.8"
hyper = { version = "0.14.20", features = ["full"] }
rand = "0.7.3"
bytes = "1.2.0"
argh = "0.1.8"

# sloggish example
ansi_term = "0.12"
humantime = "2.0"
log = "0.4"
ansi_term = "0.12.1"
humantime = "2.1.0"
log = "0.4.17"

# inferno example
inferno = "0.11.0"
tempfile = "3"
inferno = "0.11.6"
tempfile = "3.3.0"

# opentelemetry example
opentelemetry = { version = "0.17", default-features = false, features = ["trace"] }
opentelemetry-jaeger = "0.16"
opentelemetry = { version = "0.17.0", default-features = false, features = ["trace"] }
opentelemetry-jaeger = "0.16.0"

# fmt examples
snafu = "0.6.10"
thiserror = "1.0.26"
thiserror = "1.0.31"
16 changes: 8 additions & 8 deletions tracing-appender/Cargo.toml
Expand Up @@ -21,10 +21,10 @@ edition = "2018"
rust-version = "1.53.0"

[dependencies]
crossbeam-channel = "0.5.0"
time = { version = "0.3", default-features = false, features = ["formatting"] }
parking_lot = { optional = true, version = "0.12.0" }
thiserror = "1"
crossbeam-channel = "0.5.5"
time = { version = "0.3.2", default-features = false, features = ["formatting"] }
parking_lot = { optional = true, version = "0.12.1" }
thiserror = "1.0.31"

[dependencies.tracing-subscriber]
path = "../tracing-subscriber"
Expand All @@ -33,11 +33,11 @@ default-features = false
features = ["fmt", "std"]

[dev-dependencies]
criterion = { version = "0.3", default_features = false }
criterion = { version = "0.3.6", default_features = false }
tracing = { path = "../tracing", version = "0.2" }
time = { version = "0.3", default-features = false, features = ["formatting", "parsing"] }
tempfile = "3"
time = { version = "0.3.2", default-features = false, features = ["formatting", "parsing"] }
tempfile = "3.3.0"

[[bench]]
name = "bench"
harness = false
harness = false
10 changes: 5 additions & 5 deletions tracing-attributes/Cargo.toml
Expand Up @@ -34,17 +34,17 @@ rust-version = "1.49.0"
proc-macro = true

[dependencies]
proc-macro2 = "1"
syn = { version = "1.0.43", default-features = false, features = ["full", "parsing", "printing", "visit", "visit-mut", "clone-impls", "extra-traits", "proc-macro"] }
quote = "1"
proc-macro2 = "1.0.40"
syn = { version = "1.0.98", default-features = false, features = ["full", "parsing", "printing", "visit", "visit-mut", "clone-impls", "extra-traits", "proc-macro"] }
quote = "1.0.20"

[dev-dependencies]
tracing = { path = "../tracing", version = "0.2" }
tracing-mock = { path = "../tracing-mock", features = ["tokio-test"] }
tokio-test = { version = "0.3.0" }
tokio-test = "0.4.2"
tracing-core = { path = "../tracing-core", version = "0.2"}
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", features = ["env-filter"] }
async-trait = "0.1.44"
async-trait = "0.1.56"

[badges]
maintenance = { status = "experimental" }
2 changes: 1 addition & 1 deletion tracing-core/Cargo.toml
Expand Up @@ -35,7 +35,7 @@ std = ["once_cell", "alloc"]
maintenance = { status = "actively-developed" }

[dependencies]
once_cell = { version = "1.12", optional = true }
once_cell = { version = "1.13.0", optional = true }

[package.metadata.docs.rs]
all-features = true
Expand Down
4 changes: 2 additions & 2 deletions tracing-flame/Cargo.toml
Expand Up @@ -28,7 +28,7 @@ smallvec = ["tracing-subscriber/smallvec"]
[dependencies]
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "fmt"] }
tracing = { path = "../tracing", version = "0.2", default-features = false, features = ["std"] }
once_cell = "1.12"
once_cell = "1.13.0"

[dev-dependencies]
tempfile = "3"
tempfile = "3.3.0"
18 changes: 11 additions & 7 deletions tracing-futures/Cargo.toml
Expand Up @@ -27,16 +27,20 @@ tokio = ["tokio_01"]
std = ["tracing/std"]

[dependencies]
futures_01 = { package = "futures", version = "0.1", optional = true }
futures = { version = "0.3.0", optional = true }
futures-task = { version = "0.3", optional = true }
pin-project-lite = { version = "0.2.4", optional = true }
futures_01 = { package = "futures", version = "0.1.31", optional = true }
futures = { version = "0.3.21", optional = true }
futures-task = { version = "0.3.21", optional = true }
pin-project-lite = { version = "0.2.9", optional = true }
tracing = { path = "../tracing", version = "0.2", default-features = false }
tokio-executor = { version = "0.1", optional = true }
tokio_01 = { package = "tokio", version = "0.1", optional = true }
tokio-executor = { version = "0.1.10", optional = true }
tokio_01 = { package = "tokio", version = "0.1.22", optional = true }

# Fix minimal-versions
tokio-threadpool = "0.1.18"
mio = "0.6.23"

[dev-dependencies]
tokio-test = "0.4"
tokio-test = "0.4.2"
tracing-core = { path = "../tracing-core", version = "0.2" }
tracing-mock = { path = "../tracing-mock", features = ["tokio-test"] }

Expand Down
6 changes: 3 additions & 3 deletions tracing-journald/Cargo.toml
Expand Up @@ -16,12 +16,12 @@ keywords = ["tracing", "journald"]
rust-version = "1.49.0"

[dependencies]
libc = "0.2.107"
libc = "0.2.126"
tracing-core = { path = "../tracing-core", version = "0.2" }
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry"] }

[dev-dependencies]
serde_json = "1.0.68"
serde = { version = "1.0.130", features = ["derive"] }
serde_json = "1.0.82"
serde = { version = "1.0.139", features = ["derive"] }
tracing = { path = "../tracing", version = "0.2" }

4 changes: 2 additions & 2 deletions tracing-journald/src/lib.rs
Expand Up @@ -158,7 +158,7 @@ impl Subscriber {
#[cfg(not(unix))]
fn send_payload(&self, _opayload: &[u8]) -> io::Result<()> {
Err(io::Error::new(
io::ErrorKind::Unsupported,
io::ErrorKind::Other,
"journald not supported on non-Unix",
))
}
Expand All @@ -179,7 +179,7 @@ impl Subscriber {
#[cfg(all(unix, not(target_os = "linux")))]
fn send_large_payload(&self, _payload: &[u8]) -> io::Result<usize> {
Err(io::Error::new(
io::ErrorKind::Unsupported,
io::ErrorKind::Other,
"Large payloads not supported on non-Linux OS",
))
}
Expand Down
6 changes: 3 additions & 3 deletions tracing-log/Cargo.toml
Expand Up @@ -24,9 +24,9 @@ log-tracer = []

[dependencies]
tracing-core = { path = "../tracing-core", version = "0.2"}
log = { version = "0.4" }
once_cell = "1.12"
env_logger = { version = "0.8", optional = true }
log = "0.4.17"
once_cell = "1.13.0"
env_logger = { version = "0.8.4", optional = true }

[dev-dependencies]
tracing = { path = "../tracing", version = "0.2"}
Expand Down
5 changes: 4 additions & 1 deletion tracing-mock/Cargo.toml
Expand Up @@ -20,7 +20,10 @@ publish = false
[dependencies]
tracing = { path = "../tracing", version = "0.2", default-features = false }
tracing-core = { path = "../tracing-core", version = "0.2", default-features = false }
tokio-test = { version = "0.4", optional = true }
tokio-test = { version = "0.4.2", optional = true }

# Fix minimal-versions; tokio-test fails with otherwise acceptable 0.1.0
tokio-stream = "0.1.9"

[package.metadata.docs.rs]
all-features = true
Expand Down
19 changes: 11 additions & 8 deletions tracing-opentelemetry/Cargo.toml
Expand Up @@ -23,20 +23,23 @@ rust-version = "1.46.0"
default = ["tracing-log"]

[dependencies]
opentelemetry = { version = "0.17", default-features = false, features = ["trace", "metrics"] }
opentelemetry = { version = "0.17.0", default-features = false, features = ["trace", "metrics"] }
tracing = { path = "../tracing", version = "0.2", default-features = false, features = ["std"] }
tracing-core = { path = "../tracing-core", version = "0.2" }
tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "std"] }
tracing-log = { path = "../tracing-log", version = "0.2", default-features = false, optional = true }
once_cell = "1"
once_cell = "1.13.0"

# Fix minimal-versions; opentelemetry specifies async-trait = "0.1" which breaks
async-trait = "0.1.20"

[dev-dependencies]
async-trait = "0.1"
criterion = { version = "0.3", default_features = false }
opentelemetry-jaeger = "0.16"
futures-util = { version = "0.3", default-features = false }
tokio = { version = "1", features = ["full"] }
tokio-stream = "0.1"
async-trait = "0.1.56"
criterion = { version = "0.3.6", default_features = false }
opentelemetry-jaeger = "0.16.0"
futures-util = { version = "0.3.21", default-features = false }
tokio = { version = "1.20.0", features = ["full"] }
tokio-stream = "0.1.9"

[lib]
bench = false
Expand Down
4 changes: 2 additions & 2 deletions tracing-serde/Cargo.toml
Expand Up @@ -23,11 +23,11 @@ default = ["std"]
std = ["serde/std", "tracing-core/std"]

[dependencies]
serde = { version = "1", default-features = false, features = ["alloc"] }
serde = { version = "1.0.139", default-features = false, features = ["alloc"] }
tracing-core = { path = "../tracing-core", version = "0.2", default-features = false }

[dev-dependencies]
serde_json = "1"
serde_json = "1.0.82"

[badges]
maintenance = { status = "experimental" }
28 changes: 14 additions & 14 deletions tracing-subscriber/Cargo.toml
Expand Up @@ -42,38 +42,38 @@ tracing-core = { path = "../tracing-core", version = "0.2", default-features = f
# only required by the `env-filter` feature
tracing = { optional = true, path = "../tracing", version = "0.2", default-features = false }
matchers = { optional = true, version = "0.1.0" }
regex = { optional = true, version = "1", default-features = false, features = ["std"] }
smallvec = { optional = true, version = "1" }
once_cell = { optional = true, version = "1.12" }
regex = { optional = true, version = "1.6.0", default-features = false, features = ["std"] }
smallvec = { optional = true, version = "1.9.0" }
once_cell = { optional = true, version = "1.13.0" }

# fmt
tracing-log = { path = "../tracing-log", version = "0.2", optional = true, default-features = false, features = ["log-tracer", "std"] }
ansi_term = { version = "0.12", optional = true }
time = { version = "0.3", features = ["formatting"], optional = true }
ansi_term = { version = "0.12.1", optional = true }
time = { version = "0.3.2", features = ["formatting"], optional = true }

# only required by the json feature
serde_json = { version = "1.0", optional = true }
serde = { version = "1.0", optional = true }
serde_json = { version = "1.0.82", optional = true }
serde = { version = "1.0.139", optional = true }
tracing-serde = { path = "../tracing-serde", version = "0.2", optional = true }

# opt-in deps
parking_lot = { version = ">= 0.9.0, <= 0.13", optional = true }
parking_lot = { version = "0.12.1", optional = true }

# registry
sharded-slab = { version = "0.1.0", optional = true }
sharded-slab = { version = "0.1.4", optional = true }
thread_local = { version = "1.1.4", optional = true }

[dev-dependencies]
tracing = { path = "../tracing", version = "0.2" }
tracing-mock = { path = "../tracing-mock" }
log = "0.4"
log = "0.4.17"
tracing-log = { path = "../tracing-log", version = "0.2" }
criterion = { version = "0.3", default_features = false }
regex = { version = "1", default-features = false, features = ["std"] }
criterion = { version = "0.3.6", default_features = false }
regex = { version = "1.6.0", default-features = false, features = ["std"] }
tracing-futures = { path = "../tracing-futures", version = "0.3", default-features = false, features = ["std-future", "std"] }
tokio = { version = "1", features = ["rt", "macros"] }
tokio = { version = "1.20.0", features = ["rt", "macros"] }
# Enable the `time` crate's `macros` feature, for examples.
time = { version = "0.3", features = ["formatting", "macros"] }
time = { version = "0.3.2", features = ["formatting", "macros"] }

[badges]
maintenance = { status = "experimental" }
Expand Down
12 changes: 6 additions & 6 deletions tracing-tower/Cargo.toml
Expand Up @@ -27,12 +27,12 @@ tower-make = [
[dependencies]
tracing = { path = "../tracing", version = "0.2", default-features = false, features = ["std"] }
tracing-futures = { version = "0.3", path = "../tracing-futures", features = ["std-future"] }
futures = "0.3"
tower-service = "0.3"
tower-layer = { version = "0.3", optional = true }
tower_make = { package = "tower-make", version = "0.3", optional = true }
pin-project-lite = { version = "0.2.4", optional = true }
http = { version = "0.2", optional = true }
futures = "0.3.21"
tower-service = "0.3.2"
tower-layer = { version = "0.3.1", optional = true }
tower_make = { package = "tower-make", version = "0.3.0", optional = true }
pin-project-lite = { version = "0.2.9", optional = true }
http = { version = "0.2.8", optional = true }

[badges]
maintenance = { status = "experimental" }
Expand Down
10 changes: 5 additions & 5 deletions tracing/Cargo.toml
Expand Up @@ -32,18 +32,18 @@ rust-version = "1.49.0"

[dependencies]
tracing-core = { path = "../tracing-core", version = "0.2", default-features = false }
log = { version = "0.4", optional = true }
log = { version = "0.4.17", optional = true }
tracing-attributes = { path = "../tracing-attributes", version = "0.2", optional = true }
cfg-if = "1.0.0"
pin-project-lite = "0.2"
pin-project-lite = "0.2.9"

[dev-dependencies]
criterion = { version = "0.3", default_features = false }
log = "0.4"
criterion = { version = "0.3.6", default_features = false }
log = "0.4.17"
tracing-mock = { path = "../tracing-mock" }

[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
wasm-bindgen-test = "^0.3"
wasm-bindgen-test = "0.3.31"

[features]
default = ["std", "attributes"]
Expand Down

0 comments on commit 44d9ee3

Please sign in to comment.