Project

General

Profile

Actions

Task #2012

closed

Automate pootle to commit translations

Added by Jan Iversen over 7 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Category:
Pootle
Target version:
Team - Q3/2019
Start date:
Due date:
% Done:

30%

Tags:

Description

Cloph have already started to automate the pootle integration to git. There is a cron script running every second hour to sync the pootle database with the directories.

Next step, use last modified time (controlled sync script, it only touched files it actually write), copy changed files to a git clone, commit and push.

The automated push, will be done for master (still need to figure out, how to do it for android, iosviewer, and libo_online).

We need to think if we want it done for lib050, lib051 and libO52 as well.


Related issues

Related to Release Engineering - Task #1488: Pootle layout automated prepration to repository-ready filesClosedChristian Lohmaier

Actions
Actions #1

Updated by Florian Effenberger over 7 years ago

  • Target version set to Pool
Actions #2

Updated by Florian Effenberger almost 7 years ago

  • Status changed from New to Feedback
  • Assignee changed from Jan Iversen to Christian Lohmaier
  • Priority changed from Normal to High
  • Target version changed from Pool to Q3/2017

Carried out, but needs deployment on our side - blocked by the Pootle back-migration to own infra, which is in progress

Actions #3

Updated by Christian Lohmaier over 6 years ago

additional blocking/delaying factor is gettext migration on master - but will be tackled within next two weeks (pootle project split up/master changed to master this week).
Then apply tweaks as necessary to the processing to match the slightly different syntax if necessary (should not be needed, as we had variable size msgctxt before, so just verification that the script works as intended after migration as well).

Would have been nice to have that on our infra, but that seems to be delayed a little further.

Actions #4

Updated by Christian Lohmaier over 6 years ago

  • Related to Task #1488: Pootle layout automated prepration to repository-ready files added
Actions #5

Updated by Florian Effenberger over 6 years ago

Do you see a chance to have that done by the time of the conference? Would be great to see some result there

Actions #6

Updated by Florian Effenberger over 6 years ago

Any status update on this?

Actions #7

Updated by Christian Lohmaier over 6 years ago

msgfmt (tool used in gettext builds) is very picky about syntax errors (well, not even syntax error, but if e.g. english string has a \n (newline) at end of string, but the translation doesn't, it fails hard and breaks the build (even if the translation has the same number of newlines in total). So needs some more manual runs to fix them before/and additional checks/tweaking in the script to avoid checking in these kind of strings.
Just refusing to use files that have this problem should be easy to do, problem is that with gettext there are fewer files in total, so if messages.po is refused because of one problematic strings, so are all the other strings that changed in that file. Of course much better than breaking the build, so I'll go with that route - at least initially.

Actions #8

Updated by Florian Effenberger over 6 years ago

  • Target version changed from Q3/2017 to Q4/2017

So, what's required then to completely close this ticket?

Actions #9

Updated by Florian Effenberger over 6 years ago

Florian Effenberger wrote:

So, what's required then to completely close this ticket?

Ping? :)

Actions #10

Updated by Christian Lohmaier over 6 years ago

  • Estimated time set to 5:00 h

ideally our own host, apart from that an additional preprocessing that rejects files with problematic translations - so some time to actually do it.

Actions #11

Updated by Florian Effenberger about 6 years ago

  • Status changed from Feedback to In Progress
  • Priority changed from High to Normal
  • Target version changed from Q4/2017 to Q1/2018

Pootle back-migration done
Now waiting for changes to master branch to come to life (splitoff 6.0), working with Pootle devs on that
Then in progress, tentatively Q1 if possible

Actions #12

Updated by Christian Lohmaier almost 6 years ago

  • Target version changed from Q1/2018 to Q2/2018
  • % Done changed from 0 to 30

translations in master did stabilize (re msgfmt errors in line-ends), so now next step can be tackled without ignoring majority of the translations.
Should be done mid next week

Actions #13

Updated by Florian Effenberger almost 6 years ago

Any status update?

Actions #14

Updated by Christian Lohmaier almost 6 years ago

Will finally enable after 6.1.0 rc1 (tag due this week)/ when 61 projects are created in pootle and master is reflecting master again.

Actions #15

Updated by Florian Effenberger over 5 years ago

Christian Lohmaier wrote:

Will finally enable after 6.1.0 rc1 (tag due this week)/ when 61 projects are created in pootle and master is reflecting master again.

Is this done? ;-)

Actions #16

Updated by Florian Effenberger over 5 years ago

Florian Effenberger wrote:

Christian Lohmaier wrote:

Will finally enable after 6.1.0 rc1 (tag due this week)/ when 61 projects are created in pootle and master is reflecting master again.

Is this done? ;-)

Ping?

Actions #17

Updated by Christian Lohmaier over 5 years ago

  • Target version changed from Q2/2018 to Q1/2019

reschedule to Q1 next year/when master is reflecting master again (right now it corresponds to 6-2)

Actions #18

Updated by Florian Effenberger almost 5 years ago

Any updates on this?

Actions #19

Updated by Florian Effenberger over 4 years ago

  • Target version changed from Q1/2019 to Q3/2019

Cloph, what's the status?

Actions #21

Updated by Florian Effenberger over 4 years ago

We'll work with Weblate, but Pootle will stay for a while I guess, so
the question is if this feature (still) makes sense, or if the ticket
should be closed instead.

Actions #22

Updated by Christian Lohmaier about 4 years ago

  • Status changed from In Progress to Resolved

closing this as resolved with weblate - fully automatic with the online or impress remote repositories (will create gerrit requests for all changes), and for main translations repo by using the intermediate repository on github where weblate pushes directly to. (that now has the same directory layout like the translations repo)

No full-automation to the actual translations repository due to amount of noise that would create because of the submodule pointer being moved and preventing bloat in the translations repository.

next version of weblate (3.11) will also allow to enforce checks, so the cleanup of end-of-line differences that are a hard error in msgfmt can be enforced in weblate instead of doing it with a cleanup step.

Also master templates are now updated much more frequently thanks to the propagation of translations feature/having a dedicated master branch in weblate as well as the release branches, so updating the main repo after updating the files against the new templates is what I'm doing with the current setup and weekly/biweekly updates should be just fine.

Actions #23

Updated by Beluga Beluga about 4 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF