Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translations update from Weblate #1527

Conversation

weblate-fpf
Copy link

Translations update from Weblate for SecureDrop/SecureDrop Client.

Current translation status:

Weblate translation status

@weblate-fpf weblate-fpf requested a review from a team as a code owner June 22, 2022 18:05
@cfm
Copy link
Member

cfm commented Jun 22, 2022

Per #1516 (comment), note that this diff still shows some flapping newlines, because this pull request doesn't contain any new commits from Weblate's .po exporter. I think the path of least resistance is to let the flapping resolve in subsequent commits, whether in this or a future pull request from Weblate.

@weblate-fpf weblate-fpf force-pushed the weblate-securedrop-securedrop-client branch 27 times, most recently from 58299da to 099b93f Compare June 27, 2022 19:10
@gonzalo-bulnes
Copy link
Contributor

gonzalo-bulnes commented Jun 27, 2022

@cfm Should we squash those (or most of those that don't have multiple authors) commits, and sign the result after visual inspection? I think I'd be keen to doing so, what do you think?

weblate and others added 10 commits July 5, 2022 20:22
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translated using Weblate (Icelandic)

Currently translated at 100.0% (94 of 94 strings)

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Sveinn í Felli <[email protected]>
Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/is/
Translation: SecureDrop/SecureDrop Client
Currently translated at 100.0% (94 of 94 strings)

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Co-authored-by: tekrei <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/tr/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translated using Weblate (Italian)

Currently translated at 12.7% (12 of 94 strings)

Added translation using Weblate (Italian)

Co-authored-by: Claudio Arseni <[email protected]>
Co-authored-by: Cory Francis Myers <[email protected]>
Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/it/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (94 of 94 strings)

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Co-authored-by: ff98sha <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/zh_Hans/
Translation: SecureDrop/SecureDrop Client
Currently translated at 100.0% (94 of 94 strings)

Translated using Weblate (Portuguese (Portugal))

Currently translated at 100.0% (94 of 94 strings)

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Weblate <[email protected]>
Co-authored-by: deeplow <[email protected]>
Co-authored-by: notmuchtohide <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/pt_PT/
Translation: SecureDrop/SecureDrop Client
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translated using Weblate (Swedish)

Currently translated at 100.0% (94 of 94 strings)

Added translation using Weblate (Swedish)

Co-authored-by: Erik Moeller <[email protected]>
Co-authored-by: Jonas Waga <[email protected]>
Co-authored-by: Weblate <[email protected]>
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/sv/
Translation: SecureDrop/SecureDrop Client
Updated by "Squash Git commits" hook in Weblate.

Translation: SecureDrop/SecureDrop Client
Translate-URL: https://weblate.securedrop.org/projects/securedrop/securedrop-client/
@weblate-fpf weblate-fpf force-pushed the weblate-securedrop-securedrop-client branch from af6cf43 to 14ea993 Compare July 5, 2022 20:22
@gonzalo-bulnes gonzalo-bulnes self-requested a review July 5, 2022 22:44
@gonzalo-bulnes
Copy link
Contributor

gonzalo-bulnes commented Jul 5, 2022

@cfm and I had an offline chat about

Context

  1. Only the strings belonging to an enabled language are packaged with new releases
  2. Weblate will create a PR and keep it updated:
  • every time a string changes
  • making one commit per language
  • ensuring that if new changes come in, the commit always reflect them (on an hourly basis)

Decisions

  • Because only the strings belonging to an enabled language are packaged with new releases (1):

    • Incorrect translations in non-enabled languages are therefore not concerning.
    • We're comfortable integrating non-enabled languages on a regular basis.
  • Because enabled languages can be used by journalists after each release:

    • Enabled languages need to be reviewed for correctness before each release (more on that below)
    • 🍒 As long as that review is performed before release, we're comfortable integrating enabled languages on a regular basis as well.
    • 💡 If the level of support for any given language ever became insufficient to ensure correct translations are shipped for each release, we can disable support for that language.

Reviewing strings

Translated strings need to be reviewed for:

  • Validity: to make sure they don't break the localization system. (Weblate is unlikely to produce invalid strings / PO files.)
  • Correctness: to make sure they're accurate, with the following in mind:
    1. Inaccurate strings can be unsafe (e.g. HTML/JS injections, misleading instructions)
    2. Inaccurate strings can reduce accessibility (e.g. confusing grammar or terminology)
    • There can be overlap between both concerns (e.g. people can make dangerous mistakes if things are unintentionally unclear)

🍒 The safety aspect of the review happens in GitHub, either when Weblate opens a PR or at the very least before each release. The accessibility aspect of the review can happen in Weblate, in conversation with the localization team, but MUST be taken into account before each release to evaluate the level of support that each enabled language actually has.


Weblate/GitHub flow

  • Review and merge Weblate PRs whenever convenient, Weblate will keep its PRs updated, so there is usually no rush.
  • 🔥 Before each release, perform a thorough correctness review of all changes affecting supported languages.

Longer term vision

Localization is an integral part of building accessible user interfaces. We recognize that there is a collaboration opportunity between engineering/design/research (FPF) and the translation/localization team. This is a first step towards making it possible for translations to happen at any time during the release process, instead of only within a few days prior to each release.

We take this step as an incremental step towards a more collaborative integration with the translation/localization team, and aim at tightening those ties over time. 💚

Examples of what we'd like to achieve through closer collaboration:

  • Making sure translators have the clear context they need to understand the intention behind each copy decision. (e.g. Was "Reply" a noun or a verb in this context?)
  • Making sure the original copy (English) is refined to make as many translations as possible unambiguous / easier. (e.g. distinguishing different concepts that may originally be covered by the same word in English, if that makes the copy clearer and the translation less error-prone.)
  • Improving our ability to identify design changes to improve how the user interface can be localized effectively: e.g. buttons behavior when rendered in a RTL/LTR/mixed context, awareness of connotations attached to different icons in different locales etc.

CC: @tina-ux 🙂

@gonzalo-bulnes
Copy link
Contributor

With the above in mind, I'll take a fresh look at this PR and merge it.

(We also said it would be nice for all languages to use the commit message template that includes the language name, but that's not a blocker.)

@cfm
Copy link
Member

cfm commented Jul 5, 2022

Thanks for summarizing, @gonzalo-bulnes! I think everything you've outlined is consistent with the current overview, but feel free to make (or suggest) any changes there too.

@gonzalo-bulnes
Copy link
Contributor

I'd outline an explicit responsibility for the release team to verify the quality of the translations as much as possible. (Because the strings come otherwise from an external group of people, and we're the last opportunity to check them before they make their way to the journalists' workstations.) Let's think of the phrasing together. (And thanks for adding the reference here @cfm, it's great context!)

cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
@sssoleileraaa
Copy link
Contributor

Since translations are all disabled by default and MANIFEST.in doesn't have any included languages yet, this seems fine to pull into this upcoming release

Copy link
Contributor

@gonzalo-bulnes gonzalo-bulnes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, I forgot documenting my approving review!
I'm merging now 🙂

@gonzalo-bulnes gonzalo-bulnes merged commit 313bf80 into freedomofpress:main Jul 6, 2022
cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
cfm added a commit that referenced this pull request Jul 6, 2022
100% translated and approved as of #1527.
eloquence pushed a commit that referenced this pull request Jul 13, 2022
100% translated and approved as of #1527.
eloquence pushed a commit that referenced this pull request Jul 13, 2022
100% translated and approved as of #1527.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants