Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Breaking changes within patch release - 1.0.1 #52

Closed
DDtKey opened this issue Oct 4, 2024 · 8 comments
Closed

Breaking changes within patch release - 1.0.1 #52

DDtKey opened this issue Oct 4, 2024 · 8 comments

Comments

@DDtKey
Copy link

DDtKey commented Oct 4, 2024

Firs of all, thank you for the maintenance!

Recently released version 1.0.1 included this PR: #48

Which changed public type, this is breaking change and broke some dependent crates (e.g pattern matching in atuin)

I'd suggest to yank the version and release major patch instead

@DDtKey DDtKey changed the title Breaking changes in patch release - 1.0.1 Breaking changes within patch release - 1.0.1 Oct 4, 2024
@xpe
Copy link

xpe commented Oct 7, 2024

I also found my way here because of the downstream breakage seen on atuin's issue tracker.

To expand on what @DDtKey wrote, see also:

For what it is worth, many of the things listed above are not obvious, at least not without quite a bit of forethought. We're all learning.

@maciejhirsz
Copy link
Owner

Argh, that's what happens when you merge things and then forget about doing a release for months on end. I'll fix that later today.

@xpe
Copy link

xpe commented Oct 7, 2024

@maciejhirsz Thanks. This is also what sometimes happens you build a library that other people use. 😄

@ellie
Copy link

ellie commented Oct 7, 2024

Thank you! Appreciate your work here btw ❤️

Otherwise, I'm going to take the opportunity to plug @obi1kenobi's https://github.com/obi1kenobi/cargo-semver-checks. He's spent a long time working on this problem and has produced some excellent tooling to try and catch it before it becomes an issue.

@obi1kenobi
Copy link

Thanks for the kind words, Ellie 😊

cargo-semver-checks isn't perfect yet, but it already has 90+ lints flagging various kinds of breakage. In this case, it wouldn't have caught the type change (obi1kenobi/cargo-semver-checks#149), but its enum_unit_variant_changed_kind lint would have caught the breaking change here in the ErrorKind::InvalidWord variant.

I'd be happy to answer any questions folks here might have!

@maciejhirsz
Copy link
Owner

Released 2.0.0, 1.0.1 got yanked. Thank you and apologies 🙏.

@ellie
Copy link

ellie commented Oct 7, 2024

Thanks for the speedy fix!

@DDtKey
Copy link
Author

DDtKey commented Oct 7, 2024

Thank you @maciejhirsz! 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants