How to use unreviewed translations in Openedx Sumac

Hi everyone!

I’m new here and newbie with OpenedX, and I’m using the Sumac with Tutor.

During the docker image creation the Atlas tool pulls the translation files from openedx/openedx-translations repo and the branch accordingly to the OpenedX revision (in my case open-release/sumac.2). But I realized that the translations are only the reviewed ones in Transifex, which is totally fine. I know that it’s possible to use another Github repo for customized translations according to this documentation in Tutor docs.

Also, I know that it’s possible to pull translated files with TX client and I suppose that openedx-translation repo is synchronized with “onlyreviewed” translations using the github actions.

With that said, I have some doubts:

  1. Is there a documented procedure to use the unreviewed translations? I could not find one.
  2. Is there a branch/revision in openedx-translation repo that has unreviewed translation that we can use?
  3. If using a fork from openedx-translations is the only option, is there any documentation that I can use?
  4. When pulling from Transifex (tx pull), which project is the correct one for Sumac: the openedx-translations-sumac or the openedx-translations?

I’m sorry if I was not clear at certain point. Let me know and I’m happy to clarify. And, apologize for many questions.

Hi @piglesias and welcome to the community! Great to have you here.

I’m hoping that @omar or @brian.smith can assist with your question.

1 Like

Hi @sarina,

Thank you for the warm welcome!

I noticed that @omar and @brian.smith are key persons in the translation process. Thanks for the indication!

Best regards!

Hi @piglesias, I’ve discussed the issue with @brian.smith and this is our response so far.

Before I go to the resposne, my question is why? and for which language?

Do you lack the required permissions to mark the translations as reviewed? I that’s the case, we can fix that and provide you with the proper permissions.

Do you have a time problem with getting the translation reviewed? Did you try Machien Transaltions or even better Transifex AI translations? Both are supposed to save time and get your translations reviewed as quickly as possible.

If you’re the only maintainer of the translations of your language e.g. Latvian has only one maintainer, I recommend considering the option of marking the translations as reviewed, all of them, at once. While it’s not optimal, it’ll get you to your goal you can still later fix any issues that’s found. This is not an option in popular languages such as Arabic or Spanish because these languages goes under more strict quality assurance processes.

Do you try to set ATLAS_REVISION: open-release/sumac.master? This always gets you the latest version instead of the time-frozen open-release/sumac.2.

Now to your questions:

Is there a documented procedure to use the unreviewed translations? I could not find one.

[Brian] There is not. Unreviewed translations are not pulled into the openedx-translations repo, which is where the rest of the repos get translations from.

Is there a branch/revision in openedx-translation repo that has unreviewed translation that we can use?

[Brian] No.

If using a fork from openedx-translations is the only option, is there any documentation that I can use?

Yes, but you’ll need to fully manage the translations and use tx pull manually. Which is an involved process that requires expertise and we’ll not be able to support it.

Becasue the github integration is set up on the transifex side to pull translations from the openedx transifex account into the openedx-translations repo in the openedx GH org. Forking will not allow you to edit the configurations, therefore a hard fork with hand written tx pull is the only option.

When pulling from Transifex (tx pull), which project is the correct one for Sumac: the openedx-translations-sumac or the openedx-translations?

openedx-translations-sumac - but I’m not sure what they’re doing with tx pull The best option would be to get the unreviewed translations reviewed.

If that’s not possible and you want to use a fork of openedx-translations, then your best bet is to just make sure the files in the branch they’re pulling from have the translations they want. The fork use case we’ve discussed in the past has been “there’s an upstream translation that I want to replace” - not "upstream is missing translations."So I guess I’d like to say: “Pulling unreviewed translations is not something we support, and not something we plan to add support for.”

Please consider joining the Tranlations Working Group, share your email here and we’ll send you an invite to discuss getting translations reviewed.

If you end up pulling unreviewed translations to a fork, kindly document how you got there did so just in case it’s useful for someone esle.

Hi @omar,

First of all, thank you for the thorough answer! I really appreciate!

About why and which language, I should have mentioned previously. Sorry for that! The languages are Portuguese (Brazil) and Spanish (LA) (just for fixes) and the reasons are basically time of availability in the repo and possibility to fix faster when find something wrong. Let me explain.

It takes longer to get the reviewed translations available in the repo. The ratio of reviewers/translators is low (in pt_BR, es_419 is better) and to mark as reviewed, I believe the person needs to have some knowledge of the platform, which I still don’t have, and how those translated text should appear.

