-
Notifications
You must be signed in to change notification settings - Fork 72
Track publicly exposed APIs for semantic versioning #252
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
Conversation
|
I'm not interested in looking at the changed code but maybe some answers to these questions would help?
If all answers are yes then it's probably OK. |
There is a CI check that code files are properly formatted with no warnings in code. An untracked public API will now emit a warning but the fix is simple - just apply the code fix in the IDE (just a few clicks) and commit the result, or I do it myself. It doesn't block the build locally.
The Nightly workflow already invokes Release Drafter which updates the Draft Release every merge. It is unrelated to this PR - this PR tracks the API surface for following Semantic Versioning. Semantic Versioning mandates that breaking changes after version 1 update the major version number. I think it's about time we care about breaking changes because obviously this library is used in production now.
Release Drafter currently handles release notes, which is not the focus of this PR, this PR handles breaking change tracking in the public API surface.
The alternative is to silently accept breaking changes in the public API which is what we do now with a major version number 0, or manually check that the public API surface is unchanged which is unfathomable. |
charlesroddie
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Marking as approved on the basis that @Happypig375 is dealing with all of this!
No description provided.