Title the release the way the previous ones were titled - #2102
Merged
Merged
Conversation
The workflow titled a draft "WinPython 2026-04b1", where every release for years has read "WinPython 2026-03 b3 of August 8th 2026". The tag is what URLs are built on and it does not change; the title is what people read on the releases page, and there is no reason for it to look new. So the title is now cycle, then the level after a space -- the tag runs them together, the title does not -- then the date with no comma, which is how seventeen of the last eighteen titles read. Six of those titles are reproduced letter for letter in the tests. Built in cycle_config.py rather than in the job's shell: ordinal dates are miserable to write in bash and impossible to test there. The date is the day the draft is opened, the only day a build knows about, and a cycle published much later can still have its title edited by hand -- a re-run leaves an existing release's title alone, so that edit survives. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MBk5k7WdpPvx4SUFyEk3U3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The workflow titled its draft
WinPython 2026-04b1, where every release for years has readWinPython 2026-03 b3 of August 8th 2026. The tag is what download URLs are built on and it does not change; the title is what people read on the releases page, and there is no reason for it to look new.The shape, taken from the releases themselves
Of the last eighteen titles, seventeen have no comma before the year, and the level is separated from the cycle by a space — the tag runs them together, the title does not. Six of those real titles are reproduced letter for letter in the tests:
Today's dispatch would produce
WinPython 2026-04 b1 of September 6th 2026.One thing deliberately not reproduced: a few older titles read
2026-02 of May 17thwith a double space, from concatenating an empty level. That is normalised, and there is a test for it.Where it is built
In
cycle_config.py, not in the job's shell. Ordinal dates are miserable to write in bash and impossible to test there; in Python the date is injectable, so the six titles above are asserted against pinned dates, and the11th/12th/13thexceptions get their own cases.The date is the day the draft is opened — the only day a build knows about. A cycle published much later can still have its title edited by hand, and that edit survives: a re-run adding a missing flavor leaves an existing release's title alone.
Testing
58 in the module, 206 in the full suite. Mutation-checked: putting the hardcoded
--title "WinPython $TAG"back fails exactly the test that says the title comes from the script.Note for the draft already open from run 34038479683: it was created before this, so it keeps the title
WinPython 2026-04b1. Editing it by hand or deleting the draft and re-running are both fine — a re-run will not retitle it.🤖 Generated with Claude Code
https://claude.ai/code/session_01MBk5k7WdpPvx4SUFyEk3U3