diff --git a/AGENTS.md b/AGENTS.md index 9c3931a4..8579b31b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -193,7 +193,11 @@ generated page already. The site is versioned. `writerside.cfg` is generated for every language and carries the version from `package.json`, so the header names the release it was -built from, and `buildprofiles.xml` points the switcher at `help-versions.json` +built from. That line ends with an `x-release-please-version` annotation and the +five files are listed as `extra-files` in `release-please-config.json`, because +`release-please` would otherwise bump the version and leave the configurations a +release behind — which fails `npm run docs:check` on `main` and takes the deploy +with it. `buildprofiles.xml` points the switcher at `help-versions.json` at the site root. The deploy publishes each build twice — at the root as the current version, and under `//` as an archive — keeping the zips in a `docs-archive` branch, because Pages replaces everything it serves on every @@ -211,8 +215,9 @@ after all five builds sit in one directory — that is when it can know which pages exist in which language. The languages, and every label around the prose, are declared in -`scripts/docs/languages.mjs`. Adding a language is a change to that file and a -new matrix entry in `.github/workflows/docs.yml`; the rest follows. +`scripts/docs/languages.mjs`. Adding a language is a change to that file, a new +matrix entry in `.github/workflows/docs.yml` and its `writerside.cfg` in the +`extra-files` of `release-please-config.json`; the rest follows. ## 7. Parity is not attributed diff --git a/docs/writerside-de/writerside.cfg b/docs/writerside-de/writerside.cfg index ce74fe9e..84d70024 100644 --- a/docs/writerside-de/writerside.cfg +++ b/docs/writerside-de/writerside.cfg @@ -5,5 +5,5 @@ - + diff --git a/docs/writerside-fr/writerside.cfg b/docs/writerside-fr/writerside.cfg index ce74fe9e..84d70024 100644 --- a/docs/writerside-fr/writerside.cfg +++ b/docs/writerside-fr/writerside.cfg @@ -5,5 +5,5 @@ - + diff --git a/docs/writerside-ru/writerside.cfg b/docs/writerside-ru/writerside.cfg index ce74fe9e..84d70024 100644 --- a/docs/writerside-ru/writerside.cfg +++ b/docs/writerside-ru/writerside.cfg @@ -5,5 +5,5 @@ - + diff --git a/docs/writerside-uk/writerside.cfg b/docs/writerside-uk/writerside.cfg index ce74fe9e..84d70024 100644 --- a/docs/writerside-uk/writerside.cfg +++ b/docs/writerside-uk/writerside.cfg @@ -5,5 +5,5 @@ - + diff --git a/docs/writerside/writerside.cfg b/docs/writerside/writerside.cfg index ce74fe9e..84d70024 100644 --- a/docs/writerside/writerside.cfg +++ b/docs/writerside/writerside.cfg @@ -5,5 +5,5 @@ - + diff --git a/release-please-config.json b/release-please-config.json index e0257e19..697a7858 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -4,7 +4,14 @@ ".": { "release-type": "node", "package-name": "apps-script-utils", - "changelog-path": "CHANGELOG.md" + "changelog-path": "CHANGELOG.md", + "extra-files": [ + "docs/writerside/writerside.cfg", + "docs/writerside-ru/writerside.cfg", + "docs/writerside-uk/writerside.cfg", + "docs/writerside-de/writerside.cfg", + "docs/writerside-fr/writerside.cfg" + ] } } } diff --git a/scripts/docs/site.mjs b/scripts/docs/site.mjs index 9ae6d3a3..82f3749a 100644 --- a/scripts/docs/site.mjs +++ b/scripts/docs/site.mjs @@ -34,6 +34,14 @@ function widget(language) { const ARTWORK = "https://darynamikhailenko.com/?utm_source=docs&utm_medium=footer&utm_campaign=apps-script-utils&utm_content=banner-artist-credit"; +/** + * The version on the instance line carries the `x-release-please-version` + * annotation, because `release-please` bumps `package.json` without knowing + * that five generated files repeat the version it writes. The annotation is + * what its generic updater looks for, so the release pull request rewrites + * these configurations along with the version, and the check that compares the + * generated files to the sources still passes once the release lands. + */ export function writersideCfg(version) { return ` @@ -42,7 +50,7 @@ export function writersideCfg(version) { - + `; }