4 ms·
That is only true of the application binary interface has changed. Usually this means the developer will update the number associated with the library. Botan i
by calloc 16y ago
That is only true of the application binary interface has changed. Usually this means the developer will update the number associated with the library.
Botan is a cryptographic library, it is on version 1.8.10, however its library is at 1.8.2, which means if the application was compiled against version 1.8.3 it will work just as well with 1.8.10 as it would with 1.8.2 as none of the binary interface has changed.
- doki_pen 16y agoThis is how it works in theory. It seems that many fixes would involve breaking things. And how do you enforce this behavior of bumping the version? Do all upstream developers agree to your interpretation of what version numbers mean?
- calloc 16y agoThe upstream bumps the version when the ABI breaks. This is a social convention, there is no requirement for them to do so, but if they don't package managers certainly will. Also many fixes DON'T involve breaking the ABI, generally it is a fix within a function so the function return type, name and parameters stay the same as such the ABI is not broken as that is all that matters, you can change the function all you want so long as it still returns the same thing as before. Yes it works very well in practice, and makes development much nicer, as libraries around my product can easily be updated without me having to update anything.