-
Notifications
You must be signed in to change notification settings - Fork 59
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
Why use the .api
extension and not .abi
?
#198
Comments
It indeed makes sense. This is rather a historical oddity where we first started with "what is public API" and then every other name just followed. |
I see, thanks. I was thinking that maybe because of the change in structure with the klib / KMP support, it might be a good time to change the extension too |
We thought about that too, but changing the name of JVM dump files would be painful for existing users, and having two files (for KLib and class files) with the (conceptually) same stuff inside but different names looked weird. |
In which way? These files are updated each time an ABI change happens, so it's already part of the process to update them/commit them in some way. Making a source code change + |
Given that the new release introduces experimental feature useful for some developers (those who owns KMP projects), it's hard to justify why everyone else should be disturbed. As Vsevolod said, it's something that could be done with a major release, but for now we decided to stick to existing naming convention. |
Yes, and the good thing about it is that it's a conscious decision, so nothing surprising to the users here. It has happened several times in the past that updating the Kotlin plugin breaks the dumps (which is arguably more surprising), and at least for me personally it has never been more painful than forgetting to Also, enabling the klib support flag (which I guess one day will be the default) already moves the dumps, so we may as well capitalize on this :) |
Given that these files are meant to represent a serialized ABI to check binary compatibility, and that the tool is called
binary-compatibility-validator
it would make sense to call this the ABI, right?The text was updated successfully, but these errors were encountered: