opendal icon indicating copy to clipboard operation
opendal copied to clipboard

ci: check all (or some) features for MSRV

Open xxchan opened this issue 7 months ago • 2 comments

Context: https://github.com/apache/opendal/issues/6178

Currently we don't have any feature flags set in CI for MSRV. However, directly turn on --all-features likely won't work, as many dependencies need to use higher toolchain version.

The solution is to use cargo +nightly generate-lockfile -Z minimal-versions

  • ref: https://github.com/clap-rs/clap/blob/e2188d9af318f3287c1c5a52cba6b9dfebe7bb75/.github/workflows/ci.yml#L185-L186
  • https://github.com/foresterre/cargo-msrv/issues/312
  • To use this, we will need to fix our Cargo.toml. e.g., if we specify tokio=1, but a dependency uses tokio=1.x, generate-lockfile will report error, and we should specify tokio=1.x instead.

xxchan avatar May 19 '25 10:05 xxchan

Maybe can try this https://doc.rust-lang.org/cargo/reference/config.html#resolverincompatible-rust-versions

xxchan avatar May 21 '25 03:05 xxchan

I personally believe this won't be an issue anymore once our ecosystem is fully set up on Rust Edition 2024.

Xuanwo avatar May 21 '25 04:05 Xuanwo