tustvold commented on PR #4653: URL: https://github.com/apache/arrow-rs/pull/4653#issuecomment-1667965288
It would appear I am incorrect and cargo does not perform MSRV-aware resolution. There is a ticket https://github.com/rust-lang/cargo/issues/9930 to track supporting this. I confirmed this with ``` $ cargo new msrv_test $ cd msrv_test $ rustup override set 1.62 $ cargo --version cargo 1.62.1 (a748cf5a3 2022-06-08) $ echo 'arrow-buffer = "45.0"' >> Cargo.toml $ cargo build error: package `half v2.3.1` cannot be built because it requires rustc 1.70 or newer, while the currently active rustc version is 1.62.1 $ cargo update -p half --precise v2.1.0 $ cargo build Compiling autocfg v1.1.0 Compiling half v2.1.0 Compiling num-traits v0.2.16 Compiling num-integer v0.1.45 Compiling num-bigint v0.4.3 Compiling num-iter v0.1.43 Compiling num-rational v0.4.1 Compiling num-complex v0.4.3 Compiling num v0.4.1 Compiling arrow-buffer v45.0.0 Compiling msrv_test v0.1.0 (/home/raphael/repos/external/msrv_test) Finished dev [unoptimized + debuginfo] target(s) in 5.11s ``` That being said I don't actually know what the correct policy here is, I would expect the MSRV to track the minimum MSRV where a compatible set of crate versions exists, as opposed to the MSRV of the latest version of all crates... I'll see if I can't ping some other crate maintainers who may be able to weigh in with greater authority -- 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]
