Techniques to detect API/ABI changes



Telling from http://tinymail.org/trac/tinymail/wiki/HelpCoding, there
is now some focus on post-1.0 API/ABI stability. As evolution
downstream maintainer this topic interests me.

The worst thing that can happen is to break ABI without increasing
version numbers of the libraries. A bit better is to have to break ABI
for example by refactoring, and then bump the versions appropriately.
The best would, of course, be to avoid breaking the API/ABI
altogether.

Let's think about the first case. As long as the developers, or more
commonly the upstream module maintainer or release manager, watch
every API/ABI change, things may be fine. The problem is when a
breakage makes it through a release unspotted.

Is it possible to create some kind of automated tests of the API so
that both binary and semantic breakage can be detected? Does anyone
have thoughts on this or pointers to such tests or frameworks in other
projects?

Cheers,
Øystein Gisnås



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]