-
Notifications
You must be signed in to change notification settings - Fork 250
patch vs. minor version bumps #626
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
Comments
Yes, I agree with all your points :). Actually, I though about releasing a 0.29.1 instead, but @dralley prefer to bump minor when we introduce new features. In your case you and/or Anyway, thanks for reporting this! Now I will have a stricter position to use patch releases when possible 😁 |
Okay, thanks! it's not a huge deal in any case, but thought I'd at least check in and see. Thanks to everyone for their work! |
I don't have especially strong opinions, so if bumping the y-versions leads to real practical issues for a significant group of people, then I suppose I am neutral towards using z-releases instead. Mostly because we have pretty good test coverage, though. |
It helps that the changes have been smaller lately, too. A few months ago we were still merging multiple large (hundreds of lines each) PRs per release, and changes of that magnitude feel minor-bump-worthy even if they don't obviously break anything. But that's not currently the case. |
This discussion has prompted me to wonder whether it's worth considering 1.0 soon? Opened #627 for that discussion. |
I just noticed that v0.30.0 was published, and this raised a question for me:
Before version 1.0, a minor version bump is a breaking change. From a quick glance, it does not appear that there were any actually breaking changes in the code between 0.29 and 0.30. Before 1.0, semver guarantees are very loose. My personal feeling is that before 1.0, the patch field should be used for any non-breaking changes; the main benefit of this is that it lets cargo continue to resolve disparate dependency versions automatically.
Concretely, the current practice is a bit of a headache for me because I have a number of crates that rely on both the
plist
crate (which relies onquick_xml
) as well as onquick_xml
directly. This makes it easy for me to end up in the situation where I am compiling two different versions ofquick_xml
unnecessarily.For further discussion of the semantic meaning of the minor/patch versions before 1.0, I found this discussion helpful.
(If it turns out that there was actually some breaking change that I didn't notice then please accept my apologies and close this 😁)
The text was updated successfully, but these errors were encountered: