From 2184bd79fae244cdb01cc46eb49b4a3238b8133c Mon Sep 17 00:00:00 2001 From: sehkone Date: Sat, 8 Aug 2026 14:15:22 +0900 Subject: [PATCH] State the 0.x rule and cut the 0.2.0 changelog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- CHANGELOG.md | 3 ++- README.md | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 063ce0c..fe920b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ Keep a Changelog change-type headings, so a consumer reads only the sections that affect its template. Version numbers follow the `MAJOR.MINOR.PATCH` policy described in [the README](README.md#versioning). -## Unreleased +## [0.2.0] - 2026-08-08 ### manual @@ -182,4 +182,5 @@ sections that affect its template. Version numbers follow the - Added release workflow to create GitHub Releases from tags using CHANGELOG.md. +[0.2.0]: https://github.com/aicers/docs-theme/tree/0.2.0 [0.1.0]: https://github.com/aicers/docs-theme/tree/0.1.0 diff --git a/README.md b/README.md index 1bc7551..a3ba378 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,11 @@ Templates are **not** versioned separately: one repository version covers all of them, and the vendored diff in a consumer's bump pull request shows whether that consumer is actually affected. +While the version is below `1.0.0`, a breaking change bumps MINOR rather +than MAJOR, and everything else bumps PATCH. The project stays on `0.x` +until the contract above has been proven by consumers actually adopting +it. + A release is only meaningful when the installed surface actually changed. The release workflow rejects a tag whose release surface — everything `fetch-theme.sh` installs, plus `fetch-theme.sh` itself — is byte-identical