Add binary compatibility validator #2131
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #2111
Description
I wasn't sure if I should add a Changelog entry, since this does not affect consumers at all 👀
Binary compatibility validator will compare the commited public API surface with current one. Task
apiCheck
will run on everycheck
invocation.If the public API changes, the
apiCheck
task will fail and will require dumping a new one with./gradlew apiDump
.I'm proposing to verify binary compatibility of every project that is published (and can be consumed by third party clients)
Checklist
Before submitting the PR, please check following (checks which are not relevant may be ignored):
Closes #<xxx>
orFixes #<xxx>
(replace<xxx>
with issue number)CHANGELOG.md
is updatedDocumentation is updated. See difference between snapshot and release documentation