Re: abi-compliance-check failure due to recent changes to pg_{clear,restore}_{attribute,relation}_stats()
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers@postgresql.org, david@justatheory.com, Andrew Dunstan <andrew@dunslane.net>
Date: 2025-10-17T18:06:16Z
Lists: pgsql-hackers
On Fri, Oct 17, 2025 at 01:15:20PM -0400, Tom Lane wrote: > FWIW, I favor the approach of having an in-tree, per-branch file > containing the commit hash of a commit that is the current ABI > reference for that branch. If the file doesn't exist (which it > wouldn't in master, and probably not in recently-forked branches), > skip ABI checking. I think this is superior to the discussed > alternative of depending on git tags, because files are easy to > change or remove, while tags are not. In particular, I think it'd > likely be impossible to make the ABI reference point go backwards > if we use tags. Maybe that's not a case we'd ever need, but I'm > unconvinced of that. I'm new to the topic, but IMHO the per-branch file approach is by far the best approach. Not only is it much more flexible, but we could even use it as a centralized list of ABI breaks for a given branch with justification for each. I can't think of any strong advantages of keeping this stuff in git metadata. git itself uses a file for blame.ignoreRevsFile... -- nathan
Commits
-
Add commit 24f6c1bd4 to v17 .abi-compliance-history.
- 5c659da980e1 17.7 landed
-
Add .abi-compliance-history to back-branches.
- eaf73340cd46 16.11 landed
- d9c5e7129d2b 15.15 landed
- a91f2d822522 17.7 landed
- 7d47278933f4 13.23 landed
- 58ba7e5ebfdf 14.20 landed
-
Add reminder to create .abi-compliance-history.
- b97d8d843a2d 19 (unreleased) landed
-
Update .abi-compliance-history file.
- 93fb76ca4e69 18.1 landed
-
Add .abi-compliance-history to v18 branch.
- a72f7d97bea9 18.1 landed
-
Fix thinko in commit 7d129ba54.
- 399a9e04e549 18.1 cited
-
Fix lookups in pg_{clear,restore}_{attribute,relation}_stats().
- c8af5019bee5 18.1 cited
- 688dc6299a5b 19 (unreleased) cited
-
Add defenses against unexpected changes in the NodeTag enum list.
- eea9fa9b250f 16.0 cited