arrow icon indicating copy to clipboard operation
arrow copied to clipboard

[Release][C++] Check the ABI stability during the release process of bug-fix releases

Open jorisvandenbossche opened this issue 1 year ago • 2 comments

According to our current policy, bug-fix (micro) releases of the C++ libraries are expected to be ABI stable, and so versions are not bumped (we should better document this, though, for which I opened https://github.com/apache/arrow/issues/41707).

However, AFAIK we don't actually check for this, and I am also not sure if we pay much attention to that aspect when deciding to backport certain PRs to the release branch. We do have a section in the dev docs about how to check for this (https://arrow.apache.org/docs/dev/developers/cpp/development.html#checking-for-abi-and-api-stability), and if we promise ABI stability, then I think we should do a better job of actually checking for this during the release process, and run that tool as part of the release process / verification? (or in some CI build, although one that should only run on the maintenance branches)

Example issue where we recently had an ABI break in 15.0.1: https://github.com/apache/arrow/issues/40604 (although I haven't checked if the tool mentioned above would have caught this)

cc @raulcd @kou

jorisvandenbossche avatar May 17 '24 12:05 jorisvandenbossche

Older closed issue about including the abi-compliance-checker tool in the build process: https://github.com/apache/arrow/issues/17960

jorisvandenbossche avatar May 17 '24 12:05 jorisvandenbossche

+1

We should do it to follow semantic versioning.

kou avatar May 19 '24 21:05 kou