mirror of
https://github.com/neovim/neovim.git
synced 2024-12-21 03:35:02 -07:00
cc1ec959f1
FEATURES:0b5a7e4ad5
#4432 API: external UIs can render custom popupmenuc6ac4f84b1
#4934 API: call any API method from vimscript31df051ed9
#4568 API: nvim_call_atomic(): multiple calls in a single requestb268ba353a
#5424 API: nvim_win_get_number(), nvim_tabpage_get_number()e7e2844d46
has("nvim-1.2.3") checks for a specific Nvim version522b885a0d
#5295, #5493 `:CheckHealth` checks tmux, terminfo, performance719dae2e01
#5384 events: allow event processing in getchar()f25797f869
#5386 API: metadata: Nvim version & API level22dfe6925d
#5389 API: metadata: "since", "deprecated_since"605e74327a
Added QuickFixLine highlight group CHANGES:4af6ec746c
#5253 perf: Disable clipboard in do_cmdline()6e9f329d05
#5299 perf: Skip foldUpdate() in insert-mode.9d4fcec7c6
#5426 perf: Do not auto-update folds for some foldmethods.eeec0cab58
#5419 tui: Default to normal-mode cursor shape. FIXES:e83845285c
#5436 tui: Fix "weird characters" / "bleeding termcodes"10a54ad12e
#5243 signal_init: Always unblock SIGCHLD.bccb49bedb
#5316 eval.c: Fix memory leak for detached pty job626065d385
#5227 tchdir: New tab should inherit CWD.cd321b7d0f
#5292 getcwd(): Return empty string if CWD is invalid.6127eaef05
shada: Fix non-writeable ShaDa directory handlingca65514a24
#2789 system(): Respect shellxescape, shellxquote2daf54ee8d
#4874 Restore vim-like tab dragging0c536b5d8a
#5319 syntax.c: Support bg/fg special color-names.3c53371b0c
#4972 from justinmk/schedule-ui_refresh68bcb32ec4
#4789 tui.c: Do not wait for tui loop on teardown.c8b6ec2e6a
#5409 v:count broken in command-line window6bc3bcefc6
#5461 fix emoji display51937e1322
#5470 fix :terminal with :argadd, :argu79d77da8a0
#5481 external UIs: opening multiple files from command-line657ba62a84
#5501 rplugin: resolve paths in manifest file6a6f188d2a
#5502 system('foo &', 'bar'): Show error, don't crash.1ff162c0d9
#5515 os_nodetype: open fd with O_NONBLOCK2a6c5bb0c4
#5450 modeline: Handle version number overflow.0ade1bb706
#5225 CI tests now run against Windows!
71 lines
2.2 KiB
Bash
Executable File
71 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Performs steps to tag a release.
|
|
#
|
|
# Steps:
|
|
# Create the "release" commit:
|
|
# - CMakeLists.txt: Unset NVIM_VERSION_PRERELEASE
|
|
# - CMakeLists.txt: Unset NVIM_API_PRERELEASE
|
|
# - Tag the commit.
|
|
# Create the "version bump" commit:
|
|
# - CMakeLists.txt: Set NVIM_VERSION_PRERELEASE to "-dev"
|
|
#
|
|
# Manual steps:
|
|
# - CMakeLists.txt: Bump NVIM_VERSION_* as appropriate.
|
|
# - git push --follow-tags
|
|
|
|
set -e
|
|
set -u
|
|
set -o pipefail
|
|
|
|
__sed=$( [ "$(uname)" = Darwin ] && echo 'sed -E' || echo 'sed -r' )
|
|
|
|
cd "$(git rev-parse --show-toplevel)"
|
|
|
|
__LAST_TAG=$(git describe --abbrev=0)
|
|
[ -z "$__LAST_TAG" ] && { echo 'ERROR: no tag found'; exit 1; }
|
|
__VERSION_MAJOR=$(grep 'set(NVIM_VERSION_MAJOR' CMakeLists.txt\
|
|
|$__sed 's/.*NVIM_VERSION_MAJOR ([[:digit:]]).*/\1/')
|
|
__VERSION_MINOR=$(grep 'set(NVIM_VERSION_MINOR' CMakeLists.txt\
|
|
|$__sed 's/.*NVIM_VERSION_MINOR ([[:digit:]]).*/\1/')
|
|
__VERSION_PATCH=$(grep 'set(NVIM_VERSION_PATCH' CMakeLists.txt\
|
|
|$__sed 's/.*NVIM_VERSION_PATCH ([[:digit:]]).*/\1/')
|
|
__VERSION="${__VERSION_MAJOR}.${__VERSION_MINOR}.${__VERSION_PATCH}"
|
|
{ [ -z "$__VERSION_MAJOR" ] || [ -z "$__VERSION_MINOR" ] || [ -z "$__VERSION_PATCH" ]; } \
|
|
&& { echo "ERROR: version parse failed: '${__VERSION}'"; exit 1; }
|
|
__RELEASE_MSG="NVIM v${__VERSION}
|
|
|
|
FEATURES:
|
|
|
|
FIXES:
|
|
|
|
CHANGES:
|
|
|
|
"
|
|
__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
|
|
$__sed -i.bk 's/(NVIM_API_PRERELEASE) true/\1 false/' CMakeLists.txt
|
|
echo "Building changelog since ${__LAST_TAG}..."
|
|
__CHANGELOG="$(./scripts/git-log-pretty-since.sh "$__LAST_TAG" 'vim-patch:\S')"
|
|
|
|
git add CMakeLists.txt
|
|
git commit --edit -m "${__RELEASE_MSG} ${__CHANGELOG}"
|
|
git tag --sign -a v"${__VERSION}" -m "NVIM v${__VERSION}"
|
|
|
|
$__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 add CMakeLists.txt
|
|
git commit -m "$__BUMP_MSG"
|
|
|
|
echo "
|
|
Next steps:
|
|
- Double-check NVIM_VERSION_* in CMakeLists.txt
|
|
- git push --follow-tags
|
|
- update website: index.html"
|