Why deprecating types is considered a breaking change? #1032
-
Today after deprecating some of structs,
This is quite surprising to me, as I never considered deprecation to be a breaking change, because it only creates warnings to downstream crates. But the downstream crates will still continue to compile and work correctly. I'd be interested to understand the rationale for this behavior. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
Hi! It isn't breaking — the cargo-semver-checks output should have ended with:
It's asking you to consider making a minor version bump, not major. With default If you don't like this lint, you can use lint configuration to lower it to a warning or make it skipped altogether. |
Beta Was this translation helpful? Give feedback.
Hi! It isn't breaking — the cargo-semver-checks output should have ended with:
It's asking you to consider making a minor version bump, not major. With default
cargo-semver-checks
settings, causing new warnings in downstream code will require a minor bump. This is a default we chose based on the fact that many projects run with-D warnings
in CI (so this would be breaking to them), and based on a poll of our user base when introducing the first few lints in this category where "require a minor version" won by a large margin.If you don't like this lint, you can use lint configuration to lower it to a warnin…