From 7cca500c6cc7c7704350fbdc9ec0e5d4fc87c8da Mon Sep 17 00:00:00 2001 From: "jinli.zjw" Date: Fri, 24 Jul 2026 10:19:43 +0800 Subject: [PATCH] fix: make release version parsing portable --- scripts/releasing/create_source_release.sh | 3 +-- scripts/releasing/verify_release_candidate.sh | 5 ++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/scripts/releasing/create_source_release.sh b/scripts/releasing/create_source_release.sh index fb0345a7..f65ae2b2 100755 --- a/scripts/releasing/create_source_release.sh +++ b/scripts/releasing/create_source_release.sh @@ -115,8 +115,7 @@ done CMAKE_VERSION=$( git -C "${SOURCE_ROOT}" show "${GIT_REF}:CMakeLists.txt" | - sed -n 's/^[[:space:]]*VERSION[[:space:]]\+\([0-9][0-9.]*\).*$/\1/p' | - head -n 1 + awk '$1 == "VERSION" && $2 ~ /^[0-9]+\.[0-9]+\.[0-9]+$/ { print $2; exit }' ) [[ "${CMAKE_VERSION}" == "${RELEASE_VERSION}" ]] || fail "CMake version ${CMAKE_VERSION:-} does not match ${RELEASE_VERSION}" diff --git a/scripts/releasing/verify_release_candidate.sh b/scripts/releasing/verify_release_candidate.sh index cf6660d6..47274cfd 100755 --- a/scripts/releasing/verify_release_candidate.sh +++ b/scripts/releasing/verify_release_candidate.sh @@ -167,9 +167,8 @@ for required_file in LICENSE NOTICE CMakeLists.txt docs/source/conf.py; do done CMAKE_VERSION=$( - sed -n 's/^[[:space:]]*VERSION[[:space:]]\+\([0-9][0-9.]*\).*$/\1/p' \ - "${SOURCE_DIR}/CMakeLists.txt" | - head -n 1 + awk '$1 == "VERSION" && $2 ~ /^[0-9]+\.[0-9]+\.[0-9]+$/ { print $2; exit }' \ + "${SOURCE_DIR}/CMakeLists.txt" ) [[ "${CMAKE_VERSION}" == "${RELEASE_VERSION}" ]] || fail "CMake version ${CMAKE_VERSION:-} does not match ${RELEASE_VERSION}"