From a5d89753837ce13fa49b97bdeb2a048b234d839e Mon Sep 17 00:00:00 2001 From: Ivan Dlugos Date: Wed, 24 Sep 2025 17:18:21 +0200 Subject: [PATCH 1/3] feat!: Change updater pr-strategy default to 'update' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BREAKING CHANGE: The default value for pr-strategy has been changed from 'create' to 'update'. Previously, the updater would create separate PRs for each dependency version. Now it maintains a single PR that gets updated with new versions. To preserve the previous behavior, explicitly set pr-strategy: create in your workflow configuration. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- CHANGELOG.md | 13 +++++++++++++ updater/README.md | 4 ++-- updater/action.yml | 2 +- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7a74b62a..d1c743b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,19 @@ ### Breaking Changes +Updater: The default value for `pr-strategy` has been changed from `create` to `update`. + +This change means the updater will now maintain a single PR that gets updated with new dependency versions (instead of creating separate PRs for each version). + +If you want to preserve the previous behavior of creating separate PRs, explicitly set `pr-strategy: create` in your workflow: + +```yaml +- uses: getsentry/github-workflows/updater@v3 + with: + # ... other inputs ... + pr-strategy: create # Add this to preserve previous behavior +``` + Updater and Danger reusable workflows are now composite actions ([#114](https://github.com/getsentry/github-workflows/pull/114)) To update your existing Updater workflows: diff --git a/updater/README.md b/updater/README.md index e3ecf612..633af218 100644 --- a/updater/README.md +++ b/updater/README.md @@ -129,8 +129,8 @@ jobs: * default: Dependencies * `pr-strategy`: How to handle PRs. Can be either of the following: - * `create` (default) - create a new PR for new dependency versions as they are released - maintainers may merge or close older PRs manually - * `update` - keep a single PR that gets updated with new dependency versions until merged - only the latest version update is available at any time + * `create` - create a new PR for new dependency versions as they are released - maintainers may merge or close older PRs manually + * `update` (default) - keep a single PR that gets updated with new dependency versions until merged - only the latest version update is available at any time * `target-branch`: Branch to use as base for dependency updates. Defaults to repository default branch if not specified. * type: string * required: false diff --git a/updater/action.yml b/updater/action.yml index 1f951066..461cfba3 100644 --- a/updater/action.yml +++ b/updater/action.yml @@ -28,7 +28,7 @@ inputs: pr-strategy: description: 'How to handle PRs - can be either "create" (create new PRs for each version) or "update" (keep single PR updated with latest version)' required: false - default: 'create' + default: 'update' target-branch: description: 'Branch to use as base for dependency updates. Defaults to repository default branch if not specified.' required: false From 78dd24a5f3044976932419c2763339549c37a48d Mon Sep 17 00:00:00 2001 From: Ivan Dlugos Date: Wed, 24 Sep 2025 17:21:28 +0200 Subject: [PATCH 2/3] docs: Update changelog with detailed instructions for pr-strategy change and workflow updates --- CHANGELOG.md | 97 ++++++++++++++++++++++++++-------------------------- 1 file changed, 49 insertions(+), 48 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d1c743b8..d4d695a4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,56 +4,57 @@ ### Breaking Changes -Updater: The default value for `pr-strategy` has been changed from `create` to `update`. +- Updater: The default value for `pr-strategy` has been changed from `create` to `update`. + This change means the updater will now maintain a single PR that gets updated with new dependency versions (instead of creating separate PRs for each version). + If you want to preserve the previous behavior of creating separate PRs, explicitly set `pr-strategy: create` in your workflow: -This change means the updater will now maintain a single PR that gets updated with new dependency versions (instead of creating separate PRs for each version). - -If you want to preserve the previous behavior of creating separate PRs, explicitly set `pr-strategy: create` in your workflow: - -```yaml -- uses: getsentry/github-workflows/updater@v3 - with: - # ... other inputs ... - pr-strategy: create # Add this to preserve previous behavior -``` - -Updater and Danger reusable workflows are now composite actions ([#114](https://github.com/getsentry/github-workflows/pull/114)) - -To update your existing Updater workflows: -```yaml -### Before - native: - uses: getsentry/github-workflows/.github/workflows/updater.yml@v2 + ```yaml + - uses: getsentry/github-workflows/updater@v3 with: - path: scripts/update-sentry-native-ndk.sh - name: Native SDK - secrets: - # If a custom token is used instead, a CI would be triggered on a created PR. - api-token: ${{ secrets.CI_DEPLOY_KEY }} - -### After - native: - runs-on: ubuntu-latest - steps: - - uses: getsentry/github-workflows/updater@v3 - with: - path: scripts/update-sentry-native-ndk.sh - name: Native SDK - api-token: ${{ secrets.CI_DEPLOY_KEY }} -``` - -To update your existing Danger workflows: -```yaml -### Before - danger: - uses: getsentry/github-workflows/.github/workflows/danger.yml@v2 - -### After - danger: - runs-on: ubuntu-latest - steps: - - uses: getsentry/github-workflows/danger@v3 -``` + # ... other inputs ... + pr-strategy: create # Add this to preserve previous behavior + ``` + + In case you have existing open PRs created with the `create` strategy, you will need to remove these old branches + manually as the new name would be a prefix of the old PRs, which git doesnt' allow. + +- Updater and Danger reusable workflows are now composite actions ([#114](https://github.com/getsentry/github-workflows/pull/114)) + + To update your existing Updater workflows: + ```yaml + ### Before + native: + uses: getsentry/github-workflows/.github/workflows/updater.yml@v2 + with: + path: scripts/update-sentry-native-ndk.sh + name: Native SDK + secrets: + # If a custom token is used instead, a CI would be triggered on a created PR. + api-token: ${{ secrets.CI_DEPLOY_KEY }} + + ### After + native: + runs-on: ubuntu-latest + steps: + - uses: getsentry/github-workflows/updater@v3 + with: + path: scripts/update-sentry-native-ndk.sh + name: Native SDK + api-token: ${{ secrets.CI_DEPLOY_KEY }} + ``` + + To update your existing Danger workflows: + ```yaml + ### Before + danger: + uses: getsentry/github-workflows/.github/workflows/danger.yml@v2 + + ### After + danger: + runs-on: ubuntu-latest + steps: + - uses: getsentry/github-workflows/danger@v3 + ``` ### Features From b5e3a71197ac8c0f7ab13ddc67da6252b200673d Mon Sep 17 00:00:00 2001 From: Ivan Dlugos Date: Wed, 24 Sep 2025 17:26:57 +0200 Subject: [PATCH 3/3] docs: Add pull request reference to breaking change for updater pr-strategy --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d4d695a4..b887608e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ ### Breaking Changes -- Updater: The default value for `pr-strategy` has been changed from `create` to `update`. +- Updater: The default value for `pr-strategy` has been changed from `create` to `update`. ([#124](https://github.com/getsentry/github-workflows/pull/124)) This change means the updater will now maintain a single PR that gets updated with new dependency versions (instead of creating separate PRs for each version). If you want to preserve the previous behavior of creating separate PRs, explicitly set `pr-strategy: create` in your workflow: