Skip to content

Commit

Permalink
Add CMake instructions to release process
Browse files Browse the repository at this point in the history
Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
  • Loading branch information
real-or-random and hebasto committed Mar 8, 2023
1 parent 3295aa1 commit 810e77b
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions doc/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,20 @@ This process also assumes that there will be no minor releases for old major rel
## Regular release

1. Open a PR to the master branch with a commit (using message `"release: prepare for $MAJOR.$MINOR.$PATCH"`, for example) that
* finalizes the release notes in [CHANGELOG.md](../CHANGELOG.md) (make sure to include an entry for `### ABI Compatibility`) and
* updates `_PKG_VERSION_*`, `_LIB_VERSION_*`, and sets `_PKG_VERSION_IS_RELEASE` to `true` in `configure.ac`.
* finalizes the release notes in [CHANGELOG.md](../CHANGELOG.md) (make sure to include an entry for `### ABI Compatibility`),
* updates `_PKG_VERSION_*`, `_LIB_VERSION_*`, and sets `_PKG_VERSION_IS_RELEASE` to `true` in `configure.ac`, and
* updates `project(secp256k1 ...` to `VERSION $MAJOR.$MINOR.$PATCH` and updates `*_LIB_VERSION_*` in `CMakeLists.txt`.
2. After the PR is merged, tag the commit and push it:
```
RELEASE_COMMIT=<merge commit of step 1>
git tag -s v$MAJOR.$MINOR.$PATCH -m "libsecp256k1 $MAJOR.$MINOR.$PATCH" $RELEASE_COMMIT
git push git@github.com:bitcoin-core/secp256k1.git v$MAJOR.$MINOR.$PATCH
```
3. Open a PR to the master branch with a commit (using message `"release cleanup: bump version after $MAJOR.$MINOR.$PATCH"`, for example) that sets `_PKG_VERSION_IS_RELEASE` to `false` and `_PKG_VERSION_PATCH` to `$PATCH + 1` and increases `_LIB_VERSION_REVISION`. If other maintainers are not present to approve the PR, it can be merged without ACKs.
3. Open a PR to the master branch with a commit (using message `"release cleanup: bump version after $MAJOR.$MINOR.$PATCH"`, for example) that
* sets `_PKG_VERSION_IS_RELEASE` to `false` and `_PKG_VERSION_PATCH` to `$PATCH+1` and increments `_LIB_VERSION_REVISION` in `configure.ac`, and
* updates `project(secp256k1 ...` to `VERSION $MAJOR.$MINOR.$PATCH+1` and increments `*_LIB_VERSION_REVISION` in `CMakeLists.txt`.

If other maintainers are not present to approve the PR, it can be merged without ACKs.
4. Create a new GitHub release with a link to the corresponding entry in [CHANGELOG.md](../CHANGELOG.md).

## Maintenance release
Expand Down

0 comments on commit 810e77b

Please sign in to comment.