State the 0.x versioning rule and cut the 0.2.0 changelog - #37
Merged
Conversation
The Versioning section defined MAJOR, MINOR and PATCH without saying anything about 0.x, and those definitions read as 1.x semantics. That matters immediately: 0.2.0 is entirely breaking — the install path moved, the installer's argument interface is gone, extra.pdf_copyright is now an error — while the section defines MINOR as additive. A consumer deciding how carefully to review a bump would draw the opposite conclusion from the one intended. The project stays on 0.x because the contract that landed since 0.1.0 is self-tested against the samples but unproven by a consumer adopting it, and a breaking change during adoption is expected often enough that spending MAJOR on one would drain the signal MAJOR carries. The changelog entries are promoted unchanged; they were written as each change landed and are already scoped by area. Closes #31
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.
Closes #31. Last step before tagging
0.2.0; does not create the tag.README
The Versioning section defined MAJOR, MINOR, and PATCH but said nothing about
0.x, and those definitions read as1.xsemantics. That matters right now rather than hypothetically:0.2.0is entirely breaking — the install path moved fromdocs/.theme/todocs/theme/, the installer's--version/--templateinterface is gone,extra.pdf_copyrightis now an error — while the section defines MINOR as "adding a markdown extension, theme feature, or asset". A consumer deciding how carefully to review a bump pull request would draw exactly the wrong conclusion from the number.Four lines, per the discussion on #31: the rule, plus the clause saying the project stays on
0.xuntil consumers have adopted the contract. The earlier draft re-listed the contract's components and closed with a sentence about what1.0.0means; both are rationale the surrounding sections already carry.The three definitions themselves are unchanged.
CHANGELOG
Promotes
## Unreleasedto## [0.2.0] - 2026-08-08and adds the matching link reference. Entries are promoted unchanged — they were written as each change landed and are already scoped by area.This is a prerequisite for tagging, not a tidy-up:
release.ymlextracts release notes by grepping^## \[$VERSION\], so a tag pushed against a bare## UnreleasedproducesRelease for version 0.2.0as the entire release body — which is also what the Slack subscription would post.Verification
release.yml's extraction logic against the new heading: resolves## [0.2.0]at line 10, stops at## [0.1.0], and yields 149 lines — 29 entries under all four scoped subsections (manual,api-reference,shared,scripts).Unreleasedheading left behind.markdownlint-cli2passes; both files stay within MD013's 80 columns.sehkone/issue-34(Stop naming a release version outside the changelog #36): no conflict, though both touch README. Either order works.Adjust the date in the heading if the tag lands on a different day.