Apply Kotlin's binary-compatibility-validator plugin to all published subprojects#160
Merged
Conversation
drewhamilton
commented
Jan 29, 2026
| public fun toString ()Ljava/lang/String; | ||
| } | ||
|
|
||
| public final class app/cash/paykit/core/models/response/ApiErrorJsonAdapter : com/squareup/moshi/JsonAdapter { |
Collaborator
Author
There was a problem hiding this comment.
Exposing Moshi-generated classes is unfortunate and will make it very hard to compatibly bump to Moshi 2. Maybe we should just cut our losses and release SDK 3.0 in a new package.
pedronveloso
approved these changes
Jan 30, 2026
pedronveloso
left a comment
Contributor
There was a problem hiding this comment.
LGTM. We might have to update our build.yml Github Action, I'm not sure if the tasks that are currently ran on PR would trigger this check, if not we can be explicit and run this new one
… subprojects This prints out the API of each published subproject into a `.api` file, and runs the `apiCheck` task whenever the `build` or `check` tasks are run. If `apiCheck` fails, it means the public API has changed, and the `apiDump` task must be run to update the `.api` files. This will ensure we are always aware when the public API of the SDK is changing, and hopefully help us avoid breaking changes.
4e50822 to
466dcc3
Compare
Collaborator
Author
|
Good call, I updated build.yml to run the full |
This was referenced Jan 30, 2026
pedronveloso
added a commit
that referenced
this pull request
Feb 2, 2026
* main: Apply Kotlin's binary-compatibility-validator plugin to all published subprojects (#160)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This prints out the API of each published subproject into a
.apifile, and runs theapiChecktask whenever thebuildorchecktasks are run. IfapiCheckfails, it means the public API has changed, and theapiDumptask must be run to update the.apifiles. This will ensure we are always aware when the public API of the SDK is changing, and hopefully help us avoid breaking changes.Any unmerged PRs that are merged after this will have to rebase on top of this and run
./gradlew apiDump.