forked from bitcoin/bitcoin
-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge bitcoin-core/secp256k1#964: Add release-process.md
3ed0d02 doc: add CHANGELOG template (Jonas Nick) 6f42dc1 doc: add release_process.md (Jonas Nick) 0bd3e42 build: set library version to 0.0.0 explicitly (Jonas Nick) b4b02fd build: change libsecp version from 0.1 to 0.1.0-pre (Jonas Nick) Pull request description: This is an attempt at a simple release process. Fixes bitcoin#856. To keep it simple, there is no concept of release candidates for now. The release version is determined by semantic versioning of the API. Since it does not seem to be a lot of work, it is proper to also version the ABI with the libtool versioning system. This versioning scheme (semver API, libtool versioning ABI) follows the suggestion in the [autotools mythbusters](https://autotools.io/libtool/version.html). Experimental modules are a bit of a headache, as expected. This release process suggests to treat any change in experimental modules as backwards compatible. That way, users of stable modules are not bothered by frequent non-backwards compatible releases. But a downside is that one must not use experimental modules in shared libraries (which should be mentioned in the README?). It would be nice if we could make the schnorrsig module stable in the not too distant future (see also bitcoin#817). ACKs for top commit: apoelstra: utACK 3ed0d02 elichai: ACK 3ed0d02 sipa: ACK 3ed0d02 real-or-random: ACK 3ed0d02 Tree-SHA512: 25a04335a9579e16de48d378b93a9c6a248529f67f7c436680fa2d495192132743ce016c547aa9718cdcc7fe932de31dd7594f49052e8bd85572a84264f2dbee
- Loading branch information
Showing
4 changed files
with
50 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Changelog | ||
|
||
This file is currently only a template for future use. | ||
|
||
Each change falls into one of the following categories: Added, Changed, Deprecated, Removed, Fixed or Security. | ||
|
||
## [Unreleased] | ||
|
||
## [MAJOR.MINOR.PATCH] - YYYY-MM-DD | ||
|
||
### Added/Changed/Deprecated/Removed/Fixed/Security | ||
- [Title with link to Pull Request](https://link-to-pr) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# Release Process | ||
|
||
1. Open PR to master that | ||
1. adds release notes to `doc/CHANGELOG.md` and | ||
2. if this is **not** a patch release, updates `_PKG_VERSION_{MAJOR,MINOR}` and `_LIB_VERSIONS_*` in `configure.ac` | ||
2. After the PR is merged, | ||
* if this is **not** a patch release, create a release branch with name `MAJOR.MINOR`. | ||
Make sure that the branch contains the right commits. | ||
Create commit on the release branch that sets `_PKG_VERSION_IS_RELEASE` in `configure.ac` to `true`. | ||
* if this **is** a patch release, open a pull request with the bugfixes to the `MAJOR.MINOR` branch. | ||
Also include the release note commit bump `_PKG_VERSION_BUILD` and `_LIB_VERSIONS_*` in `configure.ac`. | ||
4. Tag the commit with `git tag -s vMAJOR.MINOR.PATCH`. | ||
5. Push branch and tag with `git push origin --tags`. | ||
6. Create a new GitHub release with a link to the corresponding entry in `doc/CHANGELOG.md`. |