And the second reason is faster fix when find a wrong translation. As soon as I see the error, I go to Transifex, select the correct resource and fix it. But it will be available in the repo only after the review, which I believe guarantees the quality of the translation, but sometimes can be frustrating to the final user.

Now, answering your questions:

Q: Do you lack the required permissions to mark the translations as reviewed?
A: I don’t have a reviewer permission. But if it’s ok to grant me this permission, please, let me know the correct process to avoid any mistakes from my side.

Q: Do you have a time problem with getting the translation reviewed?
A: As I mentioned previously, it takes longer to have it in the repo. Don’t get me wrong here. I don’t want to push the reviewers job. They have their own workflow and probably I wouldn’t do faster.

Q: Did you try Machien Transaltions or even better Transifex AI translations? Both are supposed to save time and get your translations reviewed as quickly as possible.
A: I saw the MT and the suggestions in the editor. Are you talking about those? Can these tools review the translations?

Q: Do you try to set ATLAS_REVISION: open-release/sumac.master? This always gets you the latest version instead of the time-frozen open-release/sumac.2.
A: No, I didn’t. Thanks for the information! But as I mentioned, I didn’t know exactly which branch to pull the translations if there is another one with unreviewed translations.

With all that said, I have some other doubts. Sorry to extend this discussion here.

  1. When translating, should I translate to openedx-translations or openedx-translations-sumac project? Now I’m translating in “openedx-translations-sumac”.
  2. If a translation is marked as reviewed, how can I change? Should I have the permission to do that? I have a situation where a translation in Spanish (LA) was marked as reviewed, but was wrong and was reporting error in the validation process before compilation. See this link.
  3. About plural, how to change a translation and include plural translations? I didn’t see this option in the editor. Should I have a permission too or only using tx push?
  4. What is the best approach to keep customized translations for customized pages? A forked repo? Could you share the documentation as Brian mentioned?

So, I ended up with a forked repo with the unreviewed translations. So, basically my workflow was:

  1. Fork the repo openedx/openedx-translations.
  2. Install the requirement tools for translation in a virtualenv.
  3. Uninstalled the transifex-client from the virtualenv to not conflict with new version of Transifex client.
  4. Install the new version of Transifex client.
  5. Configure the resources in the tx config file for openedx-translations-sumac project.
  6. Pull the unreviewed translations to the local repo
  7. Validate the translations using validate_translation_files.py script
  8. Fix all the errors reported by the validation script inside Transifex. Note that I’m using the web editor as I don’t want to mess things with tx push.
  9. Pull again to the local repo with all fixes.
  10. Push updates to the forked repo on Github.
  11. Set Atlas variables to point to my repo with specific branch.
  12. Build the images.

About joining the TWG, I’m already registered in Slack. Is there a specific channel?

If something is not clear, let me know and I’m happy to explain further.

Thanks again for all the explanations!

Yes. That’s correct. Platform knowledge is required.

Sure, please share your transifex username and I’ll add you as a reviewer.

Please note that most languages don’t have dedicated reviewers. So it’s not like waiting can make the progress better. The best way to get it reviewed is to start today :slight_smile:

No, I’m sorry. Those helps with automating translations, not reviews.

There’s no such branch unfortunately.

Focus on the release you’d like to deploy. Later on, aim to have openedx-translations fully translated so new releases uses those translations.

Yes, you need reviewers permission to set or undo a review.

It’s unclear what the questions is about. Please share an example that’s concerning you.

Yes please. tx push use is discouraged.

#wg-translations that’s were we post.

Sounds like a good start. We encourage you to review the project since it’s an opensource project and people would likely reuse your translations if done on Transifex.

Hi @omar,

Thank you for your responses. That’s clarify most of my doubts! I still have more technical questions in the translation process that can be discussed in Slack. See below my comments:

Sure, please share your transifex username and I’ll add you as a reviewer.

My username in Transifex is piglesias.

Focus on the release you’d like to deploy. Later on, aim to have openedx-translations fully translated so new releases uses those translations.

Ok.

It’s unclear what the questions is about. Please share an example that’s concerning you.

An example could be:

Singular: “You have 1 attempt” / Plural: “You have 2 attempts”
So you don’t have to include parenthesis to cope both situations like “You have 3 attempt(s)”. This causes alerts in the translation. How to include plural translations in the web editor? See an example in this link.

#wg-translations that’s were we post.

Great! I will ping you there.

Sounds like a good start. We encourage you to review the project since it’s an opensource project and people would likely reuse your translations if done on Transifex.

Sure! Today, I’m focusing more on fixing the translation issues, but I translate too when it’s possible.