mirror of
https://github.com/rust-lang/cargo.git
synced 2025-09-28 11:20:36 +00:00
fix: emit 1.77 syntax error only when msrv is incompatible
This commit is contained in:
parent
f70bfd3f4a
commit
ba5ec686f9
@ -724,10 +724,9 @@ impl BuildOutput {
|
||||
pkg_descr: &str,
|
||||
msrv: &Option<RustVersion>,
|
||||
) -> CargoResult<()> {
|
||||
let new_syntax_added_in = &RustVersion::from_str("1.77.0")?;
|
||||
|
||||
if let Some(msrv) = msrv {
|
||||
if msrv < new_syntax_added_in {
|
||||
let new_syntax_added_in = RustVersion::from_str("1.77.0")?;
|
||||
if !new_syntax_added_in.is_compatible_with(msrv.as_partial()) {
|
||||
bail!(
|
||||
"the `cargo::` syntax for build script output instructions was added in \
|
||||
Rust 1.77.0, but the minimum supported Rust version of `{pkg_descr}` is {msrv}.\n\
|
||||
|
@ -5527,14 +5527,9 @@ fn test_new_syntax_with_compatible_partial_msrv() {
|
||||
.build();
|
||||
|
||||
p.cargo("check")
|
||||
.with_status(101)
|
||||
.with_stderr_contains(
|
||||
"\
|
||||
[COMPILING] foo [..]
|
||||
[ERROR] the `cargo::` syntax for build script output instructions was added in Rust 1.77.0, \
|
||||
but the minimum supported Rust version of `foo v0.0.0 ([ROOT]/foo)` is 1.77.
|
||||
See https://doc.rust-lang.org/cargo/reference/build-scripts.html#outputs-of-the-build-script \
|
||||
for more information about build script outputs.
|
||||
",
|
||||
)
|
||||
.run();
|
||||
|
Loading…
x
Reference in New Issue
Block a user