From 370bceec7ee749b705f395b41b86a51eaeb16326 Mon Sep 17 00:00:00 2001 From: Cody Maffucci <46459665+Maffooch@users.noreply.github.com> Date: Thu, 30 Jul 2026 16:18:39 -0600 Subject: [PATCH] chore(ci): replace unmaintained release-drafter fork with upstream v7.5.1 This workflow pinned valentijnscholten/release-drafter, a fork whose only functional delta over upstream was a `previous-version` input. That input existed because upstream could not start a changeset from an arbitrary release, so a minor-to-minor changeset was not expressible. Upstream now covers that use case with `filter-by-range`, which restricts which past releases are eligible to be treated as the previous release by evaluating each tag with semver.satisfies(). Passing the previous minor tag exactly (e.g. '3.1.0') selects it as the start of the changeset, so the fork is no longer needed: filter-by-range: '*' -> 3.1.303 (most recent, previous behaviour) filter-by-range: '>=3.1.0 <3.2.0' -> 3.1.303 down to the newest 3.1.x filter-by-range: '3.1.0' -> 3.1.0 (minor-to-minor) The fork has also been frozen since 2021 and cannot parse the current config's category schema beyond ignoring it: its Joi schema validates with allowUnknown, so the `when:` keys added in #15264 are silently dropped and every category collapses to an empty label set. Its next run would have produced an ungrouped changelog. A `dry-run` input is added so the range can be confirmed without writing to a release draft. Unset inputs are safe: the action maps an empty string to undefined, so omitting `filter-by-range` keeps the previous behaviour. Verified with actionlint. The workflow file name is kept so the existing Actions run history stays associated; only the display name changes. --- .../workflows/release_drafter_valentijn.yml | 26 ++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release_drafter_valentijn.yml b/.github/workflows/release_drafter_valentijn.yml index 6226a633c05..752a3452a63 100644 --- a/.github/workflows/release_drafter_valentijn.yml +++ b/.github/workflows/release_drafter_valentijn.yml @@ -1,4 +1,4 @@ -name: Release Drafter Valentijn +name: Release Drafter (custom range) on: workflow_dispatch: @@ -8,21 +8,29 @@ on: The version of the next release that is being created or updated. This will override any version calculated by the release-drafter. required: false - previous-version: + filter-by-range: description: | - The version (tag_name) of the previous release to use when calculating changsets. - For bugfix releases this should be the latest patch release (i.e. 1.11.1) for normal/minor releases - this should be the latest minor release (i.e. 1.11.0) - This will override any version calculated by the release-drafter. + Semver range limiting which past releases may be picked as the previous release, + i.e. where the changeset starts. Evaluated per tag with node's semver.satisfies(). + For a minor-to-minor changeset, pass the previous minor tag exactly, e.g. '3.1.0'. + For changes since the last patch of the previous minor, pass a range, e.g. '>=3.1.0 <3.2.0'. + Leave empty to start from the most recent release. + required: false + dry-run: + description: | + Log what would be written instead of creating or updating the release draft. + Use this to confirm the changeset starts at the release you expect. required: false + default: 'false' jobs: update_release_draft: runs-on: ubuntu-latest steps: - - uses: valentijnscholten/release-drafter@f587de96a420b4b7f767d7eb12817926f18cad69 # master # TODO: not maintained anymore - missing part is maybe already solved in the upstream + - uses: release-drafter/release-drafter@4d75298e00d9e34c483e5ff8c68d0ea1c1940c1e # v7.5.1 with: - version: ${{github.event.inputs.version}} - previous-version: ${{github.event.inputs.previous-version}} + version: ${{ github.event.inputs.version }} + filter-by-range: ${{ github.event.inputs['filter-by-range'] }} + dry-run: ${{ github.event.inputs['dry-run'] }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}