#linuxcnc-devel Logs
Dec 10 2021
#linuxcnc-devel Calendar
02:31 AM pere: well, any volunteer with commit rights to master willing to sync translations from weblate?
02:37 AM pere: JT-Shop: it take less than 5 minutes, and I can provide instructions, if you are interested. :)
04:31 AM pere: <URL: https://github.com/petterreinholdtsen/linuxcnc/tree/weblate-master > show the translation updates on weblate at the moment.
09:33 AM rene-dev5: There is a large german community, would it be helpful if I post the link there?
09:33 AM rene-dev5: or is it too early?
09:48 AM silopolis[m]: rene-dev5: that'd be awesome, but I'll let pere answer about timing...
09:51 AM pere: rene-dev5: feel free to spread the word. unless someone start to commit translation updates directly to git too, there should be no problem.
10:21 AM pere: rene-dev5: do you have commit access to master?
08:09 PM -!- #linuxcnc-devel mode set to +v by ChanServ
08:43 PM seb_kuzminsky: hi pere
08:43 PM seb_kuzminsky: hi silopolis[m]
09:02 PM seb_kuzminsky: wow, you folks have been rocking the translations!
09:03 PM seb_kuzminsky: i just merged the master branch from weblate, thanks!
09:04 PM Tom_L: that will be a relief for them
09:05 PM Tom_L: they seem to be moving right along with it
09:12 PM seb_kuzminsky: weblate makes it super easy to import new translations - they have a clone of our git repo, and whenever a translator translates anything there it makes a commit with the changes. So i just fetched from weblate and merged it into our master. This workflow gets two thumbs up from me.
09:12 PM Tom_L: yeah, i didn't understand all of it but i see what they're doing and think it's great
09:13 PM Tom_L: streamlining the translations has been a problem for years
09:13 PM seb_kuzminsky: yeah
09:13 PM Tom_L: but not a priority :)
09:46 PM rene-dev5: Pere yes
09:46 PM rene-dev5: Ok, I will post it there
10:12 PM pere: seb_kuzminsky: the merge process should also include some steps on weblate. I updated the weblate git repo now. seb_kuzminsky do you have a user on weblate we can grant access to do this steip?
10:12 PM seb_kuzminsky: i just made an account on weblate, i'm seb_kuzminsky there too
10:13 PM seb_kuzminsky: i guess weblate should fetch from our github repo, and then everything's good?
10:13 PM pere: seb_kuzminsky: please rename nb_NO.po to nb.po.
10:14 PM seb_kuzminsky: ok, hang on
10:14 PM pere: seb_kuzminsky: weblate can fetch, and that is the step you have to do. :)
10:15 PM pere: seb_kuzminsky: seb_kuzminsky is now an admin of the weblate project linuxcnc.
10:15 PM seb_kuzminsky: the norwegians are not balkanized enough to need several forks of their language yet?? :-)
10:15 PM seb_kuzminsky: ok, pushed
10:15 PM pere: exactly, but for historical reasons we have three langauge codes, no, nb and nn. the first being the union of the latter two...
10:16 PM pere: seb_kuzminsky: if you wisit weblate, and select administration->maintain repo (or something like that, I see the norwgian edition), you can update the repo.
10:17 PM seb_kuzminsky: in the Manage tab there's a window/box widget titled Repository Status
10:17 PM seb_kuzminsky: it says there are "40 pending changes not yet committed to the weblate repo"
10:17 PM seb_kuzminsky: and a "Commit" button
10:18 PM seb_kuzminsky: i'd guess that does a ff merge to linuxcnc/master?OC
10:18 PM pere: there is also an 'update' button, I believe.
10:18 PM pere: this can either pull or pull --rebase. you want the pull one.
10:18 PM pere: (which to me is a simple press on 'update')
10:18 PM seb_kuzminsky: ah, no, the Commit button merges weblate stuff into the main repo
10:18 PM pere: yes.
10:19 PM seb_kuzminsky: i see the Update button, but it says there are 0 missing commit in the Weblate repo, not sure what that means
10:19 PM pere: it mean weblate have not discovered the commits you did on github yet. believe it update every 24 hours unless we manually ask it to update.
10:19 PM seb_kuzminsky: i didn't push any buttons, and then i just fetched from weblate and i see that it updated automatically
10:20 PM pere: (well, it do not update, it just do 'git fetch' every 24 hours)
10:20 PM seb_kuzminsky: it has the merge, and phillip Carter's fix to qtplasmacnc, but not my rename of the po file just now
10:20 PM pere: seb_kuzminsky: so try the update button
10:20 PM seb_kuzminsky: weblate's master branch definitely did update - it includes the merge i just did
10:20 PM seb_kuzminsky: ok hang on
10:21 PM seb_kuzminsky: i selected rebase in the update button and ran it
10:22 PM seb_kuzminsky: and i see two new commits in weblate/master, new translations from smoe
10:22 PM pere: great.
10:22 PM seb_kuzminsky: hopefully that won't mess up whatever he's working on...
10:22 PM seb_kuzminsky: this is awesome!
10:22 PM seb_kuzminsky: thanks for setting it up
10:22 PM pere: each file is handled independently, so it should not mess up.
10:23 PM pere: more worried that weblate might be confused with the nb_NO rename, but expect it to work well.
10:23 PM seb_kuzminsky: is this tier of hosted weblate costing anyone money? who should i email my credit card number to?
10:24 PM pere: seb_kuzminsky: did you rename in gmoccapy too?
10:24 PM seb_kuzminsky: i just renamed src/po/nb_NO.po to src/po/nb.po
10:24 PM seb_kuzminsky: i'll do the gmoccapy one too, hang on another sec
10:24 PM pere: seb_kuzminsky: silopolis[m] applied for hosting for free software, which do not cost anything. if it is not approved, it will cost money.
10:25 PM seb_kuzminsky: sweet
10:25 PM seb_kuzminsky: thanks silopolis[m] !!
10:26 PM pere: once the po4a migration is complete, there will be a new component documentation, and a bunch of fuzzy translations lifted from the translated documentation.
10:26 PM seb_kuzminsky: perfect
10:26 PM seb_kuzminsky: i just pushed the gmoccapy rename
10:27 PM seb_kuzminsky: i'll update weblate again
10:27 PM pere: and once we move to a very recent po4a version, we can split the ducumentation into for example manual pages, getting started and other collections of documentation files.
10:27 PM seb_kuzminsky: yep, that looks good
10:27 PM seb_kuzminsky: cool
10:28 PM seb_kuzminsky: i've been working with sam (i'm not sure if you've met) to add capacity to our buildbot, that'll let me add VMs of debian unstable, then we can do the docs builds there (assuming the change doesn't break the build on older distros too badly)
10:29 PM pere: not sure if that will ever happen, though, as it will probably have to be done when the latest po4a is in all linux distributions linuxcnc support...
10:29 PM seb_kuzminsky: heh yeah
10:32 PM pere: seb_kuzminsky: other webmin admin features to learn is the 'lock repository' feature, which can be useful during major git repo restructures. ie lock weblate, merge changes to github, update weblate, restructure git repo on github, update weblate, unlock. it would be useful if moving the po/ directory or squashing the commits from weblate, or something like that.
10:33 PM pere: In such cases the maintenance->reset option would probably be useful too.
10:33 PM seb_kuzminsky: cool
10:34 PM seb_kuzminsky: i'll add some notes on how to use Weblate as a linuxcnc admin to our (english!) docs
10:34 PM pere: seb_kuzminsky: btw, lets talk a little about pycam while you are here.
10:35 PM pere: how do you see the process towards getting it into debian?
10:35 PM seb_kuzminsky: hang on, let me dig up my pycam notes
10:39 PM seb_kuzminsky: ok, i think it's in pretty good shape
10:40 PM seb_kuzminsky: i wish Lars was around, but i think we can proceed without him
10:41 PM pere: if you want to maintain it in debian, I can be your sponsor (ie do the signing and uploading) of the package you make.
10:41 PM seb_kuzminsky: the debian/copyright file is probably pretty out of date
10:41 PM seb_kuzminsky: i would love for you to be my sponsor
10:41 PM pere: that is the main file checked by the debian ftpmasters (aka those accepting new packages), so it need to be correct and complete.
10:42 PM pere: <URL: http://www.hungry.com/~pere/debian-sponsoring.html > is my sponsoring preferences.
10:44 PM seb_kuzminsky: cool, i'll work on the d/copyright file and try to address the remaining lintian issues, then ping you
10:44 PM seb_kuzminsky: i'm spread pretty thin these days, so i will not make a promise on the schedule...
10:45 PM pere: <URL: https://wiki.debian.org/CopyrightReviewTools > have a lot of useful tools to generate d/copyright and checking its content.
10:45 PM pere: if all source files have copyright headers, d/copyright can be generated automatically and kept up to date that way.
10:47 PM pere: would be great if pycam is in the next debian release, and for that, I believe it should go into unstable fairly soon. but there is no real rush yet.
10:48 PM pere: btw, what is this 'Gmocappy' component? I'm renaming it to LinuxCNC/Gmocappy in Weblate to make it clear that it is part of LinuxCNC and not its documentation.
10:49 PM seb_kuzminsky: gmoccapy is one of the many GUIs that are part of LinuxCNC
10:50 PM pere: why do none of these have separate PO files? Or why do gmocappy have a separeate PO file?
10:53 PM seb_kuzminsky: our po setup predates my involvement in the project, and has been particularly neglected for as long as i've been here. my guess is Norbert (the gmoccapy author & primary maintainer) is just particularly independent in the organization of his linuxcnc work. for example, he gave gmoccapy its own version number, independent of linuxcnc's. Perhaps he originally intended to split it out into
10:53 PM seb_kuzminsky: a separate project? i'm really not sure
10:54 PM seb_kuzminsky: and i confess i don't understand gettext/po well enough to say whether it's better to have one big po file or lots of small po files. My intuition as a coder is that lots of small files is easier to manage, but i recognize that i'm in unknown territory here
10:55 PM pere: it is not a clear cut decision.
10:55 PM seb_kuzminsky: they seldome are :-)
10:55 PM pere: from a translator viewpoint, separation into several units make it easier to translate the most important parts first, when starting from scratch.
10:56 PM pere: and it is easier to start on a small file and complete its translation than having to handle one enormous set of translations.
10:57 PM pere: there is no problem having 'Gmocappy' separate, I just wondered why it was like that.
10:57 PM seb_kuzminsky: right, there's a sense of accomplishment to finish one small file, rather than move a huge file from 28% to 29% translated
10:57 PM pere: definitely. :)
10:57 PM seb_kuzminsky: and that "prioritize the important files" thing works when the translations fall behind, too, not just when starting a new one
10:58 PM seb_kuzminsky: i guess, reviving an old out of date translation is pretty similar to starting a new one
10:58 PM pere: and ideally, finishing one file should make sure some part of the project is completely translated, like a PDF, the GUI, the manual pages, etc.
10:58 PM seb_kuzminsky: yeah, good point
10:58 PM pere: seb_kuzminsky: reviewing is normally a quicker task, as it often contain a lot of texts already translated.
10:59 PM seb_kuzminsky: so we could ask translators to make sure the "Getting Started" docs are up to date before we make a big release
10:59 PM pere: exactly. but that will need the latest po4a release. :)
11:00 PM seb_kuzminsky: i think professional translation software has this notion of a "phrase book" (i'm not sure what it's really called), where recurring phrases in different projects can all use the same cached translation, without the translator having to re-write it every time
11:00 PM seb_kuzminsky: does splitting the po files into little pieces affect that? is it even a thing in po?
11:00 PM pere: weblates closest match to those are 'dictionary', where phrases and words can be listed and translated.
11:02 PM pere: in the top right corner of the web gui when translating, there is a 'dictionary' section. if you add a word or phrase there, every time that word is found in the original the translated phrase will show up in the upper right box of the web gui.
11:02 PM seb_kuzminsky: nice
11:04 PM pere: so I guess it is time to start marketing weblate for linuxcnc, to get the translations completed? Italian is very close, only 339 words left to translate to reach 100% for the main program (and then 2187 words for gmocappy).
11:05 PM pere: it is less than a A4 page of text, If I am not mistaken.
11:06 PM seb_kuzminsky: we should type up some docs on how to use Weblate first, to point people to
11:07 PM seb_kuzminsky: it doesn't have to be much, maybe a paragraph or two in http://linuxcnc.org/docs/devel/html/code/contributing-to-linuxcnc.html
11:08 PM pere: Right.
11:08 PM pere: <URL: https://docs.weblate.org/en/latest/ > is not too bad either.
11:08 PM seb_kuzminsky: perfect, i'll include a link to that
11:19 PM pere: seb_kuzminsky: should more people be added as a project admin on weblate?
11:20 PM seb_kuzminsky: that would be good... we should ask andy, rene-dev5, JT-Shop, jepler[m], and who did i forget?
11:21 PM Tom_L: morley?
11:21 PM seb_kuzminsky: yeah
11:21 PM Tom_L: dunno for sure how much he is involved
11:22 PM seb_kuzminsky: as far as i'm concerned, anyone who's an admin on our github project could be an admin on weblate
11:22 PM Tom_L: peter probably doesn't want in on that part
11:28 PM pere: any weblate admin can add or remove other weblate admins, so with seb_kuzminsky, silopolis[m] and myself listed, adding more should be easy
11:28 PM seb_kuzminsky: yeah, that's good
11:30 PM seb_kuzminsky: ok, i added this: https://github.com/LinuxCNC/linuxcnc/commit/0578031cd9a84c6392af857a7ed660cce8b4b9e9#diff-36f3ddd4f7f8a56775b809785c3a3e846d0cf16beded725f89ebb359199228c0
11:33 PM pere: seb_kuzminsky: the text give the impression that mixing weblate and po file editors will work well. it will however cause git merge conflicts.
11:33 PM pere: so individual language teams should pick one or the other and stick to it.
11:35 PM pere: also, suspect it might be wise to mention that some knowledge on the cnc vocabulary is needed to complete the translation. for example I am not sure what norwegian CNC terminology is for several concepts, and thus have delayed those translations until I do. :)
11:36 PM seb_kuzminsky: hmm, yeah...
11:38 PM pere: anyway, got to run. Great to see progress on the translation side. hope we will reach 100% soon. :)
11:38 PM seb_kuzminsky: the only problem you can run into when mixing weblate and other po file editors are git merge conflicts, right? if someone edits a particular po file using one tool, and someone else edits the same file using some other tool at the same time?
11:39 PM seb_kuzminsky: ok, thanks for your time and all your work on this - it's already so much better than before, and i'm grateful
11:39 PM seb_kuzminsky: i'll see you around :-)