leizhiyuan opened a new issue, #1469: URL: https://github.com/apache/rocketmq-clients/issues/1469
### Background The Rust client declares `rust-version = "1.74"` (the README still says 1.61). Most of the ecosystem it depends on has moved past that: | crate (latest) | rust-version | edition | |---|---|---| | tokio 1.54 | 1.85 | 2021 | | tokio-util 0.7.20 | 1.85 | 2021 | | hyper-util 0.1.21 | 1.85 | 2024 | | indexmap 2.14 | 1.85 | 2024 | | hashbrown 0.17 | 1.85 | 2024 | | getrandom 0.4 | 1.85 | 2024 | | time 0.3.47+ | 1.88 | 2024 | To stay on 1.74, `Cargo.toml` accumulated upper-bound/exact pins (`tokio <1.47`, `tokio-util =0.7.10`, `time <0.3.37`, `indexmap <2.8`, `hyper-util <0.1.16`, ...). These pins propagate to downstream projects and make `rocketmq` impossible to use together with current tokio/tokio-util. #1468 removes the pins and enforces the MSRV through the MSRV-aware resolver instead, but CI still has to work around Cargo 1.74 being unable to parse edition-2024 manifests in the index, and the 1.74 build is tested against increasingly old dependency versions. ### Proposal Bump the MSRV to **1.85**: - 1.85 is the first release supporting edition 2024, which is the main thing blocking current versions of the dependencies above. - It matches tokio's current MSRV, so the most common downstream stack builds without downgrades. - Released in February 2025, it is well over a year old. - 1.88 is not needed: only `time >=0.3.47` requires it, and the MSRV-aware resolver falls back to `time 0.3.45`. Changes: 1. `rust/Cargo.toml`: `rust-version = "1.85"`. 2. `.github/workflows/rust_build.yml`: MSRV matrix `1.74` -> `1.85` (and drop the stable-Cargo lockfile workaround from #1468 if it is no longer needed). 3. `rust/README.md`: update the documented MSRV. This is independent of #1468 (relaxing the pins is needed for downstream regardless of the MSRV), but it removes the CI workaround and lets CI test against current dependency versions. ### Verification done locally With `rust-version = "1.85"` and a lockfile resolved by the MSRV-aware resolver (tokio 1.54.1, tokio-util 0.7.20, hyper-util 0.1.21, hashbrown 0.17.1, time 0.3.45), `cargo +1.85.0 test` passes: 164 passed, 0 failed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
