Repository navigation
Year-based versions: 26.2.0-dev.17 as the version, shown as 26.2 Preview 17 - #157
Merged
Merged
Conversation
cogwright
force-pushed
the
agent/year-versions
branch
from
October 4, 2026 12:51
44d91e1 to
bf231a5
Compare
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.
irrl asked for year-based versions: 26.2.0-dev.17 as the version, shown as "26.2 Preview 17".
Numbering:
26.N.0(shown "26.N"), and a new year's first isYY.1. A fix to a release is26.2.1.26.2.0-dev.17.0.0.xthe next is26.1, and across a new year26.4.0-dev.30is followed by27.1.0-dev.31.What changed:
scripts/next-version.mjs(new): works out main's version from the last release tag and the commit count (nextVersion(lastTag, count, year)). It's plain Node, so the workflow runs it directly; the rule moved out of inline bash so it can be tested..github/workflows/release.yml, the Choose the version step and the two release titles. This doesn't change what the workflow can access: no new permissions, secrets or steps with write access. The release job's write permission and the prerelease job are as they were.node scripts/next-version.mjs "$tag" "$count", with the tag and count found as before (git describe --match 'v[0-9]*' --exclude '*-*',git rev-list --count). The version job's runner already has Node.v26.2orv26.2.0; both make 26.2.0.v), and prereleases "Glist Studio 26.2 Preview 17". The prerelease cleanup's tag pattern already matches the new versions.src/versions.ts(new):versionNameshows a release as "26.2" (a fix as "26.2.1") and a preview as "26.2 Preview 17", with the words from the window's language (versionPreview: Preview / Önizleme / Préversion). Anything else, such as the old0.0.10-dev.40("0.0.10 Preview 40"), reads as sensibly as it can.Where it shows:
rollbackPreview) is gone and releases still say "Release".Logs and Copy Debug Info keep the exact version.
The README describes the numbering.
Kept: the
von git tags. People never see it now (the studio and the release titles drop it), but the workflow's tag trigger, finding the last release and the updater's lookups all usevtags, as every existing tag does.Verified:
New
tests/versions.test.mjs(innpm test). It covers:v0.0.9,v26.1,v26.1.0, a fixv26.3.1, a new year, and no release;npm test,tsc, lint and the locale test pass.In the browser build, with the version set to
26.2.0-dev.17for the check (reverted): About shows "26.2 Preview 17", and "26.2 Önizleme 17" in Turkish.The title shell expressions give "Glist Studio 26.2 Preview 17" for
26.2.0-dev.17and "26.2.1 Preview 3" for a fix's preview.Not verified: a real run of the release workflow; that happens on the next push to main after merging. Its first preview will be
26.1.0-dev.<commits since v0.0.9>, which should look like "26.1 Preview N". The first year-based release is then taggedv26.1.🤖 Generated with Claude Code