Closed Bug 1596535 Opened 3 months ago Closed 1 month ago

Add WebThings Gateway Project to Pontoon

Categories

(Mozilla Localizations :: Other, task)

task
Not set

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mstegeman, Assigned: CocoMo)

Details

Hey @mstegeman, thank you for submitting the bug. We'll assign this to a member of the l10n team to perform a "world ready" review and let you know.

As far as adding this to Pontoon is concerned, Pontoon reads l10n.toml project configuration files to know where to pull content from and for what languages it will push. Here's an example of such a file: https://github.com/mozilla-l10n/android-l10n/blob/master/mozilla-mobile/fenix/l10n.toml

I recommend creating the .toml file using just 'it' as your initial language list (we can add more when localizers request to localize the project from Pontoon), and requesting a review from @Pike.

I have a few initial questions to help us in the review:

  1. How will users select to have their UI in a different language? Is there a language switcher in place?
  2. How will localizers test their localizations? Is there a staging instance for WebThings currently?
  3. I see there's a voice component to the Gateway. How will you create a consistent user experience between the UI localization and the available language support in the voice component?

I've opened a PR with the l10n config: https://github.com/mozilla-iot/gateway/pull/2290

As to your questions:

  1. Yes, there's a language switcher in place.
  2. We have multiple staging instances for different purposes, but could create a new one specifically for this purpose.
  3. The voice component will probably be pulled out of the gateway into a separate add-on in the near future. It's actually disabled by default. If we end up keeping it in the gateway, the voice back-end is already l10n-ready. The language preference just has to be carried through.

Thanks for the info. I see that the toml file has been approved by Pike and merged. I'm assigning this project to Peiying. Pei is the l10n program manager for web apps and your primary point of contact for all things l10n.

I'll also ask her and flod to perform a source review on the en-US/main.ftl file and make recommendations for any changes to it to disambiguate strings for localizers to be successful in translating them correctly the first time around. As new PRs come up with string changes, please make sure the Pei is listed as a reviewer before they're merged and landed in the repo. This is a quality control measure we have in place to reduce risk downstream. She'll coordinate with you to define a review/landing cadence that's manageable.

Assignee: nobody → pmo
Flags: needinfo?(francesco.lodolo)

Please note that Pei will likely reach out to you in a couple of weeks to discuss cadences, automation, and the final steps toward getting the project set up in Pontoon.

Great, looking forward to moving ahead with the process!

Leaving the NI open. I'm going to do a review of the en-US strings, either in a pull request or listing issues here, and likely do a review of the Italian translation as a separate pass. I'll get in touch with Kathy on how to move forward once the project is enabled in Pontoon, if she wants to keep ownership of the Italian localization.

Having said that: it would have been really nice to not open up localization via GitHub in the meantime:

  • It makes the review harder, since changes need to be replicated in localizations.
  • It creates unnecessary tensions once we enable the project in Pontoon.
  • There's at least a language variant (fr-CA) that is not supported anywhere in the Mozilla ecosystem (and I'm not sure it should).

Once the project is enabled in Pontoon, any change to existing strings require new IDs. That's another reason why it was important to wait before adding new languages.

This document was written for Firefox, but it still has relevant info around Fluent
https://firefox-source-docs.mozilla.org/intl/l10n/l10n/fluent_review.html

en-US review: https://github.com/mozilla-iot/gateway/issues/2326
it review: https://github.com/mozilla-iot/gateway/pull/2327

The major problem seems to be the use of concatenations.

Flags: needinfo?(francesco.lodolo)

Thank you for the reviews and the information. I believe I've addressed all issues except for the concatenations, which I'll be starting on shortly. After those are fixed, are we safe to enable things in Pontoon?

I have 2 new translation PRs that were opened this weekend. Do you suggest I hold off on merging those until after Pontoon is enabled? Will the authors need to then input into Pontoon instead, or is there a way to easily import from GitHub?

One other question: do comments need to be carried over to each translation, or do they only need to exist in the primary source?

