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

Should we enforce binary compatibility for Kotlin libraries? #243

Closed
zach-klippenstein opened this issue Mar 31, 2019 · 3 comments · Fixed by #948
Closed

Should we enforce binary compatibility for Kotlin libraries? #243

zach-klippenstein opened this issue Mar 31, 2019 · 3 comments · Fixed by #948
Labels
enhancement New feature or request kotlin Affects the Kotlin library. question Further information is requested
Milestone

Comments

@zach-klippenstein
Copy link
Collaborator

Okio has tooling to ensure they don't accidentally break backwards binary compatibility for minor version bumps. I've not seen a lot of libraries that do this, but it seems to make sense especially for libraries that are likely to be depended on transitively. Kotlin makes it really easy to accidentally change your ABI, due to things like type inference. Should we follow suit?

Related Reading

@zach-klippenstein zach-klippenstein added this to To do in Workflow (Kotlin) via automation Mar 31, 2019
@zach-klippenstein zach-klippenstein added enhancement New feature or request question Further information is requested labels Mar 31, 2019
@zach-klippenstein zach-klippenstein modified the milestones: v1.0.0, Post-v1.0 Mar 31, 2019
@rjrjr
Copy link
Contributor

rjrjr commented Apr 2, 2019

Looks like they use the JApicmp gradle plugin.

@zach-klippenstein
Copy link
Collaborator Author

This too is kotlin-aware (e.g. internal visibility).

https://github.com/JetBrains/kotlin/tree/master/libraries/tools/binary-compatibility-validator

@zach-klippenstein
Copy link
Collaborator Author

Jetbrains finally broke that tool out into its own repo/artifact: https://github.com/Kotlin/binary-compatibility-validator

zach-klippenstein added a commit that referenced this issue Feb 10, 2020
…cking changes to our ABI.

Ignores all leaf sample projects individually, wildcards are not supported
(see Kotlin/binary-compatibility-validator#3).

Closes #243.
zach-klippenstein added a commit that referenced this issue Feb 10, 2020
…cking changes to our ABI.

Ignores all leaf sample projects individually, wildcards are not supported
(see Kotlin/binary-compatibility-validator#3).

Closes #243.
Workflow (Kotlin) automation moved this from To do to Done Feb 10, 2020
@zach-klippenstein zach-klippenstein added the kotlin Affects the Kotlin library. label Mar 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request kotlin Affects the Kotlin library. question Further information is requested
Projects
No open projects
2 participants