Add cargo-semver-check as part of the CI#784
Add cargo-semver-check as part of the CI#784Philippe-Cholet merged 2 commits intorust-itertools:masterfrom
Conversation
|
@jswrenn FYI I add the |
|
@jswrenn Do you have any feedback for this PR ? Thanks |
|
Being unfamiliar with actions, I found this useful to roughly understand your PR; |
|
About the error, About the PR, merge it would lead to increase the version as soon as there is a breaking change rather than later when preparing to release. It seems reasonable to me. |
I'm reading this: It appears that determining whether a change is major hinges on its impact on downstream dependencies, particularly Rust programs utilizing the |
|
Thanks. As you are surely unfamiliar with I see why it thinks EDIT from the future: Read https://predr.ag/blog/moving-and-reexporting-rust-type-can-be-major-breaking-change/ which highlights the situation a bit. It changes nothing here IMO but I keep it for future reference. |
|
The PR looks good to me. However, I'm confused why we're not seeing more breaking changes. We have a bunch on master, pending release: https://github.com/rust-itertools/itertools/pulls?q=is%3Apr+label%3Abreaking-change+is%3Aclosed+milestone%3Anext |
|
@jswrenn 0.11.0 was released June 22. So the listed breaking changes are on 0.11.0. |
|
Isn't #709 a breaking change? |
Maybe not yet covered? obi1kenobi/cargo-semver-checks#5 states that "pub fn changed arguments in a backward-incompatible way" is hard. Just to make that explicit: https://github.com/obi1kenobi/cargo-semver-checks#will-cargo-semver-checks-catch-every-semver-violation states that not every semver violation will be catched. |
3f4462a to
14b918a
Compare
|
I merely rebased on master. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #784 +/- ##
==========================================
- Coverage 93.33% 93.24% -0.09%
==========================================
Files 48 48
Lines 6778 6778
==========================================
- Hits 6326 6320 -6
- Misses 452 458 +6 ☔ View full report in Codecov by Sentry. |
Agree - Given it may produce false positive I think we should make this job non-blocking. I've removed this job from |
|
@danieleades EDIT: No it's not the coverage that is blocking but it needs an approving review (such as mine..). The failing check seems wrong though. |
that depends on the repo's config. shouldn't block a merge in this repo it's possible to configure codecov to ignore small variations in coverage |
see #856 |
629e854 to
bf579b8
Compare
|
Rebased after #856 which eliminate spurious coverage failure. |
Philippe-Cholet
left a comment
There was a problem hiding this comment.
I think it would run without making CI fail because of a false positive. We might have to look/understand eventual failures to decide ourselves. I believe it's a decent compromise.
@phimuemue @jswrenn What do you think about adding semver-check that way?
|
I think that's a perfect compromise. |
|
@Owen-CH-Leung Thanks for this. |
fixes #757
This PR introduces a new CI job
cargo-semver-checkto lint the API against the latest release version and see if there're any breaking changes