Flags: needinfo?(francesco.lodolo)

Thanks for the quick turn-around.

The next steps should be owned by the Localization PM in charge of the product. I'll double check with Jeff later this week, but I assume it'll still be Peiying.

Thank you for the reviews and the information. I believe I've addressed all issues except for the concatenations, which I'll be starting on shortly. After those are fixed, are we safe to enable things in Pontoon?

We still have to figure out the fr-CA issue. I don't think it makes sense to enable that language in Pontoon, but that's both a product and PM decision.

I think you still need to add Pontoon's bot to the repository with write access? I believe Matjaz will need to accept the invitation, since it's not in the mozilla organization.

Pontoon's bot: https://github.com/mozilla-pontoon

After that:

  • The project needs to be added to Pontoon stage to test that sync works. We could do that even before fixing the current issues.
  • If everything works, it just needs to be added to production. We will also need to send out information to localizers about the new project.
  • We should set up automatic review via CODEOWNERS for changes to the en-US FTL files. The PM needs to be added as contributor to the project (example).

I have 2 new translation PRs that were opened this weekend. Do you suggest I hold off on merging those until after Pontoon is enabled? Will the authors need to then input into Pontoon instead, or is there a way to easily import from GitHub?

At this point you should merge them before Pontoon is enabled, so they get picked up. It should also important to figure out a way to avoid folks opening PRs for that in the future, not sure I have suggestions sadly.

One other question: do comments need to be carried over to each translation, or do they only need to exist in the primary source?

No, Pontoon will carry them over from the source file. When you add new strings, you only add them to en-US, and Pontoon will write them (with comments) when there's a new translation available.

One thing that you should consider: the history will get noisy (example). Some projects don't want that, and make Pontoon commit in a branch. That means that updates on trunk are not exposed immediately for translation, and that developers need to manually merge the branch to master (back and forward).

Flags: needinfo?(francesco.lodolo)

(In reply to Francesco Lodolo [:flod] from comment #9)

Thanks for the quick turn-around.

The next steps should be owned by the Localization PM in charge of the product. I'll double check with Jeff later this week, but I assume it'll still be Peiying.

Yes, Peiying will give next steps once she returns from PTO.

Thank you for the reviews and the information. I believe I've addressed all issues except for the concatenations, which I'll be starting on shortly. After those are fixed, are we safe to enable things in Pontoon?

We still have to figure out the fr-CA issue. I don't think it makes sense to enable that language in Pontoon, but that's both a product and PM decision.

We're in the process of consolidating variants where unnecessary. We've successfully done this with Bengali, and are working on doing it for Spanish. I think the best treatment for fr-CA is to change the locale code to fr so that the wider French community can localize it.

Flags: needinfo?(pmo)

I think you still need to add Pontoon's bot to the repository with write access? I believe Matjaz will need to accept the invitation, since it's not in the mozilla organization.

I've added the bot as a collaborator with write access.

We should set up automatic review via CODEOWNERS for changes to the en-US FTL files.

Done.

The PM needs to be added as contributor to the project.

Done.

I have 2 new translation PRs that were opened this weekend. Do you suggest I hold off on merging those until after Pontoon is enabled? Will the authors need to then input into Pontoon instead, or is there a way to easily import from GitHub?

At this point you should merge them before Pontoon is enabled, so they get picked up. It should also important to figure out a way to avoid folks opening PRs for that in the future, not sure I have suggestions sadly.

Done.

We still have to figure out the fr-CA issue. I don't think it makes sense to enable that language in Pontoon, but that's both a product and PM decision.

We're in the process of consolidating variants where unnecessary. We've successfully done this with Bengali, and are working on doing it for Spanish. I think the best treatment for fr-CA is to change the locale code to fr so that the wider French community can localize it.

Ok, I've consolidated the two French translations into a single fr translation.

It's all set.

Status: NEW → RESOLVED
Closed: 1 month ago
Flags: needinfo?(pmo)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.