Added a 'filter-by-range' input to release-drafter to skip CalVer and Drupal-era tags. - #3097
Conversation
Release drafting resolved the previous release as the numerically highest one, so releases left behind by an earlier versioning scheme outranked the current ones. Added 'VORTEX_RELEASE_VERSION_FILTER' to constrain the candidates with a semver range, derived from 'VORTEX_RELEASE_VERSION_SCHEME' when unset.
…iable. The scheme switch is specific to this repository, so the 'filter-by-range' input is fenced behind 'VORTEX_DEV' with a literal range and the 'VORTEX_RELEASE_VERSION_FILTER' variable, its resolution step and the consumer-facing documentation are removed.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Team Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 10 included reviews per hour; 1 remains after this review. WalkthroughThe draft release notes workflow now restricts Release Drafter to versions from ChangesRelease Drafter filtering
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to The release-notes workflow will select prior 1.x releases while excluding CalVer and Drupal-era tags, producing the intended 1.42.0 draft range. No unresolved merge risk remains. Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
2 similar comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3097 +/- ##
==========================================
- Coverage 87.32% 86.97% -0.36%
==========================================
Files 108 101 -7
Lines 5161 4998 -163
Branches 49 3 -46
==========================================
- Hits 4507 4347 -160
+ Misses 654 651 -3 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
📖 Documentation preview for this pull request has been deployed to Netlify: https://6a9e57dedafe2b0b5c543731--vortex-docs.netlify.app This preview is rebuilt on every commit and is not the production documentation site. |
|
Code coverage (threshold: 90%) Per-class coverage |
This comment has been minimized.
This comment has been minimized.
2 similar comments
This comment has been minimized.
This comment has been minimized.
|
Code coverage (threshold: 90%) Per-class coverage |
Summary
The
Draft release notesstep in.github/workflows/draft-release-notes.ymlnow passes afilter-by-rangeinput of>=1.0.0 <7.0.0to release-drafter, restricting which published tags it considers when it resolves the previous release.release-drafter picks the previous release as the numerically highest tag after
semver.coerce(), so the CalVer tag25.10.0outranked the semver tag1.41.1and the workflow drafted25.11.0with a change list reaching back to November 2025.With the range applied,
1.41.1becomes the highest matching tag, so the next draft resolves to1.42.0with a change list starting at the correct previous release, and thefilter-by-rangeinput is wrapped in#;< VORTEX_DEV/#;> VORTEX_DEVfences so it never reaches a scaffolded consumer project.Before / After
Changes
.github/workflows/draft-release-notes.ymlgains onewith:input on the existingDraft release notesstep,filter-by-range: '>=1.0.0 <7.0.0', wrapped in#;< VORTEX_DEV/#;> VORTEX_DEVfences.The range keeps the
1.xsemver releases, drops the24.x/25.xCalVer releases, and also drops the Drupal-era7.x-1.13,8.x-1.14and9.x-1.15tags, which coerce to7.0.0,8.0.0and9.0.0and would otherwise still outrank1.41.1.The installer strips fenced lines when scaffolding a new project, so a consumer project's copy of
draft-release-notes.ymlis generated without this input and stays byte-identical to what it produces today. This is verified by the_baselineinstaller fixture, which contains neither the input nor the fence markers.The existing draft release
25.11.0falls outside the new range, so release-drafter creates a fresh draft rather than updating it; the stale25.11.0draft needs deleting manually.