Exiv2/exiv2

Localization file template update on crowdin

NorwayFun opened this issue · 20 comments

Hello,

Wanted to translate exiv2 to Georgian. Found project page on crowdin, read instructions and emailed Leonardo for adding language.
Language was added right away, but I was told to contact project mantainers to update .pot file on crowdin, because it's too old, so here I am.

BR, Temuri

P.S.
There is no "download po file", nor upload in crowdin menu. Maybe there is something to enable for it?

Hi @NorwayFun, I have now updated the exiv2.pot in #2945

Hello,
Thank you, but I cannot see it here https://crowdin.com/project/exiv2/activity-stream
Also, pot file upload functionality is still disabled.

No idea how crowdin works, that page is not maintained by the Exiv2 project AFAIK.

You might want to reach out to the contact person there... @lbschenkel

Basically the exiv2.pot file in the repo needs to be updated to reflect the source code, i.e., the strings needs to be extracted with gettext and the file committed. Once it's up-to-date, I can upload that to Crowdin so translators can translate those strings, and at some point the .po files with the translations can be downloaded and committed to the repo.

This is better automated, of course, but we can do it manually a few times until the workflow is understood by everyone.

@lbschenkel As I mentioned already, the template update has been done.

I was vacationing, so I'm not following very closely.

Now as a next step I can update the pot file in Crowdin, which will allow the (new) strings to be translated. I can do that myself but I'm wondering if somebody else wants to do that / see how it works, so we increase the bus factor to something slightly larger than 1?

Regarding the permissions, I'm more than happy to grant all the rights / relinquish ownership of the Crowdin project to the Exiv2 maintainers. I set this up myself but on request from @clanmills (see #1510). The original intent was always to put the maintainers in control and to (semi-)automate the workflow.

Now as a next step I can update the pot file in Crowdin, which will allow the (new) strings to be translated.

Please feel free to do so.

As for the rest, someone would need to step up as the Exiv2 L10n champion.

Uploaded exiv2.pot from 0.28.x branch to Crowdin. I wonder why we're only doing this for this branch, and not master too?

@NorwayFun: have fun translating

At some point in the future we should sync the translations back, meaning: I will download the .po files and make a PR against the project. I will let the maintainers decide when they want to do this (based on time or milestone), and I can put a reminder and submit a PR when that happens.

@lbschenkel Thanks much!
Just... there are 3 exiv2 pot files. which one should I translate, please?
Also, I cannot see "download/upload" option on crowdin.
Should look like this:
image

but it does look like this:

image

Temuri

@NorwayFun: you don't need to worry about files at all, you go to Dasbhboard and pick the language, and you'll reach somewhere like: https://crowdin.com/editor/exiv2/all/en-bs?view=comfortable

Regarding upload/download, you don't need to do any of that, that's for the maintainers (or me) to do. Translators just use the web UI to translate.

Yes, you're right, it's just me having almost half a million entries in my poedit suggestion list, so I'd prefer to dl it, translate on my pc and upload it after.

Temuri

Yes, you're right, it's just me having almost half a million entries in my poedit suggestion list, so I'd prefer to dl it, translate on my pc and upload it after.

OK, in that case I have changed the project settings and you should have seen a new option in the translation UI that allows you to download the PO file, work offline, and upload the translations.

Awesome! Thanks much!

I wonder why we're only doing this for this branch, and not master too?

We're generally not releasing from the main branch directly.

At some point in the future we should sync the translations back, meaning: I will download the .po files and make a PR against the project. I will let the maintainers decide when they want to do this (based on time or milestone), and I can put a reminder and submit a PR when that happens.

Great, thanks. There is a tentative 0.28.3 milestone AFAICT, but the date is not set in stone...

We're generally not releasing from the main branch directly.

I suggest one of the following:

  1. Getting rid of .pot/.po files in the main branch entirely. Benefits: simpler/cleaner. Drawbacks: translators cannot work proactively, only after the code (and the strings) has been backported to a release branch. That may not give enough time for the new strings that showed up to be translated before the actual release.
  2. Update the .pot/.po files in the main branch periodically. Benefits: translators can start translating those strings right away, and when they show up in a release branch they are already translated. Drawbacks: slightly more manual work.

What I have in mind as an end goal is to create an automated job (GitHub actions, etc.) that periodically regenerates the .pot file, updates the repo, and uploads it to Crowdin. Another automated job downloads the .po files from Crowdin and updates the repo with the translations. In this way it works completely hands-off.

@lbschenkel Please commit any translation updates you might have for the 0.28.x branch, looks like we might be preparing a point release soon...

@lbschenkel Please commit any translation updates you might have for the 0.28.x branch, looks like we might be preparing a point release soon...

Please check #2986. I am assuming that you were referring to the 0.28.x branch.