diff --git a/.github/workflows/publish-branch.yml b/.github/workflows/publish-branch.yml deleted file mode 100644 index 5c7fb5287ade..000000000000 --- a/.github/workflows/publish-branch.yml +++ /dev/null @@ -1,61 +0,0 @@ -name: Publish branch packages - -on: - pull_request: - types: [labeled] - -defaults: - run: - shell: bash - -jobs: - deploy: - name: 'Publish branch packages' - environment: npm deploy - timeout-minutes: 60 - runs-on: ubuntu-latest-16-cores-arm-open - if: github.event.label.name == 'publish-packages' - - permissions: - contents: read - pull-requests: write - id-token: write - - steps: - - name: Remove the publish-packages label - uses: actions-ecosystem/action-remove-labels@v1 - with: - labels: publish-packages - - - name: Check out code - uses: actions/checkout@v6 - with: - fetch-depth: 0 - - - name: Run our setup - uses: ./.github/actions/setup - - - name: Publish Canary Packages - run: yarn tsx ./internal/scripts/publish-prerelease.ts internal - env: - GH_TOKEN: ${{ github.token }} - R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} - R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} - TLDRAW_BEMO_URL: https://canary-demo.tldraw.xyz - - - name: Extract published version - id: extract_version - run: echo "version=$(node -e 'console.log(require("./packages/tldraw/package.json").version)')" >> $GITHUB_OUTPUT - - - name: Tell user released version - uses: actions-ecosystem/action-create-comment@v1 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - body: | - Published version ${{ steps.extract_version.outputs.version }} to npm. - - - name: Notify Discord on failure - if: failure() - uses: ./.github/actions/discord-fail-notify - with: - webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} diff --git a/.github/workflows/publish-canary.yml b/.github/workflows/publish-canary.yml deleted file mode 100644 index 65f79d2a1158..000000000000 --- a/.github/workflows/publish-canary.yml +++ /dev/null @@ -1,65 +0,0 @@ -name: Publish Prerelease Packages - -on: - push: - branches: [main, production] - -defaults: - run: - shell: bash - -jobs: - deploy: - name: 'Publish Prerelease Packages' - environment: npm deploy - timeout-minutes: 60 - runs-on: ubuntu-latest-16-cores-arm-open - - permissions: - contents: read - id-token: write - - steps: - - name: Check out code - uses: actions/checkout@v6 - with: - fetch-depth: 0 - - - name: Run our setup - uses: ./.github/actions/setup - - - name: Publish Prerelease Packages - id: publish - run: | - yarn tsx ./internal/scripts/publish-prerelease.ts ${{ github.ref == 'refs/heads/production' && 'next' || 'canary' }} - echo "VERSION=$(jq -r .version ./packages/tldraw/package.json)" >> $GITHUB_OUTPUT - env: - GH_TOKEN: ${{ github.token }} - R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} - R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} - TLDRAW_BEMO_URL: https://canary-demo.tldraw.xyz - - - name: Generate a token - if: github.ref == 'refs/heads/production' - id: generate_token - uses: actions/create-github-app-token@v2 - with: - app-id: ${{ vars.HUPPY_APP_ID }} - private-key: ${{ secrets.HUPPY_PRIVATE_KEY }} - owner: tldraw - repositories: tldraw-desktop - - - name: Notify tldraw-desktop - if: github.ref == 'refs/heads/production' - run: | - curl -X POST \ - -H "Accept: application/vnd.github+json" \ - -H "Authorization: Bearer ${{ steps.generate_token.outputs.token }}" \ - https://api.github.com/repos/tldraw/tldraw-desktop/dispatches \ - -d '{"event_type":"tldraw-release","client_payload":{"version":"${{ steps.publish.outputs.VERSION }}","tag":"next"}}' - - - name: Notify Discord on failure - if: failure() - uses: ./.github/actions/discord-fail-notify - with: - webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} diff --git a/.github/workflows/publish-manual.yml b/.github/workflows/publish-manual.yml deleted file mode 100644 index 4444564747cf..000000000000 --- a/.github/workflows/publish-manual.yml +++ /dev/null @@ -1,67 +0,0 @@ -name: (Re)Publish SDK packages manually -# This only attempts to publish the public packages to npm. -# It does not bump the version, it does not update the changelogs, it does not create a github release. - -# Prevent more than one non-canary npm publishing job from running at the same time -concurrency: - group: npm-publish - -# Package publishing is manually triggered on github actions dashboard -on: - workflow_dispatch: - inputs: - version: - description: The version to publish - required: true - default: e.g. 3.12.1 - -defaults: - run: - shell: bash - -jobs: - deploy: - name: '(Re)Publish public packages manually' - environment: npm deploy - timeout-minutes: 60 - runs-on: ubuntu-latest-16-cores-arm-open - - outputs: - is_latest_version: ${{ steps.publish_step.outputs.is_latest_version }} - - permissions: - contents: read - id-token: write - - steps: - - name: Check out code - uses: actions/checkout@v6 - - - name: Run our setup - uses: ./.github/actions/setup - - - name: Publish - id: publish_step - run: yarn tsx ./internal/scripts/publish-manual.ts - env: - GH_TOKEN: ${{ github.token }} - R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} - R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} - TLDRAW_BEMO_URL: https://demo.tldraw.xyz - TLDRAW_VERSION_STRING: ${{ inputs.version }} - - - name: Notify Discord on failure - if: failure() - uses: ./.github/actions/discord-fail-notify - with: - webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - - publish_templates: - name: Publishes code templates to separate repositories - uses: tldraw/tldraw/.github/workflows/publish-templates.yml@main - if: ${{ needs.deploy.outputs.is_latest_version == 'true' }} - secrets: - HUPPY_PRIVATE_KEY: ${{ secrets.HUPPY_PRIVATE_KEY }} - HUPPY_APP_ID: ${{ vars.HUPPY_APP_ID }} - DISCORD_DEPLOY_WEBHOOK_URL: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - needs: deploy diff --git a/.github/workflows/publish-new.yml b/.github/workflows/publish-new.yml deleted file mode 100644 index 2481a05eafb2..000000000000 --- a/.github/workflows/publish-new.yml +++ /dev/null @@ -1,102 +0,0 @@ -name: Publish new SDK release from production branch (minor version bump) -# This bumps the version, updates the changelogs, publishes a GitHub release, and publishes the packages to npm. - -# Prevent more than one non-canary npm publishing job from running at the same time -concurrency: - group: npm-publish - -# Package publishing is manually triggered on github actions dashboard -on: - workflow_dispatch: - inputs: - bump_type: - type: choice - description: Version Bump Type - required: true - default: 'minor' - options: - - minor - - major - - override - version_override: - type: string - description: Version Override - required: false - -defaults: - run: - shell: bash - -jobs: - deploy: - name: 'Publish new version of public packages' - environment: npm deploy - timeout-minutes: 60 - runs-on: ubuntu-latest-16-cores-arm-open - - permissions: - contents: read - id-token: write - - steps: - - name: Check inputs - run: | - if [[ "${{ inputs.bump_type }}" != "override" ]] && ! [[ -z "${{ inputs.version_override }}" ]]; then - echo "ERROR You must set the Bump Type to 'override' if you supply a custom version number override." - exit 1 - fi - - name: Generate GH token - id: generate_token - uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92 - with: - app_id: ${{ secrets.HUPPY_APP_ID }} - private_key: ${{ secrets.HUPPY_APP_PRIVATE_KEY }} - - - name: Check out code - uses: actions/checkout@v6 - with: - persist-credentials: false - token: ${{ steps.generate_token.outputs.token }} - - - name: Configure git credentials - run: git config --global url."https://x-access-token:${{ steps.generate_token.outputs.token }}@github.com/".insteadOf "https://github.com/" - - - name: Check branch - run: | - if [[ "$(git rev-parse --abbrev-ref HEAD)" != "production" ]]; then - echo "ERROR You must be on the production branch to publish a new version." - exit 1 - fi - - - name: Run our setup - uses: ./.github/actions/setup - - - name: Publish - run: | - git config --global user.name 'huppy-bot[bot]' - git config --global user.email '128400622+huppy-bot[bot]@users.noreply.github.com' - if [[ "${{ inputs.bump_type }}" == "override" ]]; then - yarn tsx ./internal/scripts/publish-new.ts --bump ${{ inputs.version_override }} - else - yarn tsx ./internal/scripts/publish-new.ts --bump ${{ inputs.bump_type }} - fi - env: - GH_TOKEN: ${{ steps.generate_token.outputs.token }} - R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} - R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} - TLDRAW_BEMO_URL: https://demo.tldraw.xyz - - - name: Notify Discord on failure - if: failure() - uses: ./.github/actions/discord-fail-notify - with: - webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - - publish_templates: - name: Publishes code templates to separate repositories - uses: tldraw/tldraw/.github/workflows/publish-templates.yml@main - secrets: - HUPPY_PRIVATE_KEY: ${{ secrets.HUPPY_PRIVATE_KEY }} - HUPPY_APP_ID: ${{ vars.HUPPY_APP_ID }} - DISCORD_DEPLOY_WEBHOOK_URL: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - needs: [deploy] diff --git a/.github/workflows/publish-patch.yml b/.github/workflows/publish-patch.yml deleted file mode 100644 index 45bc36cef034..000000000000 --- a/.github/workflows/publish-patch.yml +++ /dev/null @@ -1,81 +0,0 @@ -name: Publish patch release -# This bumps the patch version, updates the changelogs in the release branch only, publishes a GitHub release, and publishes the packages to npm. - -# Prevent more than one non-canary npm publishing job from running at the same time -concurrency: - group: npm-publish - -# Package publishing is manually triggered on github actions dashboard -on: - push: - branches: - - 'v*.*.x' - -defaults: - run: - shell: bash - -jobs: - deploy: - name: Publish patch release - environment: npm deploy - timeout-minutes: 60 - runs-on: ubuntu-latest-16-cores-arm-open - outputs: - is_latest_version: ${{ steps.publish_step.outputs.is_latest_version }} - - permissions: - contents: read - id-token: write - - steps: - - name: Generate GH token - id: generate_token - uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92 - with: - app_id: ${{ secrets.HUPPY_APP_ID }} - private_key: ${{ secrets.HUPPY_APP_PRIVATE_KEY }} - - - name: Check out code - uses: actions/checkout@v6 - with: - persist-credentials: false - token: ${{ steps.generate_token.outputs.token }} - - - name: Configure git credentials - run: git config --global url."https://x-access-token:${{ steps.generate_token.outputs.token }}@github.com/".insteadOf "https://github.com/" - - - name: Prepare repository - # Fetch full git history and tags for auto - run: git fetch --unshallow --tags - - - name: Run our setup - uses: ./.github/actions/setup - - - name: Publish - id: publish_step - run: | - git config --global user.name 'huppy-bot[bot]' - git config --global user.email '128400622+huppy-bot[bot]@users.noreply.github.com' - yarn tsx ./internal/scripts/publish-patch.ts - env: - GH_TOKEN: ${{ steps.generate_token.outputs.token }} - R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} - R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} - TLDRAW_BEMO_URL: https://demo.tldraw.xyz - - - name: Notify Discord on failure - if: failure() - uses: ./.github/actions/discord-fail-notify - with: - webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - - publish_templates: - name: Publishes code templates to separate repositories - uses: tldraw/tldraw/.github/workflows/publish-templates.yml@main - if: ${{ needs.deploy.outputs.is_latest_version == 'true' }} - secrets: - HUPPY_PRIVATE_KEY: ${{ secrets.HUPPY_PRIVATE_KEY }} - HUPPY_APP_ID: ${{ vars.HUPPY_APP_ID }} - DISCORD_DEPLOY_WEBHOOK_URL: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} - needs: deploy diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 000000000000..ecd022f5dd68 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,280 @@ +name: Publish SDK packages + +on: + push: + branches: + - main + - production + - 'v*.*.x' + pull_request: + types: [labeled] + workflow_dispatch: + inputs: + publish_type: + type: choice + description: What to publish + required: true + default: manual + options: + - manual + - new + version: + description: Version to republish (manual only) + required: false + bump_type: + type: choice + description: Version bump type (new release only) + required: false + default: minor + options: + - minor + - major + - override + version_override: + type: string + description: Version override (new release only) + required: false + +defaults: + run: + shell: bash + +permissions: + contents: read + +jobs: + remove-label: + name: Remove the publish-packages label + if: | + github.event_name == 'pull_request' && + github.event.label.name == 'publish-packages' && + github.event.pull_request.head.repo.full_name == github.repository + runs-on: ubuntu-latest + permissions: + contents: read + issues: write + + steps: + - name: Remove the publish-packages label + uses: actions-ecosystem/action-remove-labels@v1 + with: + labels: publish-packages + + publish: + name: Publish SDK packages + if: | + github.event_name != 'pull_request' || + ( + github.event.label.name == 'publish-packages' && + github.event.pull_request.head.repo.full_name == github.repository + ) + environment: npm deploy + timeout-minutes: 60 + runs-on: ubuntu-latest-16-cores-arm-open + concurrency: + group: ${{ (github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/v')) && 'npm-publish' || format('npm-publish-{0}', github.run_id) }} + + permissions: + contents: read + id-token: write + + outputs: + mode: ${{ steps.publish_mode.outputs.mode }} + version: ${{ steps.version.outputs.value }} + is_latest_version: ${{ steps.publish.outputs.is_latest_version }} + + steps: + - name: Determine publish mode + id: publish_mode + env: + EVENT_NAME: ${{ github.event_name }} + EVENT_LABEL_NAME: ${{ github.event.label.name }} + REF: ${{ github.ref }} + REF_NAME: ${{ github.ref_name }} + DISPATCH_PUBLISH_TYPE: ${{ inputs.publish_type }} + DISPATCH_VERSION: ${{ inputs.version }} + DISPATCH_BUMP_TYPE: ${{ inputs.bump_type }} + DISPATCH_VERSION_OVERRIDE: ${{ inputs.version_override }} + run: | + mode= + bemo_url=https://demo.tldraw.xyz + use_huppy=false + + case "$EVENT_NAME" in + push) + if [[ "$REF" == "refs/heads/main" ]]; then + mode=canary + bemo_url=https://canary-demo.tldraw.xyz + elif [[ "$REF" == "refs/heads/production" ]]; then + mode=next + bemo_url=https://canary-demo.tldraw.xyz + elif [[ "$REF_NAME" =~ ^v[0-9]+\.[0-9]+\.x$ ]]; then + mode=patch + use_huppy=true + fi + ;; + pull_request) + if [[ "$EVENT_LABEL_NAME" == "publish-packages" ]]; then + mode=internal + bemo_url=https://canary-demo.tldraw.xyz + fi + ;; + workflow_dispatch) + mode="$DISPATCH_PUBLISH_TYPE" + if [[ "$mode" == "manual" || "$mode" == "new" ]]; then + use_huppy=true + fi + ;; + esac + + if [[ -z "$mode" ]]; then + echo "ERROR Could not determine publish mode for $EVENT_NAME on $REF." + exit 1 + fi + + if [[ "$mode" == "manual" && -z "$DISPATCH_VERSION" ]]; then + echo "ERROR You must provide a version when manually republishing packages." + exit 1 + fi + + if [[ "$mode" == "new" ]]; then + if [[ "$REF_NAME" != "production" ]]; then + echo "ERROR You must be on the production branch to publish a new version." + exit 1 + fi + if [[ "$DISPATCH_BUMP_TYPE" != "minor" && "$DISPATCH_BUMP_TYPE" != "major" && "$DISPATCH_BUMP_TYPE" != "override" ]]; then + echo "ERROR New releases must use a minor, major, or override bump type." + exit 1 + fi + if [[ "$DISPATCH_BUMP_TYPE" != "override" && -n "$DISPATCH_VERSION_OVERRIDE" ]]; then + echo "ERROR You must set the bump type to override if you supply a custom version number override." + exit 1 + fi + if [[ "$DISPATCH_BUMP_TYPE" == "override" && -z "$DISPATCH_VERSION_OVERRIDE" ]]; then + echo "ERROR You must supply a version override when using the override bump type." + exit 1 + fi + fi + + { + echo "mode=$mode" + echo "bemo_url=$bemo_url" + echo "use_huppy=$use_huppy" + } >> "$GITHUB_OUTPUT" + + - name: Generate GH token + id: generate_token + if: steps.publish_mode.outputs.use_huppy == 'true' + uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92 + with: + app_id: ${{ secrets.HUPPY_APP_ID }} + private_key: ${{ secrets.HUPPY_APP_PRIVATE_KEY }} + + - name: Check out code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + persist-credentials: ${{ steps.publish_mode.outputs.use_huppy != 'true' }} + token: ${{ (steps.publish_mode.outputs.use_huppy == 'true' && steps.generate_token.outputs.token) || github.token }} + + - name: Configure git credentials + if: steps.publish_mode.outputs.use_huppy == 'true' + run: | + git config --global url."https://x-access-token:${{ steps.generate_token.outputs.token }}@github.com/".insteadOf "https://github.com/" + git config --global user.name 'huppy-bot[bot]' + git config --global user.email '128400622+huppy-bot[bot]@users.noreply.github.com' + + - name: Run our setup + uses: ./.github/actions/setup + + - name: Publish + id: publish + env: + GH_TOKEN: ${{ (steps.publish_mode.outputs.use_huppy == 'true' && steps.generate_token.outputs.token) || github.token }} + R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }} + R2_ACCESS_KEY_SECRET: ${{ secrets.R2_ACCESS_KEY_SECRET }} + TLDRAW_BEMO_URL: ${{ steps.publish_mode.outputs.bemo_url }} + TLDRAW_VERSION_STRING: ${{ inputs.version }} + PUBLISH_MODE: ${{ steps.publish_mode.outputs.mode }} + BUMP_TYPE: ${{ inputs.bump_type }} + VERSION_OVERRIDE: ${{ inputs.version_override }} + run: | + case "$PUBLISH_MODE" in + canary | internal | next) + yarn tsx ./internal/scripts/publish-prerelease.ts "$PUBLISH_MODE" + ;; + patch) + yarn tsx ./internal/scripts/publish-patch.ts + ;; + manual) + yarn tsx ./internal/scripts/publish-manual.ts + ;; + new) + bump="${BUMP_TYPE:-minor}" + if [[ "$bump" == "override" ]]; then + bump="$VERSION_OVERRIDE" + fi + yarn tsx ./internal/scripts/publish-new.ts --bump "$bump" + ;; + *) + echo "ERROR Unknown publish mode: $PUBLISH_MODE" + exit 1 + ;; + esac + + - name: Get published version + id: version + run: echo "value=$(jq -r .version ./packages/tldraw/package.json)" >> "$GITHUB_OUTPUT" + + - name: Generate tldraw-desktop token + if: steps.publish_mode.outputs.mode == 'next' + id: generate_desktop_token + uses: actions/create-github-app-token@v2 + with: + app-id: ${{ vars.HUPPY_APP_ID }} + private-key: ${{ secrets.HUPPY_PRIVATE_KEY }} + owner: tldraw + repositories: tldraw-desktop + + - name: Notify tldraw-desktop + if: steps.publish_mode.outputs.mode == 'next' + run: | + curl -X POST \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer ${{ steps.generate_desktop_token.outputs.token }}" \ + https://api.github.com/repos/tldraw/tldraw-desktop/dispatches \ + -d '{"event_type":"tldraw-release","client_payload":{"version":"${{ steps.version.outputs.value }}","tag":"next"}}' + + - name: Notify Discord on failure + if: failure() + uses: ./.github/actions/discord-fail-notify + with: + webhook-url: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} + + comment: + name: Tell user released version + if: needs.publish.outputs.mode == 'internal' + needs: publish + runs-on: ubuntu-latest + + permissions: + contents: read + issues: write + + steps: + - name: Tell user released version + uses: actions-ecosystem/action-create-comment@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + body: | + Published version ${{ needs.publish.outputs.version }} to npm. + + publish_templates: + name: Publishes code templates to separate repositories + uses: tldraw/tldraw/.github/workflows/publish-templates.yml@main + if: needs.publish.outputs.mode == 'new' || ((needs.publish.outputs.mode == 'patch' || needs.publish.outputs.mode == 'manual') && needs.publish.outputs.is_latest_version == 'true') + secrets: + HUPPY_PRIVATE_KEY: ${{ secrets.HUPPY_PRIVATE_KEY }} + HUPPY_APP_ID: ${{ vars.HUPPY_APP_ID }} + DISCORD_DEPLOY_WEBHOOK_URL: ${{ secrets.DISCORD_DEPLOY_WEBHOOK_URL }} + needs: publish diff --git a/RELEASES.md b/RELEASES.md index 32cb5ae68f24..81d476e5e109 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -10,17 +10,12 @@ Unlike many JavaScript packages distributed on [NPM](https://www.npmjs.com/), th ## How to publish a new major or minor release -New cadence releases are published from `main`. You trigger a release manually by running the workflow defined in `publish-new.yml`. +New cadence releases are published from `production`. You trigger a release manually by running the workflow defined in `publish.yml`. -1. Go [here](https://github.com/tldraw/tldraw/actions/workflows/publish-new.yml) and click the 'Run workflow' button. -2. Fill out the form that appears. You can leave the defaults as they are if you want to publish a new 'minor' release. If you want to publish a new 'major' release, select that option from the dropdown. -3. If you need to put the repo in 'prerelease' mode you can select the override option and provide a version number with a prerelease tag, like `3.4.0-rc.1`. - - This is useful for providing a period of time for both us and our users to test a new release before it receives the `latest` tag on npm. - - After switching into prerelease mode, any further 'minor' or 'major' releases will only increment the prerelease tag, like `3.4.0-rc.2`, `3.4.0-rc.3`, etc. - - When you are ready to publish the final release, you can switch back to the `latest` tag by selecting the override option and providing a version number without a prerelease tag, like `3.4.0`. +1. Go [here](https://github.com/tldraw/tldraw/actions/workflows/publish.yml), select the `production` branch, and click the 'Run workflow' button. +2. Set the publish type to `new`. +3. Fill out the form that appears. You can leave the defaults as they are if you want to publish a new 'minor' release. If you want to publish a new 'major' release, select that option from the dropdown. +4. If you need to publish an exact version number, select the override option and provide the version number, like `3.4.0`. When you click the 'run' button after selecting how to bump the version number, the github action will do the following things: @@ -28,7 +23,7 @@ When you click the 'run' button after selecting how to bump the version number, - Update the changelog. - Create a new release on github with the release notes from the changelog entry. - Publish the new packages to npm. -- Create a new release branch for the new version. e.g. for version `3.4.0` it will create a branch called `v3.4.x`. (this is not done for prerelease versions) +- Create a new release branch for the new version. e.g. for version `3.4.0` it will create a branch called `v3.4.x`. ## How to publish a new patch release