unstale

pypi / translate-toolkit

translate-toolkit

What changed in translate-toolkit 3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-25.

1 breaking3 new APIs and options2 performance1 behavior and defaults1 tooling15 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.6 on npm

translate-toolkit 323 changes

Breaking changes 1

  • Building the documentation now requires Python 3.14 or newer.

    3.20.1release notes

New APIs and options 3

  • Adds a Catalan language module that disables inappropriate acronym and capitalization checks.

    3.20.1release notes

  • Gettext PO supports an opt-in SPDX format for contributor comments while preserving historical years and unrelated copyright notices.

    3.20.0release notes

  • Exposes ordered term alternatives with IDs, administrative status, and scoped notes.

    3.20.0release notes

Performance 2

  • Restores embedded blocks in one pass to improve performance on large documents.

    3.20.1release notes

  • Indexes contexts by name to speed up parsing files with many contexts.

    3.20.1release notes

Behavior and default changes 1

  • When no exact language match exists, lookup falls back from bare language codes to default-country variants.

    3.20.0release notes

Tooling 1

  • Improves type annotations for translation checks and JSON storage.

    3.19.19release notes

Fixes and other changes 15

  • Preserves newlines when converting Chinese punctuation.

    3.20.1release notes

  • Exports every non-empty plural translation, pairing the first form with the singular source and subsequent forms with the plural source.

    3.20.1release notes

  • Checks plural translations against their matching source forms to avoid false positives in placeholder and other source-dependent checks.

    3.20.1release notes

  • Editing existing units preserves translations, XML metadata, plural keys, and retained YAML and TOML documents.

    3.20.0release notes

  • Preserves translations identical to the source before trying legacy lookup keys and avoids consuming duplicate translation occurrences.

    3.20.0release notes

  • Keeps lookup indexes in sync when editing sources, keys, and contexts.

    3.20.0release notes

  • Editing matched terms preserves existing XML language tags.

    3.20.0release notes

  • Editing alternatives preserves term IDs, metadata, and unrelated XML.

    3.20.0release notes

  • Usable terms remain available when another term is deprecated or the selected target language is missing.

    3.20.0release notes

  • Fixes copying wrapper children during XML generation.

    3.20.0release notes

  • Keeps direct single-variable format references with their plural units.

    3.19.19release notes

  • Reports missing stopword files correctly.

    3.19.19release notes

  • Rejects malformed messages with invalid lengths.

    3.19.19release notes

  • Corrects detection for script-specific and previously missing language codes.

    3.19.19release notes

  • XML-based formats now honor inherited xml:space attributes to preserve significant whitespace.

    3.19.19release notes