release: v1.8.0 — bilingual release notes pipeline - #104
Merged
Conversation
… fallback Release notes can now keep translations inside HTML comment blocks (<!-- lang:zh ... -->): the GitHub release page renders English only, while clients >=1.8.0 localize the same body on both desktop and web. Legacy fence format stays supported. For clients <=1.7.0 (fence parser only), the release workflow derives a fence-format variant for latest.json via scripts/notes-desktop-variant.mjs, so existing desktop installs keep getting localized update notes. The variant drops the "New Contributors" / "Full Changelog" tails, which the old cleanChangelog would otherwise let swallow a following fence line. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Summary
Prepares the v1.8.0 release (Oh My Pi agent support, #103) and ships the bilingual release-notes pipeline decided after v1.7.0:
localizeChangelogcomment-block support — translations can live inside HTML comment blocks (<!-- lang:zh ... -->): the GitHub release page renders English only, while desktop and web clients ≥1.8.0 localize the same body by UI language. Legacy fence format stays supported.scripts/notes-desktop-variant.mjsconverts comment blocks into the legacy fence format forlatest.jsononly (releaseBodyinput of tauri-action), so desktop clients ≤1.7.0 keep getting localized update notes today. Verified against tauri-action v0 source thatreleaseBodyfeeds onlylatest.json, never the GitHub release body.v1.8.0.mdrelease notes (English plain text + Chinese comment block), written before tagging this time.Per-client behavior for this release: desktop update dialog localizes (fence variant), GitHub page shows English only, web dialog shows English (old web clients read the GitHub body verbatim — localized from v1.9.0 onward once the comment-block parser is in users' hands).
Test plan
localizeChangelog: 9 unit tests incl. comment-block extraction, plain-text-as-English, legacy-fence compat; full vitest suite 265/265;tsc --noEmitclean.notes-desktop-variant.mjs: exercised on the real v1.8.0 body, a no-block body (passthrough), and a minimal body; output verified against the actual v1.7.0cleanChangelog/localizeChangelogcode — zh UI shows Chinese only, en UI shows English + What's Changed, no fence-swallowing.release.yml: YAML validated; single tauri-action step confirmed.After merge: tag
v1.8.0on main to trigger the release workflow.