Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a minimal-versions check #2015

Merged
merged 8 commits into from Apr 8, 2022
Merged
29 changes: 29 additions & 0 deletions .github/workflows/check.yml
Expand Up @@ -77,3 +77,32 @@ jobs:
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --all --examples --tests --benches -- -D warnings

minimal-versions:
# Check for minimal-versions errors where a dependency is too
# underconstrained to build on the minimal supported version of all
# dependencies in the dependency graph.
name: minimal-versions
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
profile: minimal
override: true
- name: Install cargo-hack
run: |
curl -LsSf https://github.com/taiki-e/cargo-hack/releases/latest/download/cargo-hack-x86_64-unknown-linux-gnu.tar.gz | tar xzf - -C ~/.cargo/bin
- name: "check --all-features -Z minimal-versions"
run: |
# Remove dev-dependencies from Cargo.toml to prevent the next `cargo update`
# from determining minimal versions based on dev-dependencies.
cargo hack --remove-dev-deps --workspace
# Update Cargo.lock to minimal version dependencies.
cargo update -Z minimal-versions
cargo hack check \
--package tracing \
--package tracing-core \
--package tracing-subscriber \
--all-features --ignore-private
2 changes: 1 addition & 1 deletion tracing-core/Cargo.toml
Expand Up @@ -35,7 +35,7 @@ std = ["lazy_static", "alloc"]
maintenance = { status = "actively-developed" }

[dependencies]
lazy_static = { version = "1", optional = true }
lazy_static = { version = "1.0.2", optional = true }

[package.metadata.docs.rs]
all-features = true
Expand Down
2 changes: 1 addition & 1 deletion tracing-subscriber/Cargo.toml
Expand Up @@ -57,7 +57,7 @@ serde = { version = "1.0", optional = true }
tracing-serde = { path = "../tracing-serde", version = "0.2", optional = true }

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

# registry
sharded-slab = { version = "0.1.0", optional = true }
Expand Down