Skip to content

build(deps): bump rstest from 0.26.1 to 0.27.0 - #2192

Open
dependabot[bot] wants to merge 1 commit into
developfrom
dependabot/cargo/develop/rstest-0.27.0
Open

build(deps): bump rstest from 0.26.1 to 0.27.0#2192
dependabot[bot] wants to merge 1 commit into
developfrom
dependabot/cargo/develop/rstest-0.27.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 9, 2026

Copy link
Copy Markdown
Contributor

Bumps rstest from 0.26.1 to 0.27.0.

Release notes

Sourced from rstest's releases.

v0.27.0

[0.27.0] 2026/9/6

Changed

  • Bump msrv to 1.85.0 both for rstest and rstest_reuse
  • Disabled default features of futures-util

Added

  • Doc comments before #[values(...)] entries can be used to override the generated matrix test names (both for the legacy arg => [..] syntax and the new attribute form). See #321 thanks to @​orhun.

Fixed

  • Use fully-qualified core import. See #336.
  • Fix mut arguments failing to compile with #[trace]. See #345 thanks to @​super-cooper.
  • Fix compilation under bazel by upgrading proc-macro-crate to 3.4.0.
Changelog

Sourced from rstest's changelog.

[0.27.0] 2026/9/6

Changed

  • Bump msrv to 1.85.0 both for rstest and rstest_reuse
  • Disabled default features of futures-util

Added

  • Doc comments before #[values(...)] entries can be used to override the generated matrix test names (both for the legacy arg => [..] syntax and the new attribute form). See #321 thanks to @​orhun.

Fixed

  • Use fully-qualified core import. See #336.
  • Fix mut arguments failing to compile with #[trace]. See #345 thanks to @​super-cooper.
  • Fix compilation under bazel by upgrading proc-macro-crate to 3.4.0.
