|
|
|
|
|
by tremon
2894 days ago
|
|
I can think of two (relatively) simple tests: A) you generate an export of the public API (entrypoints, arguments, types) in some stable format. B) you run the (public-api) testsuite of the previous release against the current release. - If A yields no changes wrt the previous release, then B should probably succeed as well (barring changed tests). Bump the patchlevel. - If A has changes but B succeeds, it's a minor version bump. - If A has changes and B reports failures, it's a major version bump. Of course, this isn't fool-proof, so you still want some way of overriding the automated version bump. But I think it's reliable enough to at least force developers to think about the changes they're making. Of course, it does rely on having a testsuite, and explicitly marking parts of it as public-api validation. |
|