On Mon, Mar 27, 2023 at 15:37:34 +0100, Daniel P. Berrangé wrote: > On Mon, Mar 27, 2023 at 01:08:09PM +0200, Jiri Denemark wrote: > > On Fri, Mar 10, 2023 at 17:14:32 +0000, Daniel P. Berrangé wrote: > > > Even if fixed, it might be worth switching the .pot file anyway, but > > > this can't be done without us bulk updating the translations, and > > > bulk re-importing them, which will be challenging. We'll almost > > > certainly want to try this on a throw-away repo in weblate first, > > > not our main repo. > > > > I was able to come up with steps leading to the desired state: > > > > 0. lock weblate repository > > 1. update libvirt.pot from the most recent potfile job > > 2. push to libvirt.git > > 2. wait for translations update from Fedora Weblate and merge it > > 3. pull from libvirt.git > > 4. apply the first 50 patches from this seires (with required changes > > to make sure all translation strings are updated) > > 5. update all po files with the attached script > > 6. update libvirt.pot by running meson compile libvirt-pot > > 7. apply patch 51 of this series > > 8. push to libvirt.git > > 9. wait for translations update from Fedora Weblate and merge it > > 10. unlock weblate repository > > > > The process takes about an hour if we're lucky as weblate is quite slow > > when processing such large amount of changes. > > > > The result can be seen at > > > > https://gitlab.com/jirkade/libvirt/-/commits/format-strings > > > > and the corresponding weblate repository at > > > > https://translate.fedoraproject.org/projects/libvirt/test/ > > > > I used d05ad0f15e737fa2327dd68870a485821505b58f commit as a base. > > Looking at this, I picked a random language (Bengali) and compared > stats: > > https://translate.fedoraproject.org/projects/libvirt/test/bn_IN/ > > vs > > https://translate.fedoraproject.org/projects/libvirt/libvirt/bn_IN/ > > Translated strings matches to within 2 words, which is probably > accounted for by being based on different HEAD > > Strings with failing checks is massively different, and that is > the fault of 'failing check: C format' - 1300 more failing checks > afterwards. Oops, my random generator apparently selected wrong language where the number of 'failing check: C format' issues was significantly lower then before :-) Anyway, I did what you suggested and updated the repositories https://gitlab.com/jirkade/libvirt/-/commits/format-strings https://translate.fedoraproject.org/projects/libvirt/test/ The content is now based on v9.2.0-rc1-8-geb677e3a10 which is just one commit behind 9.2.0-rc2. The fixes to whitespace and cpp string concatenation were sent separately to the list earlier today. Jirka