From 6a8408cea46276d89da592d03c0569a7088d2586 Mon Sep 17 00:00:00 2001 From: Tim Pohlmann Date: Thu, 15 Oct 2026 17:23:40 +0200 Subject: [PATCH 1/2] Keep trailing .0 of two-part versions in create-jira-version normalize_version_name stripped any trailing .0, so a requested next version of '12.0' was created in Jira as '12' and passed on as such to bump-version. Only strip the .0 patch when the version has at least three parts. --- create-jira-version/create_jira_version.py | 10 ++++------ create-jira-version/test_create_jira_version.py | 2 ++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/create-jira-version/create_jira_version.py b/create-jira-version/create_jira_version.py index ca4f497f..7d4b9a15 100644 --- a/create-jira-version/create_jira_version.py +++ b/create-jira-version/create_jira_version.py @@ -7,7 +7,6 @@ import argparse import os -import re import sys sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), '..', 'shared')) @@ -18,12 +17,11 @@ def normalize_version_name(version_name): """ Normalizes a version name by removing .0 patch suffix. - For example: 1.2.0 -> 1.2, but 1.2.4 stays as 1.2.4 + For example: 1.2.0 -> 1.2, but 1.2.4 stays as 1.2.4 and 12.0 stays as 12.0 """ - # Match versions ending in .0 (e.g., 1.2.0, 10.20.0) - match = re.match(r'^(.+)\.0$', version_name) - if match: - return match.group(1) + parts = version_name.split('.') + if len(parts) > 2 and parts[-1] == '0': + return '.'.join(parts[:-1]) return version_name diff --git a/create-jira-version/test_create_jira_version.py b/create-jira-version/test_create_jira_version.py index c37b5754..22fd419f 100644 --- a/create-jira-version/test_create_jira_version.py +++ b/create-jira-version/test_create_jira_version.py @@ -34,6 +34,8 @@ def test_keeps_non_zero_patch(self): def test_handles_two_part_versions(self): """Test that two-part versions are unchanged.""" self.assertEqual(normalize_version_name('1.2'), '1.2') + self.assertEqual(normalize_version_name('12.0'), '12.0') + self.assertEqual(normalize_version_name('v12.0'), 'v12.0') def test_handles_single_zero(self): """Test edge case with just 0.""" From 25d189eeb4f231694fe1932da826b090a2f49d5f Mon Sep 17 00:00:00 2001 From: Gitar Date: Thu, 15 Oct 2026 15:34:43 +0000 Subject: [PATCH 2/2] fix: preserve two-part Jira versions Co-authored-by: Tim Pohlmann <20153123+Tim-Pohlmann@users.noreply.github.com> --- get-jira-version/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/get-jira-version/action.yml b/get-jira-version/action.yml index a3d0e75d..4c2a591a 100644 --- a/get-jira-version/action.yml +++ b/get-jira-version/action.yml @@ -20,7 +20,7 @@ runs: VERSION=$(echo "$RELEASE_VERSION" | cut -d '+' -f 1 | cut -d '.' -f 1-3) # Remove trailing '.0' if it exists (to match Jira version format) - JIRA_VERSION_NAME=$(echo "$VERSION" | sed 's/\.0$//') + JIRA_VERSION_NAME=$(echo "$VERSION" | sed -E 's/^([^.]+\.[^.]+)\.0$/\1/') echo "JIRA_VERSION_NAME: ${JIRA_VERSION_NAME}" echo "JIRA_VERSION_NAME=${JIRA_VERSION_NAME}" >> "$GITHUB_ENV"