From 60ce7aa07eaaf9bd123b9372ec48e08f7d0c6f4b Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Fri, 27 Dec 2024 17:40:39 +0000 Subject: [PATCH 1/6] Improve sorting in group_entries --- tools/changelog-helper.sh | 50 +++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 23 deletions(-) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index bd5b436c17..ab0fb5c69b 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -39,6 +39,7 @@ export GH_REPO=jamulussoftware/jamulus PR_LIST_LIMIT=300 TRANSLATION_ENTRY_TEXT="GUI: Translations have been updated:" +TRANSLATION_ENTRY_TEXT2="Translations updated from Hosted Weblate" declare -A LANGS LANGS[de_DE]="German" LANGS[fr_FR]="French" @@ -112,32 +113,35 @@ group_entries() { # Prepend a number to known categories in order to make their sorting position consistent: category_order=( "$TRANSLATION_ENTRY_TEXT" - "GUI" - "Accessibility" - "Client" - "Server" - "Recorder" - "Performance" - "CLI" - "Bug Fix" - "Windows" - "Installer" - "Linux" - "Mac" - "Android" - "iOS" - "Translation" - "Doc" - "Website" - "Github" - "Build" - "Autobuild" - "Code" - "Internal" + "$TRANSLATION_ENTRY_TEXT2" + "GUI:" + "Accessibility:" + "Client:" + "Client/Server:" + "Server:" + "Recorder:" + "Performance:" + "CLI:" + "Bug Fix:" + "Windows:" + "Installer:" + "Linux:" + "Mac:" + "Android:" + "iOS:" + "Translation:" + "Doc:" + "Website:" + "Github:" + "Build:" + "Autobuild:" + "Code:" + "Internal:" ) local index=0 for category in "${category_order[@]}"; do - changelog=$(sed -re 's/^(- '"${category}"')/'"${index}"' \1/' <<< "${changelog}") + # use | as delimiter, as category may contain / + changelog=$(sed -re 's|^(- '"${category}"')|'"${index}"' \1|' <<< "${changelog}") index=$((index + 1)) done From 64e243706872a21328f24b974c2343262baec05d Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Mon, 30 Dec 2024 22:28:09 +0000 Subject: [PATCH 2/6] Preserve trailing newline in $changelog for correct sorting --- tools/changelog-helper.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index ab0fb5c69b..bb7ec60f9b 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -141,7 +141,8 @@ group_entries() { local index=0 for category in "${category_order[@]}"; do # use | as delimiter, as category may contain / - changelog=$(sed -re 's|^(- '"${category}"')|'"${index}"' \1|' <<< "${changelog}") + # also re-add stripped newline from last line, for correct sorting + changelog=$(sed -re 's|^(- '"${category}"')|'"${index}"' \1|' <<< "${changelog}")$'\n' index=$((index + 1)) done From 9da5860c6ee146ea2e554ca7fbe2b3052d484b2a Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Mon, 30 Dec 2024 22:46:13 +0000 Subject: [PATCH 3/6] Keep bundled Qt updates together --- tools/changelog-helper.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index bb7ec60f9b..0a90d9b99b 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -40,6 +40,7 @@ export GH_REPO=jamulussoftware/jamulus PR_LIST_LIMIT=300 TRANSLATION_ENTRY_TEXT="GUI: Translations have been updated:" TRANSLATION_ENTRY_TEXT2="Translations updated from Hosted Weblate" +BUNDLED_QT_UPDATE_TEXT="Build: Updated bundled Qt6" declare -A LANGS LANGS[de_DE]="German" LANGS[fr_FR]="French" @@ -133,6 +134,7 @@ group_entries() { "Doc:" "Website:" "Github:" + "$BUNDLED_QT_UPDATE_TEXT" "Build:" "Autobuild:" "Code:" From 55e519fc6283e4e518b87c7f97b5e219380b0185 Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Tue, 31 Dec 2024 15:24:07 +0000 Subject: [PATCH 4/6] Add category for Dependencies --- tools/changelog-helper.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index 0a90d9b99b..de00ccccbc 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -130,6 +130,7 @@ group_entries() { "Mac:" "Android:" "iOS:" + "Dependencies:" "Translation:" "Doc:" "Website:" From 8fdfe73150eae3d3b66de85200db30cff9b3c3fc Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Sun, 13 Apr 2025 16:25:39 +0100 Subject: [PATCH 5/6] Add explicit sorting for all Bump Dependencies --- tools/changelog-helper.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index de00ccccbc..41bc0226c8 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -41,6 +41,10 @@ PR_LIST_LIMIT=300 TRANSLATION_ENTRY_TEXT="GUI: Translations have been updated:" TRANSLATION_ENTRY_TEXT2="Translations updated from Hosted Weblate" BUNDLED_QT_UPDATE_TEXT="Build: Updated bundled Qt6" +# must escape ( and ) so that sed doesn't treat them as magic +BUNDLED_JACK_UPDATE_TEXT="Build: Updated bundled JACK \\(Windows-only\\)" +NSIS_UPDATE_TEXT="Build: Updated Windows Installer base \\(NSIS\\)" +ASIO_UPDATE_TEXT="Build: Updated ASIO SDK \\(Windows-only\\)" declare -A LANGS LANGS[de_DE]="German" LANGS[fr_FR]="French" @@ -136,6 +140,9 @@ group_entries() { "Website:" "Github:" "$BUNDLED_QT_UPDATE_TEXT" + "$BUNDLED_JACK_UPDATE_TEXT" + "$NSIS_UPDATE_TEXT" + "$ASIO_UPDATE_TEXT" "Build:" "Autobuild:" "Code:" From aace2eeb0c1a70dde150806720f9c71d2bffb225 Mon Sep 17 00:00:00 2001 From: Tony Mountifield Date: Sun, 13 Apr 2025 17:22:28 +0100 Subject: [PATCH 6/6] Improve order of translation categories --- tools/changelog-helper.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/changelog-helper.sh b/tools/changelog-helper.sh index 41bc0226c8..aa27770536 100755 --- a/tools/changelog-helper.sh +++ b/tools/changelog-helper.sh @@ -117,8 +117,9 @@ group_entries() { # Prepend a number to known categories in order to make their sorting position consistent: category_order=( - "$TRANSLATION_ENTRY_TEXT" + "Translation:" "$TRANSLATION_ENTRY_TEXT2" + "$TRANSLATION_ENTRY_TEXT" "GUI:" "Accessibility:" "Client:" @@ -135,7 +136,6 @@ group_entries() { "Android:" "iOS:" "Dependencies:" - "Translation:" "Doc:" "Website:" "Github:"