Commits
  • 59cd3d1 Release 0.27.0
  • 0821ebc test: Add E2E test for mut arguments with #[trace]
  • 509ffef fix: mut arguments with #[trace]
  • 043437d fix: Resolve clippy warnings and truncate long test project names
  • 9aa8d1a fix: Suppress nightly cargo lints in test scaffolding
  • 3d3c76c fix: Bump rstest_test MSRV to 1.85 and mark as unpublished
  • d9ae990 chore: Add changelog entry
  • 05d4b1a fix: Use fully-qualified core import
  • 6da56a1 Bump msrv to 1.85 also for rstest_reuse (#342)
  • 1e9963b Add CLAUDE.md for Claude Code guidance (#340)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added Build | Project System Compiling and Packaging Dependencies Related to Dependencies labels Sep 9, 2026
@codecov

codecov Bot commented Sep 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.96%. Comparing base (65a077b) to head (af62b55).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #2192   +/-   ##
========================================
  Coverage    84.96%   84.96%           
========================================
  Files          351      351           
  Lines        30208    30208           
  Branches     30208    30208           
========================================
+ Hits         25665    25667    +2     
+ Misses        4171     4169    -2     
  Partials       372      372           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@da2ce7

da2ce7 commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

@dependabot rebase

@dependabot
dependabot Bot force-pushed the dependabot/cargo/develop/rstest-0.27.0 branch from 0191aa9 to 7d01076 Compare September 10, 2026 09:25

@da2ce7 da2ce7 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed at 7d010760a26188d6e11b1983be8f3f82efceaee3.

Verified on a detached worktree at this exact head (rebased onto develop 89d45145, 0 behind), toolchain rustc 1.100.0-nightly (a69a63265 2026-09-03).

Diff. Cargo.lock only, four lines: rstest and rstest_macros each 0.26.1 to 0.27.0 with new checksums. Both nodes keep their dependency lists unchanged. packages/swarm-coordination-registry and packages/torrent-repository-benchmarking declare rstest = "0" under [dev-dependencies], which 0.27 satisfies, so no manifest edit is needed. cargo tree --workspace -i rstest -e normal,build,dev shows one version in the graph before and after, reached only through those two dev-dependency edges — no duplicate, and nothing rstest-related on a normal-dependency path.

Change set. The packaged crate ships no changelog, so 0.27.0's changes were derived by diffing the 0.26.1 and 0.27.0 sources; the result matches the upstream release notes quoted in the description item for item:

  1. MSRV raised 1.70.0 to 1.85.0 for both crates — absorbed by the workspace's rust-version = "1.88".
  2. futures-util now taken with default-features = false; affects only the async-timeout internals.
  3. #[values(...)] accepts a doc comment before each entry to name the generated matrix case. This is the only change touching an attribute this workspace uses, and it is purely additive: rstest's own new unit test asserts that an entry without a doc comment still gets the sanitized-expression description, so existing #[values] lists keep their current generated test names.
  4. async-timeout internals rewritten in rstest/src/timeout.rs from futures_util::select! to futures_util::future::select with Either and pin!. The feature is on by default so this compiles here, but it is only reached by #[timeout].
  5. rstest_macros parser refactors — a MatrixValues type behind #[values] parsing, TestCase args built via Expressions::take(), a Box<Pat> deref cleanup — all private to the macro crate.
  6. Fixes: fully-qualified core import; mut arguments failing to compile under #[trace]; proc-macro-crate raised to 3.4.0 for bazel builds.
  7. Metadata only: homepage and readme keys dropped from both manifests.

Feature tables are unchanged (default = ["async-timeout", "crate-name"] for both crates), and the exported macro surface diffs clean — the pub use list in rstest/src/lib.rs and the proc_macro_attribute list in rstest_macros/src/lib.rs are identical.

Consumers. rstest is used in exactly three files: packages/swarm-coordination-registry/src/statistics/event/handler.rs, packages/torrent-repository-benchmarking/tests/entry/mod.rs and .../tests/repository/mod.rs. The attribute forms in use across them are #[rstest], #[case] and named #[case::name(expr)], #[values(...)] on an argument, #[fixture] on plain synchronous factory functions invoked explicitly as expressions, and #[tokio::test] for async cases. Not used anywhere: #[files], #[timeout], #[future], #[awt], #[once], #[from], #[with], #[default], #[trace], #[by_ref], and the legacy arg => [..] matrix syntax.

Cross-referencing that against the change set: item 3 is the only one that lands on a used attribute and it is additive; items 4 and 6 concern #[timeout] and #[trace], neither of which appears here; the rest are internal or metadata.

Gates at this head, --workspace --all-targets --all-features:

gate exit wall
cargo check 0 8.9s
cargo clippy … -- -D warnings 0 7.0s
cargo test 0 144.7s — 57 suites, 2603 passed, 0 failed
cargo machete --with-metadata 0 7.7s
cargo deny check bans 0 1.3s
linter all 0 23.3s
contrib/dev-tools/git/hooks/pre-commit.sh 0 32.8s — all 6 steps pass
cargo test --doc --workspace 0 6.2s — 30 passed

The suite and case totals are identical to two other bumps measured on the same base that do not touch rstest, which is the empirical confirmation that 0.27.0 expands these #[case] and #[values] matrices into exactly the same set of tests 0.26.1 did.

Checklist items a lockfile-only change cannot exercise are non-applicable: no new functionality so no new tests, no public API added so no doc comments, no user-facing behaviour change so no docs update, no new terms for project-words.txt. Title is Conventional Commits, base branch is develop, and the description carries the upstream release notes and changelog.

CI at this head. Every workflow run is green except one: Testing (push) run 34460542869, whose sole failing job is Docker E2E. Green: Testing (pull_request) 34460549625, OS Compatibility 34460549659 / 34460542820, Container 34460549629, Generate Coverage Report (PR) 34460549735, Docs Lint 34460549634 / 34460542839.

That Docker E2E red is #2179's defect, not this bump's. The job log fails at cargo run --bin e2e_tests_runner … with error: no bin target named 'e2e_tests_runner' in default-run packages / help: available bin in 'torrust-tracker-e2e-tools' package, i.e. the missing -p flag described in #2179 (specification in #2194). It reproduces identically on the other two dependabot heads currently open and cannot be affected by a dependency version, since it fails before any test runs. The pull_request run's Docker E2E is skipped by design, because container.yaml covers that event.

@da2ce7

da2ce7 commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

ACK 7d01076 — rstest 0.27.0: the only 0.27 change touching a used attribute is the additive #[values] doc-comment naming, and check, clippy -D warnings, test (57 suites, 2603 passed, unchanged totals), machete, deny bans, linter all, doctests and the pre-commit hook all green at this head.

@da2ce7

da2ce7 commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

@dependabot rebase

Bumps [rstest](https://github.com/la10736/rstest) from 0.26.1 to 0.27.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](la10736/rstest@v0.26.1...v0.27.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-version: 0.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/cargo/develop/rstest-0.27.0 branch from 7d01076 to af62b55 Compare September 10, 2026 15:51

@da2ce7 da2ce7 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-reviewed at af62b5586b8bf90216237a2a27851889b0c1f3e0 on 2026-09-10, after the rebase onto develop 65a077b5 (merge-base is 65a077b5, 0 behind).

Verified on a detached worktree at this exact head, toolchain rustc 1.100.0-nightly (a69a63265 2026-09-03), cargo 1.100.0-nightly (b2e9d5f9d 2026-09-02).

Rebase. The head moved from 7d010760a26188d6e11b1983be8f3f82efceaee3 to af62b5586b8bf90216237a2a27851889b0c1f3e0 when the branch was rebased from develop 89d45145 onto 65a077b5. The patch itself did not change: git diff 89d45145 7d010760 and git diff 65a077b5 af62b558 produce byte-identical output (875 bytes, 28 lines), so the diff-of-diffs is empty and this is the same change re-parented. Both old and new head are single commits whose only parent is the respective base.

What develop gained in between is #2188 and #2189 — six documentation files plus tests/AGENTS.md and tests/common/workspace.rs, which drops the environment-variable guard from the integration-test fixture in favour of an explicit config path. Nothing in that delta mentions base64, syn or rstest, and it touches no Cargo.toml and no Cargo.lock, so it cannot interact with this bump. The gates below were nonetheless re-run in full at the new head rather than carried over.

Diff. Cargo.lock only, four lines: rstest and rstest_macros each move 0.26.1 to 0.27.0 with new checksums. Both nodes keep their dependency lists unchanged.

API, re-derived from the vendored sources at the locked versions. The packaged crate ships no changelog, so 0.27.0's changes were re-derived by diffing the rstest-0.26.1 / rstest-0.27.0 and rstest_macros-0.26.1 / rstest_macros-0.27.0 sources. The attribute surface this workspace uses is #[rstest], #[fixture], #[case] and named #[case::name(expr)], and #[values(...)], across exactly three files: packages/swarm-coordination-registry/src/statistics/event/handler.rs, packages/torrent-repository-benchmarking/tests/entry/mod.rs and .../tests/repository/mod.rs.

Exactly one 0.27 change lands on that surface, and it is additive. #[values(...)] parsing moves from Expressions to a new MatrixValues type in rstest_macros/src/parse/vlist.rs, which reads a doc comment before each entry and uses it as that matrix case's name. An entry without a doc comment keeps its sanitized-expression description, which rstest's own new unit test in parse/rstest.rs asserts directly (values[2].description() is "2" for a bare 2). Every #[values] list here is bare expressions, so the generated test names are unchanged — corroborated by the test gate, which produces the same 57 suites and 2603 cases as the two sibling heads that keep rstest at 0.26.1.

The rest does not reach this repository: the ::core:: hygiene fixes in render/inject.rs and render/mod.rs, the Box<Pat> deref cleanup in parse/arguments.rs, the last() to next_back() change in utils.rs, the futures-util default-features = false narrowing and the timeout.rs rewrite behind #[timeout], and the proc-macro-crate 3.2.0 to 3.4.0 bump. #[timeout], #[future], #[awt], #[files], #[once], #[with], #[trace] and #[by_ref] are used nowhere here. The exported surface is unchanged: rstest/src/lib.rs's pub use list and rstest_macros/src/lib.rs's proc_macro_attribute entry points diff clean.

MSRV rises from 1.70.0 to 1.85.0 for both crates and is absorbed by the workspace's rust-version = "1.88". Both manifests declare rstest = "0" under [dev-dependencies], which 0.27.0 satisfies, so the lockfile-only change needs no manifest edit.

Gates at this head, all on the server, one shared target directory, the three PRs serialized under a lock:

gate exit wall
cargo check --workspace --all-targets --all-features 0 0.6s
cargo clippy --workspace --all-targets --all-features -- -D warnings 0 0.7s
cargo test --workspace --all-targets --all-features 0 129.2s — 57 suites, 2603 passed, 0 failed, 0 ignored
cargo test --doc --workspace 0 6.3s — 30 passed, 0 failed, 2 ignored
cargo machete --with-metadata 0 7.3s — no unused dependencies
cargo deny check bans 0 1.3s — bans ok
linter all 0 18.9s
contrib/dev-tools/git/hooks/pre-commit.sh 0 32.9s — all 6 steps pass

The suite and case totals are identical across all three rebased heads and identical to the previous round, which is the empirical statement that this bump changes no test outcome.

CI at this head.

workflow (event) run conclusion
Testing (pull_request) 34498398846 success
Testing (push) 34498393831 failureDocker E2E only
Container (pull_request) 34498398928 success
OS Compatibility (pull_request) 34498398659 success
OS Compatibility (push) 34498393871 success
Generate Coverage Report (PR) 34498398796 success
Docs Lint (pull_request) 34498398787 success
Docs Lint (push) 34498393832 success

That one red is #2179, not this bump. In each failing run the only failing job is Docker E2E and within it the only failing step is Run E2E Tests; the preceding Build Tracker Image step succeeds and the three qBittorrent steps are skipped as downstream of the failure. The step runs cargo run --bin e2e_tests_runner -- … and cargo answers error: no bin target named 'e2e_tests_runner' in default-run packages, with its own help line naming the owning package: available bin in 'torrust-tracker-e2e-tools' package. That is the missing -p flag #2179 describes, it fails before any test executes, and it reproduces identically on all three rebased dependabot heads. The Docker E2E job is skipped on every pull_request run here because the job's if: guard excludes pull requests whose base is develop or main.

Everything else at this head is green: Unit (nightly), Unit (stable) and Layer Boundary Bans pass in both the push and the pull_request Testing runs.

@da2ce7

da2ce7 commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

ACK af62b55 — rstest 0.27.0: patch byte-identical to the previously ACKed head, the only 0.27 change touching a used attribute is the additive #[values] doc-comment naming, and all eight gates plus every CI job other than #2179's Docker E2E are green at this head.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Build | Project System Compiling and Packaging Dependencies Related to Dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant