diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-06-11 08:58:54 +0200 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2018-06-11 10:58:54 +0200 |
commit | fa2ad305e312c3e61e4943c345a4c34d4a1be18c (patch) | |
tree | ead695b319371aa6ce771a7f35dca24f0dc5da5f /scripts | |
parent | 44c6deb91ac917703c157d564eb3accbff4d37af (diff) | |
download | rneovim-fa2ad305e312c3e61e4943c345a4c34d4a1be18c.tar.gz rneovim-fa2ad305e312c3e61e4943c345a4c34d4a1be18c.tar.bz2 rneovim-fa2ad305e312c3e61e4943c345a4c34d4a1be18c.zip |
version bump
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/release.sh | 56 |
1 files changed, 35 insertions, 21 deletions
diff --git a/scripts/release.sh b/scripts/release.sh index 177fcced87..66ffd3e6fe 100755 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -1,5 +1,10 @@ #!/usr/bin/env bash +# Usage: +# ./scripts/release.sh +# ./scripts/release.sh --use-current-commit +# ./scripts/release.sh --only-bump +# # Performs steps to tag a release. # # Steps: @@ -19,7 +24,7 @@ set -e set -u set -o pipefail -USE_CURRENT_COMMIT=${1:-no} +ARG1=${1:-no} __sed=$( [ "$(uname)" = Darwin ] && echo 'sed -E' || echo 'sed -r' ) @@ -51,33 +56,42 @@ __BUMP_MSG="version bump" echo "Most recent tag: ${__LAST_TAG}" echo "Release version: ${__VERSION}" -$__sed -i.bk 's/(NVIM_VERSION_PRERELEASE) "-dev"/\1 ""/' CMakeLists.txt -if grep '(NVIM_API_PRERELEASE true)' CMakeLists.txt > /dev/null; then - $__sed -i.bk 's/(NVIM_API_PRERELEASE) true/\1 false/' CMakeLists.txt - build/bin/nvim --api-info > test/functional/fixtures/api_level_$__API_LEVEL.mpack - git add test/functional/fixtures/api_level_$__API_LEVEL.mpack -fi -if ! test "$USE_CURRENT_COMMIT" = 'use-current-commit' ; then - echo "Building changelog since ${__LAST_TAG}..." - __CHANGELOG="$(./scripts/git-log-pretty-since.sh "$__LAST_TAG" 'vim-patch:\S')" +_do_release_commit() { + $__sed -i.bk 's/(NVIM_VERSION_PRERELEASE) "-dev"/\1 ""/' CMakeLists.txt + if grep '(NVIM_API_PRERELEASE true)' CMakeLists.txt > /dev/null; then + $__sed -i.bk 's/(NVIM_API_PRERELEASE) true/\1 false/' CMakeLists.txt + build/bin/nvim --api-info > test/functional/fixtures/api_level_$__API_LEVEL.mpack + git add test/functional/fixtures/api_level_$__API_LEVEL.mpack + fi - git add CMakeLists.txt - git commit --edit -m "${__RELEASE_MSG} ${__CHANGELOG}" -fi + if ! test "$ARG1" = '--use-current-commit' ; then + echo "Building changelog since ${__LAST_TAG}..." + __CHANGELOG="$(./scripts/git-log-pretty-since.sh "$__LAST_TAG" 'vim-patch:\S')" -git tag --sign -a v"${__VERSION}" -m "NVIM v${__VERSION}" + git add CMakeLists.txt + git commit --edit -m "${__RELEASE_MSG} ${__CHANGELOG}" + fi -$__sed -i.bk 's/(NVIM_VERSION_PRERELEASE) ""/\1 "-dev"/' CMakeLists.txt -$__sed -i.bk 's/set\((NVIM_VERSION_PATCH) [[:digit:]]/set(\1 ?/' CMakeLists.txt -nvim +'/NVIM_VERSION' +10new +'exe "norm! iUpdate version numbers!!!\<CR>"' \ - +'norm! 10.' CMakeLists.txt + git tag --sign -a v"${__VERSION}" -m "NVIM v${__VERSION}" +} -git add CMakeLists.txt -git commit -m "$__BUMP_MSG" +_do_bump_commit() { + $__sed -i.bk 's/(NVIM_VERSION_PRERELEASE) ""/\1 "-dev"/' CMakeLists.txt + $__sed -i.bk 's/set\((NVIM_VERSION_PATCH) [[:digit:]]/set(\1 ?/' CMakeLists.txt + nvim +'/NVIM_VERSION' +10new +'exe "norm! iUpdate version numbers!!!\<CR>"' \ + +'norm! 10.' CMakeLists.txt -rm CMakeLists.txt.bk || true + git add CMakeLists.txt + git commit -m "$__BUMP_MSG" + + rm CMakeLists.txt.bk || true +} +if ! test "$ARG1" = '--only-bump' ; then + _do_release_commit +fi +_do_bump_commit echo " Next steps: - Double-check NVIM_VERSION_* in CMakeLists.txt |