aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThéo Zimmermann2020-03-31 15:22:39 +0200
committerThéo Zimmermann2020-04-03 15:03:06 +0200
commit3ed313c9d34770376d6326fa7b291d0969d581a5 (patch)
tree6238cc9ba3e8f49bf5f039027c62dc0730487fab
parentacefe58cd39c9a4efee632f7f92f56fb4d5285bb (diff)
Add a rudimentary script to generate release changelog.
The idea is very simple: use the list in the release branch to know which changelog entries to include, but do the work of removing these entries and consolidating the released changelog in the master branch (so that it is applied both to the master branch and to the release branch following the backporting process).
-rwxr-xr-xdev/tools/generate-release-changelog.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/dev/tools/generate-release-changelog.sh b/dev/tools/generate-release-changelog.sh
new file mode 100755
index 0000000000..ef061d31d9
--- /dev/null
+++ b/dev/tools/generate-release-changelog.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+if [ $# != 1 ]; then
+ echo "Usage: $0 BRANCH"
+ exit
+fi
+
+branch=$1
+
+git checkout $branch
+git pull
+changelog_entries_with_title=$(ls doc/changelog/*/*.rst)
+changelog_entries_no_title=$(echo "$changelog_entries_with_title" | grep -v "00000-title.rst")
+git checkout master
+git pull
+for f in $changelog_entries_with_title; do
+ if [ -f "$f" ]; then
+ cat "$f" >> released.rst
+ else
+ echo "Warning: $f is missing in master branch."
+ fi
+done
+for f in $changelog_entries_no_title; do
+ if [ -f "$f" ]; then
+ git rm "$f"
+ fi
+done
+echo "Changelog written in released.rst. Move its content to a new section in doc/sphinx/changes.rst."