Page MenuHomePhabricator

Add update-version script
AbandonedPublic

Authored by jasonbcox on Jan 9 2020, 21:12.

Details

Reviewers
deadalnix
Group Reviewers
Restricted Project
Summary

This reduces four manual steps in our release process down to one
and is a step closer to fully automating this part of the release process in the future.

update-version.sh updates the version number in the following locations:

  • configure.ac
  • CMakeLists.txt
  • contrib/gitian-descriptors/*.yml (major and minor version number changes only)
  • release notes

The default behavior is to increment the revision version number (our most common version bump operation).
Optionally, -v can be specified to set a particular <major.minor.revision> version.

Test Plan
update-version.sh -h
update-version.sh
update-version.sh -v 0.20.11
update-version.sh -v 0.21.0
update-version.sh -v 1.0.0

Diff Detail

Repository
rABC Bitcoin ABC
Branch
update-version
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 8822
Build 15619: Default Diff Build & Tests
Build 15618: arc lint + arc unit

Event Timeline

contrib/devtools/update-version.sh
61

For those not experienced with sed, this pattern is used to capture the VERSION line after the line with project(bitcoin-abc. See https://unix.stackexchange.com/questions/285160/how-to-edit-next-line-after-pattern-using-sed for another example.

This isn't the most robust compared to the other sed calls, but I do not expect this part of our CMakeLists.txt to change format often.

72

Embarrassing I forgot about this: D2286