@@ -41,15 +41,15 @@ compute_release_versions() {
4141 local RUN_OFFSET=" ${RUN_OFFSET:- 0} "
4242 : " ${GITHUB_RUN_NUMBER:= 0} "
4343
44- echo " compute_release_versions: start (GITHUB_RUN_NUMBER=${GITHUB_RUN_NUMBER} , RUN_OFFSET=${RUN_OFFSET} )"
44+ echo " compute_release_versions: start (GITHUB_RUN_NUMBER=${GITHUB_RUN_NUMBER} , RUN_OFFSET=${RUN_OFFSET} )" >&2
4545
4646 local VERSION PKG_VER BUILD_VER PYPI_VER
4747
4848 _emit () {
4949 # $1..$4: VERSION PKG_VER BUILD_VER PYPI_VER
5050 export VERSION=" $1 " PKG_VER=" $2 " BUILD_VER=" $3 " PYPI_VER=" $4 "
5151
52- echo " compute_release_versions: _emit -> VERSION=$VERSION PKG_VER=$PKG_VER BUILD_VER=$BUILD_VER PYPI_VER=$PYPI_VER "
52+ echo " compute_release_versions: _emit -> VERSION=$VERSION PKG_VER=$PKG_VER BUILD_VER=$BUILD_VER PYPI_VER=$PYPI_VER " >&2
5353
5454 {
5555 echo " VERSION=$VERSION "
@@ -58,67 +58,70 @@ compute_release_versions() {
5858 echo " PYPI_VER=$PYPI_VER "
5959 } >> " $GITHUB_ENV "
6060
61+ # Write to GITHUB_OUTPUT and avoid noisy SIGPIPE if the consumer closes early
6162 {
6263 echo " VERSION=$VERSION "
6364 echo " PKG_VER=$PKG_VER "
6465 echo " BUILD_VER=$BUILD_VER "
6566 echo " PYPI_VER=$PYPI_VER "
66- } | tee -a " $GITHUB_OUTPUT "
67+ } | tee -a " $GITHUB_OUTPUT " > /dev/null || true
6768 }
6869
6970 _next_dev_from () {
70- # $1: base version (e.g., 1.2.3) → outputs "PKG_VER BUILD_VER PYPI_VER"
71+ # $1: base version (e.g., 1.2.3) → prints "PKG_VER BUILD_VER PYPI_VER" to STDOUT
7172 local base=" $1 " major minor
72- echo " compute_release_versions: _next_dev_from base=${base} "
73- # Extract the major version (before the first dot)
73+ echo " compute_release_versions: _next_dev_from base=${base} " >&2
74+
7475 major=" ${base%% .* } "
75- # Extract the minor version (between the first and second dot)
7676 minor=" ${base#* .} " ; minor=" ${minor%% .* } "
7777 minor=$(( minor + 1 ))
7878
7979 local pkg=" ${major} .${minor} .0"
8080 local build=" ${pkg} +$(( GITHUB_RUN_NUMBER + RUN_OFFSET)) "
8181 local pypi=" ${build/ +/ .dev} "
82- echo " compute_release_versions: _next_dev_from -> pkg=${pkg} build=${build} pypi=${pypi} "
82+
83+ echo " compute_release_versions: _next_dev_from -> pkg=${pkg} build=${build} pypi=${pypi} " >&2
8384 printf ' %s %s %s\n' " $pkg " " $build " " $pypi "
8485 }
8586
8687 # ---------------- pyproject flow ----------------
8788 if [[ -n " ${1-} " ]]; then
8889 local arg=" $1 " pyproject
89- echo " compute_release_versions: [pyproject] arg=${arg} "
90+ echo " compute_release_versions: [pyproject] arg=${arg} " >&2
9091 if [[ " $arg " == * /* || " $arg " == * .toml ]]; then
9192 pyproject=" $arg "
9293 else
9394 pyproject=" ${SDK_PYTHON} /packages/${arg} /pyproject.toml"
9495 fi
95- echo " compute_release_versions: pyproject path=${pyproject} "
96+ echo " compute_release_versions: pyproject path=${pyproject} " >&2
9697
9798 VERSION=" $( uv run " $SCRIPTS /get_pyproject_version.py" " $pyproject " ) "
98- echo " compute_release_versions: got VERSION=${VERSION} from ${pyproject} "
99+ echo " compute_release_versions: got VERSION=${VERSION} from ${pyproject} " >&2
100+
99101 read -r PKG_VER BUILD_VER PYPI_VER < <( _next_dev_from " $VERSION " )
100- echo " compute_release_versions: computed PKG_VER=${PKG_VER} BUILD_VER=${BUILD_VER} PYPI_VER=${PYPI_VER} "
102+ echo " compute_release_versions: computed PKG_VER=${PKG_VER} BUILD_VER=${BUILD_VER} PYPI_VER=${PYPI_VER} " >&2
101103 _emit " $VERSION " " $PKG_VER " " $BUILD_VER " " $PYPI_VER "
102104 return
103105 fi
104106
105107 # ---------------- git/tag flow ----------------
106108 if [[ " ${GITHUB_REF:- } " == refs/tags/* ]]; then
107- echo " compute_release_versions: [git/tag] (GITHUB_REF=${GITHUB_REF} )"
109+ echo " compute_release_versions: [git/tag] (GITHUB_REF=${GITHUB_REF} )" >&2
108110 VERSION=" ${GITHUB_REF# refs/ tags/ } " ; VERSION=" ${VERSION# v} "
109- echo " compute_release_versions: tag VERSION=${VERSION} "
111+ echo " compute_release_versions: tag VERSION=${VERSION} " >&2
110112 PKG_VER=" $VERSION " ; BUILD_VER=" $PKG_VER " ; PYPI_VER=" ${BUILD_VER/ +/ .dev} "
111113 _emit " $VERSION " " $PKG_VER " " $BUILD_VER " " $PYPI_VER "
112114 return
113115 fi
114116
115- # Untagged: base = latest tag (or 0.0.0), then next-dev
117+ # ---------------- untagged flow ----------------
116118 local cv
117- echo " compute_release_versions: [untagged] - resolving latest tag"
119+ echo " compute_release_versions: [untagged] - resolving latest tag" >&2
118120 cv=" $( git describe --abbrev=0 2> /dev/null || echo " v0.0.0" ) "
119- echo " compute_release_versions: latest tag resolved to ${cv} "
121+ echo " compute_release_versions: latest tag resolved to ${cv} " >&2
122+
120123 VERSION=" ${cv# v} "
121124 read -r PKG_VER BUILD_VER PYPI_VER < <( _next_dev_from " $VERSION " )
122- echo " compute_release_versions: final computed PKG_VER=${PKG_VER} BUILD_VER=${BUILD_VER} PYPI_VER=${PYPI_VER} "
125+ echo " compute_release_versions: final computed PKG_VER=${PKG_VER} BUILD_VER=${BUILD_VER} PYPI_VER=${PYPI_VER} " >&2
123126 _emit " $VERSION " " $PKG_VER " " $BUILD_VER " " $PYPI_VER "
124127}
0 commit comments