Skip to content

Translation CI: Also include strings from the legacy branch

Merge Info

Related Issues

Backporting

Timeline

  • Immediate: patchset needed as soon as possible
  • Next Minor Stable Release: patchset that needs to be verified in nightly before backport
  • Eventually: patchset that needs to be verified in alpha before backport
  • No Backport (preferred): patchset for the next major stable

(Optional) Justification

  • Emergency security update: patchset fixes CVEs, 0-days, etc
  • Censorship event: patchset enables censorship circumvention
  • Critical bug-fix: patchset fixes a bug in core-functionality
  • Consistency: patchset which would make development easier if it were in both the alpha and release branches; developer tools, build system changes, etc
  • Sponsor required: patchset required for sponsor
  • Localization: typos and other localization changes that should be also in the release branch
  • Other: please explain

Merging

  • Merge to tor-browser - !fixups to tor-browser-specific commits, new features, security backports
  • Merge to base-browser - !fixups to base-browser-specific commits, new features to be shared with mullvad-browser, and security backports
    • NOTE: if your changeset includes patches to both base-browser and tor-browser please clearly label in the change description which commits should be cherry-picked to base-browser after merging

Issue Tracking

Review

Request Reviewer

  • Request review from an applications developer depending on modified system:
    • NOTE: if the MR modifies multiple areas, please /cc all the relevant reviewers (since gitlab only allows 1 reviewer)
    • accessibility : henry
    • android : clairehurst, dan
    • build system : boklm
    • extensions : ma1
    • firefox internals (XUL/JS/XPCOM) : jwilde, ma1
    • fonts : pierov
    • frontend (implementation) : henry
    • frontend (review) : donuts, richard
    • localization : henry, pierov
    • macOS : clairehurst, dan
    • nightly builds : boklm
    • rebases/release-prep : dan, ma1, pierov, richard
    • security : jwilde, ma1
    • signing : boklm, richard
    • updater : pierov
    • windows : jwilde, richard
    • misc/other : pierov, richard

Change Description

We add an option to the combine script to also search for a legacy branch, controlled by TRANSLATION_INCLUDE_LEGACY. If such a branch is found, then the strings from this branch are also combined with the strings from the development and stable branch.

Also, instead of using the tagger date to find the highest version branch, we use version ordering.

NOTE:

  1. Currently relies on the legacy -build1 tag including the word "legacy" in it's annotation (and no other -build1 tag should include this). Let me know if you choose a different key word.
  2. It should be safe to land this change before such a "legacy" branch exists. If no branch is found, the script will just silently continue as if TRANSLATION_INCLUDE_LEGACY was not specified.

How Tested

Ran the python combine-translation-versions.py with the script tweaked to use "alpha" instead of "legacy", and skipping the git fetch commands. Output was as expected.

NOTE: I would advise against running combine-translation-versions.py as-is in your development branch. The --filter and --depth fetches will mess with your remote settings in .git/config. It is recoverable but annoying.

Merge request reports