Skip to content

feat: lower MSRV from 1.89 to 1.85#8

Merged
lilith merged 4 commits intomainfrom
feat/msrv-1.85
Apr 12, 2026
Merged

feat: lower MSRV from 1.89 to 1.85#8
lilith merged 4 commits intomainfrom
feat/msrv-1.85

Conversation

@lilith
Copy link
Copy Markdown
Member

@lilith lilith commented Apr 12, 2026

Summary

  • Replace u64::is_multiple_of() (stabilized in 1.87) with count % skip != 0 in DebouncedTimeout
  • Lower workspace rust-version to 1.85 (edition 2024 floor)
  • Update CI matrix to test MSRV 1.85

enough already compiled on 1.85; the is_multiple_of call in almost-enough was the only blocker.

Test plan

  • cargo test --workspace passes locally (326 tests)
  • cargo clippy clean
  • cargo fmt clean
  • CI passes on all platforms

lilith added 2 commits April 11, 2026 22:54
Replace u64::is_multiple_of() (stabilized 1.87) with count % skip != 0
in DebouncedTimeout. The enough crate itself already compiled on 1.85;
this was the only blocker in almost-enough.

Update CI matrix and workspace rust-version to match.
- cargo-semver-checks: catch accidental breaking changes
- cargo-hack feature powerset: verify all feature combinations compile
- cargo-deny: license and advisory audit (with deny.toml)
- Miri: soundness checking for enough-ffi unsafe code
- WASM build: verify wasm32-unknown-unknown builds for no_std crates
- macOS Intel: add macos-26-intel to cross-platform matrix
- MSRV: test full workspace (1.85 is above all dev-dep floors)
- README: update MSRV badge to 1.85
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.86%. Comparing base (9e8f2e1) to head (3a7c662).

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #8   +/-   ##
=======================================
  Coverage   97.85%   97.86%           
=======================================
  Files          16       16           
  Lines        2336     2339    +3     
=======================================
+ Hits         2286     2289    +3     
  Misses         50       50           

☔ View full report in Codecov by Sentry.
📢 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.

lilith added 2 commits April 11, 2026 23:07
Miri: replace integer-to-pointer casts in enough-ffi tests with a
SendPtr wrapper that preserves provenance. The disjoint field capture
in edition 2024 requires a method accessor (.ptr()) so the closure
captures the Send wrapper, not the raw pointer field.

MSRV: criterion 0.8 requires Rust 1.86, so MSRV job tests per-crate
to avoid pulling in bench dev-deps.
Port stop_check benchmark from criterion to zenbench. The other two
benchmarks (stop_check_zen, debounced_timeout) already used zenbench.

With criterion removed, all dev-deps support Rust 1.85, so MSRV CI
can use cargo test --workspace instead of per-crate testing.
@lilith lilith merged commit 5564ed8 into main Apr 12, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants