I’m aware that there have been two schools of thought regarding whether an increase in the minimum Rust version that a crate builds with should be treated as a semver breaking change for the crate.
The root cause of the problem is, of course, that the Rust version itself is not part of the cargo dependency constraints, so cargo won’t hold back upgrades that don’t suit the Rust version in use.
I’m aware of the arguments in both directions: On one hand, having
cargo update (without
rustup update) break the build is, for practical purposes, a breaking change. On the other hand, it’s bad for the ecosystem to accommodate users of Rust who don’t update Rust itself, since semver-breaking changes in the crate version number split the library ecosystem and also waste people’s time by causing a chain of semver-breaking version changes throughout the library ecosystem when other libraries depend on a library whose Rust version requirement moved forward.
Now that some time has passed since this was last debated without consensus, has consensus emerged? That is, is there now a clear community norm whether to treat Rust dependency increases as semver-breaking for a crate?