From f3cb8ed1e052520cc6171eadd815b80093640d60 Mon Sep 17 00:00:00 2001 From: Ken Jiang Date: Tue, 21 Oct 2025 09:23:28 -0400 Subject: [PATCH 1/4] ifxx --- js/scripts/publish-prerelease.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/js/scripts/publish-prerelease.sh b/js/scripts/publish-prerelease.sh index 81d8877ab..52d0d3484 100755 --- a/js/scripts/publish-prerelease.sh +++ b/js/scripts/publish-prerelease.sh @@ -47,6 +47,13 @@ if [ -z "$VERSION" ]; then exit 1 fi +# Validate that version contains the correct prerelease suffix +if [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+-($PRERELEASE_TYPE)(\.[0-9]+)?$ ]]; then + echo "ERROR: Version '$VERSION' must include the prerelease type '$PRERELEASE_TYPE'" + echo "Expected format: X.Y.Z-$PRERELEASE_TYPE.N (e.g., 1.2.3-$PRERELEASE_TYPE.1)" + exit 1 +fi + # Map prerelease type to npm dist-tag case "$PRERELEASE_TYPE" in beta) From 4311501c8a32c26fb57f1db52079b4a2b6be7bab Mon Sep 17 00:00:00 2001 From: Ken Jiang Date: Tue, 21 Oct 2025 14:44:38 -0400 Subject: [PATCH 2/4] fixxx --- .github/workflows/publish-js-sdk.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/publish-js-sdk.yaml b/.github/workflows/publish-js-sdk.yaml index 7f41c9705..45faa3c22 100644 --- a/.github/workflows/publish-js-sdk.yaml +++ b/.github/workflows/publish-js-sdk.yaml @@ -9,7 +9,8 @@ # # 2. PRE-RELEASE (manual, workflow_dispatch): # - Manually triggered via GitHub Actions UI -# - Choose pre-release type (beta/alpha/rc) and version +# - Choose pre-release type (beta/alpha/rc) +# - Automatically appends "rc{run_number}" to current package.json version # - Publishes with appropriate dist-tag (beta/alpha/next) # - Does NOT require updating package.json in the repository # @@ -30,10 +31,6 @@ on: - beta - alpha - rc - version: - description: "Version to publish (e.g., 1.2.3-beta.1)" - required: true - type: string jobs: validate: @@ -98,7 +95,10 @@ jobs: if: github.event_name == 'workflow_dispatch' working-directory: js run: | - ./scripts/publish-prerelease.sh "${{ github.event.inputs.prerelease_type }}" "${{ github.event.inputs.version }}" + # Read current version from package.json and append run number + CURRENT_VERSION=$(node -p "require('./package.json').version") + NEW_VERSION="${CURRENT_VERSION}rc${GITHUB_RUN_NUMBER}" + ./scripts/publish-prerelease.sh "${{ github.event.inputs.prerelease_type }}" "$NEW_VERSION" # Upload artifacts for both paths - name: Upload build artifacts From 4ce3c71f7dd16079780fd7858e525b44d91545db Mon Sep 17 00:00:00 2001 From: Ken Jiang Date: Tue, 21 Oct 2025 14:58:09 -0400 Subject: [PATCH 3/4] try --- .github/workflows/publish-js-sdk.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-js-sdk.yaml b/.github/workflows/publish-js-sdk.yaml index 45faa3c22..40d12d021 100644 --- a/.github/workflows/publish-js-sdk.yaml +++ b/.github/workflows/publish-js-sdk.yaml @@ -97,7 +97,7 @@ jobs: run: | # Read current version from package.json and append run number CURRENT_VERSION=$(node -p "require('./package.json').version") - NEW_VERSION="${CURRENT_VERSION}rc${GITHUB_RUN_NUMBER}" + NEW_VERSION="${CURRENT_VERSION}-${{ github.event.inputs.prerelease_type }}.${GITHUB_RUN_NUMBER}" ./scripts/publish-prerelease.sh "${{ github.event.inputs.prerelease_type }}" "$NEW_VERSION" # Upload artifacts for both paths From 327ecfc371ccf1dc2d584596e73ce124567efb14 Mon Sep 17 00:00:00 2001 From: Ken Jiang Date: Tue, 21 Oct 2025 15:03:53 -0400 Subject: [PATCH 4/4] simplify --- .github/workflows/publish-js-sdk.yaml | 20 ++++--------- js/scripts/publish-prerelease.sh | 43 ++++++++------------------- 2 files changed, 18 insertions(+), 45 deletions(-) diff --git a/.github/workflows/publish-js-sdk.yaml b/.github/workflows/publish-js-sdk.yaml index 40d12d021..c9cc817fa 100644 --- a/.github/workflows/publish-js-sdk.yaml +++ b/.github/workflows/publish-js-sdk.yaml @@ -9,9 +9,8 @@ # # 2. PRE-RELEASE (manual, workflow_dispatch): # - Manually triggered via GitHub Actions UI -# - Choose pre-release type (beta/alpha/rc) -# - Automatically appends "rc{run_number}" to current package.json version -# - Publishes with appropriate dist-tag (beta/alpha/next) +# - Automatically appends "rc.{run_number}" to current package.json version +# - Publishes with "rc" dist-tag # - Does NOT require updating package.json in the repository # @@ -21,16 +20,7 @@ on: push: tags: - "js-sdk-v*.*.*" # Trigger on version tags like js-sdk-v0.1.0, js-sdk-v1.2.3, etc. - workflow_dispatch: - inputs: - prerelease_type: - description: "Pre-release type (determines npm dist-tag)" - required: true - type: choice - options: - - beta - - alpha - - rc + workflow_dispatch: # Trigger pre-release manually jobs: validate: @@ -97,8 +87,8 @@ jobs: run: | # Read current version from package.json and append run number CURRENT_VERSION=$(node -p "require('./package.json').version") - NEW_VERSION="${CURRENT_VERSION}-${{ github.event.inputs.prerelease_type }}.${GITHUB_RUN_NUMBER}" - ./scripts/publish-prerelease.sh "${{ github.event.inputs.prerelease_type }}" "$NEW_VERSION" + NEW_VERSION="${CURRENT_VERSION}-rc.${GITHUB_RUN_NUMBER}" + ./scripts/publish-prerelease.sh "rc" "$NEW_VERSION" # Upload artifacts for both paths - name: Upload build artifacts diff --git a/js/scripts/publish-prerelease.sh b/js/scripts/publish-prerelease.sh index 52d0d3484..d263adcf6 100755 --- a/js/scripts/publish-prerelease.sh +++ b/js/scripts/publish-prerelease.sh @@ -5,8 +5,8 @@ set -euo pipefail # Can be used both locally and in CI/CD # # Usage: ./publish-prerelease.sh -# type: beta, alpha, or rc -# version: explicit version to publish, e.g., 1.2.3-beta.1 +# type: rc +# version: explicit version to publish, e.g., 1.2.3-rc.1 # Get directories ROOT_DIR=$(git rev-parse --show-toplevel) @@ -17,12 +17,10 @@ if [ $# -lt 2 ]; then echo "Usage: $0 " echo "" echo "Arguments:" - echo " type: beta, alpha, or rc" + echo " type: rc" echo " version: explicit version to publish" echo "" - echo "Examples:" - echo " $0 beta 1.2.3-beta.1" - echo " $0 alpha 1.2.3-alpha.5" + echo "Example:" echo " $0 rc 1.2.3-rc.1" exit 1 fi @@ -31,15 +29,11 @@ PRERELEASE_TYPE="$1" VERSION="$2" # Validate prerelease type -case "$PRERELEASE_TYPE" in - beta|alpha|rc) - ;; - *) - echo "ERROR: Invalid prerelease type: $PRERELEASE_TYPE" - echo "Must be one of: beta, alpha, rc" - exit 1 - ;; -esac +if [ "$PRERELEASE_TYPE" != "rc" ]; then + echo "ERROR: Invalid prerelease type: $PRERELEASE_TYPE" + echo "Must be: rc" + exit 1 +fi # Validate version format if [ -z "$VERSION" ]; then @@ -48,24 +42,13 @@ if [ -z "$VERSION" ]; then fi # Validate that version contains the correct prerelease suffix -if [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+-($PRERELEASE_TYPE)(\.[0-9]+)?$ ]]; then - echo "ERROR: Version '$VERSION' must include the prerelease type '$PRERELEASE_TYPE'" - echo "Expected format: X.Y.Z-$PRERELEASE_TYPE.N (e.g., 1.2.3-$PRERELEASE_TYPE.1)" +if [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+-rc(\.[0-9]+)?$ ]]; then + echo "ERROR: Version '$VERSION' must include the prerelease type 'rc'" + echo "Expected format: X.Y.Z-rc.N (e.g., 1.2.3-rc.1)" exit 1 fi -# Map prerelease type to npm dist-tag -case "$PRERELEASE_TYPE" in - beta) - DIST_TAG="beta" - ;; - alpha) - DIST_TAG="alpha" - ;; - rc) - DIST_TAG="next" - ;; -esac +DIST_TAG="rc" echo "================================================" echo " Publishing Pre-release"