diff options
author | Daiki Ueno <ueno@gnu.org> | 2021-11-27 16:48:51 +0100 |
---|---|---|
committer | Daiki Ueno <ueno@gnu.org> | 2021-11-27 16:48:51 +0100 |
commit | 52eb89e7a79a3597fc6f039bf1be5e7c99d7d88d (patch) | |
tree | 6a1d10d00fd8be1ff66a4e1e5148eaa06ae15a38 | |
parent | c76a9008a314941bdb455e72a5de61d731de9eef (diff) | |
download | gnutls-52eb89e7a79a3597fc6f039bf1be5e7c99d7d88d.tar.gz |
CONTRIBUTING.md: clarify how to introduce new API
Signed-off-by: Daiki Ueno <ueno@gnu.org>
-rw-r--r-- | CONTRIBUTING.md | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2773b3ffca..723666ea4d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -159,11 +159,23 @@ As such, some questions to answer before adding a new API: The make rule 'abi-check' verifies that the ABI remained compatible since the last tagged release, which is maintained in a separate -[abi-dump](https://gitlab.com/gnutls/abi-dump) repository. During -development, the new APIs should be explicitly ignored with the last -section of [devel/libgnutls.abignore](devel/libgnutls.abignore). When -a new version is released and the abi-dump repository is updated, the -section will be cleared. +[abi-dump](https://gitlab.com/gnutls/abi-dump) repository. This +repository shall be updated upon each release if any changes are +introduced in the ABI. + +To add new API during development cycle, follow the steps below: + +0. If there is no section in [lib/libgnutls.map](lib/libgnutls.map), + corresponding to the next release, add it, deriving from the + previous interface +1. Add new symbols in that section +2. Run `make abi-check-latest`; this will report differences as + errors. Edit the last section of + [devel/libgnutls.abignore](devel/libgnutls.abignore) to suppress + them. + +When a new version is released and the abi-dump repository is updated, +the section will be cleared. The above do not apply to the C++ library; this library's ABI should not be considered stable. |