Skip to content

v16.0.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 08:48
· 128 commits to master since this release
6a7b095

TL;DR

Language codes become standard BCP 47 tags such as zh-CN, zh-TW and en-US, making Traditional Chinese a translation target of its own.

Breaking Changes

  • Language codes: stored data, AI settings and API output now use language-region tags (zh-CN, en-US, ja-JP) instead of bare codes (zh, en, ja). Aliases such as jp, cn and english are no longer accepted, and tw now means Akan, not Taiwan. Migration: let the release-phase migration run before the new pods start; clients that compare sourceLang, availableTranslations or targetLang against bare codes must map tags by language and script (Yohaku already ships this).
  • @mx-space/ai 1.0.0: normalizeLanguageCode and normalizeTargetLang are removed. Migration: switch to canonicalizeLanguageTag, assertLanguageTag and matchLanguage.

Highlights

Traditional Chinese is no longer folded into Simplified. Add zh-TW to the translation target languages and visitors browsing in Traditional Chinese receive a Traditional translation, while Simplified readers keep the original text. Every language code is generated by the runtime's own locale data, so no hand-written alias table can drift out of date.

Requests are matched by language and script, preferring the same region. A visitor asking for en-GB gets the en-US translation, zh-HK gets zh-TW, and zh-SG gets the Simplified original. Search, summaries, insights and narration follow the same rule, so regional browser settings no longer miss content that exists.

The admin AI overview shows one column per language even while rows written in the old format remain, and in-flight tasks line up with those columns. Language inputs in the admin validate and normalize what you type, rejecting codes that are not real languages.

Changes

Features

  • Unify language codes on BCP 47 language-region tags, with zh-TW as an independent translation target (#2894)

Bug Fixes

  • Regional language requests such as en-GB now find the matching search documents and narration source text (#2894)

Upgrade Notes

  • Migration 0047_language_tag_bcp47 rewrites existing language codes in place. Where an old and a new code collide on the same article (for example a zh and a zh-CN summary), the most recently written row is kept. It has no down migration; rolling back the code only makes old pods fall back to the original text.
  • Values the migration cannot map are left unchanged and reported with RAISE NOTICE.
  • Visitors browsing in Traditional Chinese no longer see the Simplified summary when no Traditional summary exists.
  • Release the matching Yohaku web and mobile versions together with this server release.

Full Changelog: v15.7.0...v16.0.0