- Point of contact: Jean-Baptiste Holcroft (aka jibecfed)
- Also, IRC #fedora-i18n on freenode
- Tickets:
- Ticket we use in our Meetings https://pagure.io/g11n/issue/58
- Ticket about public event at Flock to validate this migration plan: https://pagure.io/flock/issue/144
- Some articles:
- Fedora localization platform migrates to Weblate, October 10th, 2019 / Jean-Baptiste Holcroft: https://communityblog.fedoraproject.org/fedora-localization-platform-migrates-to-weblate/
- Fedora Localization project status and horizons, July 29th, 2019 / Jean-Baptiste Holcroft: https://communityblog.fedoraproject.org/fedora-localization-project-status-and-horizons/
- Fedora docs translations FAD report (using Weblate), April 23rd, 2019 / Adam Šamalík https://communityblog.fedoraproject.org/fedora-docs-translations-fad-report/
Objectives
The Fedora Localization community is using and end-of-life translation platform, and need to find a new tool to support our team activity.
Last migrations gave mitigated results, and we need this migration to be the last one for a significant period, at least for a decade. It means we need to be able to reach stability continuity.
With the aim above in mind, then we should discuss what we need to do.
The requirements are grouped inside these categories:
- host fedora and upstream translation projects (dnf, websites...)
- team collaboration processes (fr, pr_br, ro...)
- translation processes
Migration plan
Schedule hypothesis
The migration plan will be related to the future Fedora 32 schedule. Here is the schedule drafted from previous
2019-08-20 Branch Fedora 31 from Rawhide (Rawhide becomes future F32) 2019-10-29 Fedora 31 Release 2020-01-07 Change Checkpoint: Proposal submission deadline (System Wide Changes) Change Checkpoint: Proposal submission deadline (Changes requiring mass rebuild) 2020-01-28 Change Checkpoint: Proposal submission deadline (Self Contained Changes) 2020-01-29 Mass Rebuild 2020-02-04 Software String Freeze 2020-02-18 Change Checkpoint: Completion deadline (testable) Branch Fedora 32 from Rawhide (Rawhide becomes future F33) 2020-03-03 Bodhi activation point Beta Freeze (*) Software Translation Deadline Change Checkpoint: 100% Code Complete Deadline 2020-03-24 Beta Release (Preferred Target) 2020-03-31 Beta Release (Target #1) 2020-04-14 Final Freeze (*) 2020-04-28 Final Release (GA) (Preferred Target) 2020-05-05 Final Release (GA) (Target #1)
Key milestones
Be ready for Software Translation Deadline
The second key milestone is the string freeze, ideally, all upstream project will have to use the translation platform by then. Translators need time to translate, going too much beyond the Software String Freeze deadline would prevent correct translation level, and thus, impacting user experience for non english speakers.
2020-01-28 Software String Freeze 2020-03-03 Software Translation Deadline
Be ready for System Wide Changes proposal deadline
Changing our translation platform is an important change for translators, but the impact on packages is minor. Release can technically be done whatever successfull the migration is. Failing the migration would mean waste of contributor ressources and demotivation.
It requires coordination with:
- all upstream maintainer using Zanata will have to migrate,
- website team will have to migrate,
- documentation team will have to finish i18n support.
As this largely impact our community, visibility is important for teams to coordinate, and the change to be noticed outside of our community.
2020-01-07 Change Checkpoint: Proposal submission deadline (System Wide Changes)
We'll have to be ready by then. Which mean ask the community to confirm the move, and projects to confirm they understood the new way to interact with the translators and the new translator platform.
Agree on the System Wide Changes proposal
A test phase with pilot projects and translators would be useful, as the philosophy of the translation platform will be really different of what we currently have.
This test phase already happened with some positive feedback about the documentation translation system internationalization.
A GO/NO GO should probably be handled in december.
Key activities
- Communicate the reasons of the migration.
- Develop the mandatory Fedora specific features
- Explain to project maintainers the impact on source management (Zanata uses command line interface to push/pull while Weblate interact with a git repository).
- Roll-out of the Fedora websites. Adapt continuous deployment to confirm behaviour on staging. Then deploy on production.
- Roll-out of the Fedora documentation. Deploy in production the current staging continuous deployment scripts which are running in staging. Note: it currently uses a demonstration Weblate instance [1].
- Roll-out of the Fedora packages. Confirm the git repository to use and connect Weblate to each projects. This doesn't require much upstream contribution (only the branch or branches to use are to be known).
List of projects and status
Why a migration status? Some Zanata projects are tests, other projects can freely decide to decide to change the way they structure their translation or move to any translation platform of their choice.
Identification | Identification status | Number |
---|---|---|
… projects that do not require migration | No | 14 |
… projects to be confirmed | Requires migration ? | 96 |
… projects to migrate | Yes | 4 |
Total projects in Zanata | 114 |
Progress | Migration status | Number |
---|---|---|
… Not concerned by the migration | N/A | 14 |
… Project migration did not start yet | Not started | 96 |
… Migration in progress | In progress | 1 |
… Migration is done | Done | 3 |
Total projects to migrate | 100 |
project | MESSAGE | WORD | Identification status | Progress status | Upstream ticket | Comment |
---|---|---|---|---|---|---|
abrt | 3980 | 32000 | Requires migration ? | Not started | ||
anaconda | 767701 | 5072422 | Requires migration ? | Not started | ||
appstream-glib | 9999 | 46157 | Requires migration ? | Not started | ||
asciidoc-test | 0 | 0 | No | N/A | ||
asknot-ng | 54944 | 246238 | Requires migration ? | Not started | ||
authselect | 117362 | 1088275 | Requires migration ? | Not started | ||
balistica | 5151 | 11514 | Requires migration ? | Not started | ||
blivet | 124533 | 787396 | Requires migration ? | Not started | ||
blivet-gui | 22523 | 79285 | Requires migration ? | Not started | ||
camorama | 16500 | 78400 | Requires migration ? | Not started | ||
certmonger | 41915 | 253510 | Requires migration ? | Not started | ||
chkconfig | 20806 | 112514 | Requires migration ? | Not started | ||
classified-ads | 87163 | 404707 | Requires migration ? | Not started | ||
cockpit | 846784 | 3079086 | Requires migration ? | Not started | https://github.com/cockpit-project/cockpit/issues/13319 | |
cockpit-composer | 20402 | 84739 | Requires migration ? | Not started | https://github.com/weldr/cockpit-composer/issues/856 | |
cockpit-podman | ? | ? | Requires migration ? | Not started | https://github.com/cockpit-project/cockpit-podman/issues/267 | |
comps | 64034 | 331078 | Requires migration ? | Not started | ||
cracklib | 1616 | 9797 | Requires migration ? | Not started | ||
dnf | 143319 | 719827 | Requires migration ? | Not started | ||
dnf-plugins-core | 33027 | 209171 | Requires migration ? | Not started | ||
dnf-plugins-extras | 5050 | 32623 | Requires migration ? | Not started | ||
docker-anaconda-addon | 404 | 2727 | Requires migration ? | Not started | ||
eicar-test | 0 | 0 | No | N/A | ||
entangle | 23129 | 101505 | Requires migration ? | Not started | ||
expendable | 9393 | 23028 | Requires migration ? | Not started | ||
fedora-budget | 31714 | 351177 | Requires migration ? | Not started | ||
fedora-cheat-cubes | 20806 | 55146 | Requires migration ? | Not started | ||
fedora-docs-install-guide | 258459 | 5807904 | No | n/a | ||
fedora-docs-system-adminstration-guide | 679831 | 14731153 | no | n/a | ||
fedora-modularity-translations | 30300 | 552975 | Requires migration ? | Not started | ||
fedora-podcast | 38784 | 1960208 | Requires migration ? | Not started | ||
fedora-software | 3234 | 13132 | Requires migration ? | Not started | ||
fedora-web | 143100 | 1388100 | Requires migration ? | Not started | ||
firewalld | 86960 | 467164 | Requires migration ? | Not started | ||
firstboot | 2121 | 11918 | Requires migration ? | Not started | ||
freeipa | 1785276 | 22334736 | Requires migration ? | Not started | ||
gfs2-utils | 107666 | 832543 | Requires migration ? | Not started | ||
gnome-abrt | 6370 | 26700 | Requires migration ? | Not started | ||
gss-ntlmssp | 3030 | 12625 | Requires migration ? | Not started | ||
hivex | 2222 | 27573 | Requires migration ? | Not started | ||
ibus | 54944 | 219069 | Requires migration ? | Not started | https://github.com/ibus/ibus/issues/2165 | |
ibus-anthy | 19594 | 71508 | Requires migration ? | Not started | https://github.com/ibus/ibus-anthy/issues/15 | |
ibus-chewing | 7070 | 36966 | Requires migration ? | Not started | https://github.com/definite/ibus-chewing/issues/150 | |
ibus-input-pad | 3232 | 10403 | Requires migration ? | Not started | https://github.com/fujiwarat/ibus-input-pad/issues/2 | |
ibus-libpinyin | 13736 | 37572 | Requires migration ? | Not started | https://github.com/libpinyin/ibus-libpinyin/issues/210 | |
ibus-m17n | 2424 | 5959 | yes | Done | https://github.com/ibus/ibus-m17n/issues/10 | |
ibus-table | 22220 | 165640 | Yes | Done | https://github.com/mike-fabian/ibus-table/issues/10 | |
ibus-typing-booster | 19493 | 179376 | Yes | Done | https://github.com/mike-fabian/ibus-typing-booster/issues/56 | beta test |
im-chooser | 5656 | 24341 | Requires migration ? | Not started | https://pagure.io/im-chooser/issue/1 | |
imsettings | 8484 | 46157 | Requires migration ? | Not started | ||
initial-setup | 5959 | 30098 | Requires migration ? | Not started | ||
initscripts | 15049 | 101202 | Requires migration ? | Not started | ||
input-pad | 104737 | 230179 | Requires migration ? | Not started | ||
iok | 1560 | 8229 | Requires migration ? | Not started | ||
libbytesize | 1717 | 1717 | Requires migration ? | Not started | ||
libdnf | 30098 | 186345 | Requires migration ? | Not started | ||
libguestfs | 1900012 | 21861349 | Requires migration ? | Not started | ||
libosinfo | 15857 | 74942 | Requires migration ? | Not started | ||
libpwquality | 5353 | 34744 | Requires migration ? | Not started | ||
libreport | 64466 | 533742 | Requires migration ? | Not started | ||
libuser | 30401 | 149278 | Requires migration ? | Not started | ||
libvirt | 996769 | 6547527 | Requires migration ? | Not started | ||
libvirt-glib | 3030 | 15453 | Yes | In progress | https://bugzilla.redhat.com/show_bug.cgi?id=1783579 | |
libvirt-sandbox | 13635 | 74235 | Requires migration ? | Not started | ||
linux-pam | 12120 | 62115 | Requires migration ? | Not started | ||
man-pages-l10n | 22034867 | 306416022 | Requires migration ? | Not started | ||
mediawriter | 12423 | 81305 | Requires migration ? | Not started | ||
mlocate | 5151 | 58883 | Requires migration ? | Not started | ||
my-online-editor | 75240 | 362045 | Requires migration ? | Not started | ||
newt | 404 | 404 | Requires migration ? | Not started | ||
oscap-anaconda-addon | 10200 | 78600 | Requires migration ? | Not started | ||
osinfo-db | 57267 | 179780 | Requires migration ? | Not started | ||
osinfo-db-tools | 4343 | 22422 | Requires migration ? | Not started | ||
pam_krb5 | 404 | 1010 | Requires migration ? | Not started | ||
passwd | 5656 | 33936 | Requires migration ? | Not started | ||
plymouth | 404 | 1212 | Requires migration ? | Not started | ||
pulseaudio | 105242 | 705990 | Requires migration ? | Not started | ||
pykickstart | 70700 | 663469 | Requires migration ? | Not started | ||
python-fedora | 5858 | 42824 | Requires migration ? | Not started | ||
python-meh | 4846 | 23484 | Requires migration ? | Not started | ||
python-simpleline | 1616 | 4444 | Requires migration ? | Not started | ||
retrace-server | 5656 | 43733 | Requires migration ? | Not started | ||
rhel-comps | 7400 | 36220 | Requires migration ? | Not started | ||
selinux | 465909 | 3281420 | Requires migration ? | Not started | ||
serbian-docs | 118 | 1814 | No | N/A | ||
setroubleshoot | 120136 | 2144985 | Requires migration ? | Not started | ||
ships-123 | 0 | 0 | No | N/A | ||
site_home | 0 | 0 | No | N/A | ||
spacewalk-frontend | 1287346 | 8463093 | Requires migration ? | Not started | ||
spacewalk-other | 177356 | 1662965 | Requires migration ? | Not started | ||
sssd | 311888 | 3828708 | Requires migration ? | Not started | ||
system-config-kdump | 1570 | 8980 | Requires migration ? | Not started | ||
system-config-kickstart | 25654 | 116150 | Requires migration ? | Not started | ||
system-config-language | 7017 | 47829 | Requires migration ? | Not started | ||
system-config-printer | 210490 | 865853 | Requires migration ? | Not started | ||
systemd | 12625 | 107565 | Requires migration ? | Not started | ||
tantivy | 0 | 0 | No | N/A | ||
test | 2 | 2 | No | N/A | ||
test1 | 64034 | 331078 | No | N/A | ||
test123213 | 0 | 0 | No | N/A | ||
Testing | 188 | 541 | No | N/A | ||
testproj | 2929 | 16059 | No | N/A | ||
testttt | 308 | 2834 | No | N/A | ||
tvtime | 75548 | 390870 | Requires migration ? | Not started | ||
udisks | 50372 | 215894 | Requires migration ? | Not started | ||
usermode | 9696 | 58075 | Requires migration ? | Not started | ||
v4l-utils | 35672 | 182868 | Requires migration ? | Not started | ||
virt-manager | 146706 | 737254 | Requires migration ? | Not started | ||
virt-top | 8484 | 43127 | Requires migration ? | Not started | ||
virt-viewer | 19291 | 89991 | Requires migration ? | Not started | ||
volume_key | 15251 | 75952 | Requires migration ? | Not started | ||
webdevelop | 1212 | 5151 | Requires migration ? | Not started | ||
webhh | 4 | 50 | Requires migration ? | Not started | ||
webhooks-dummy | 101 | 101 | Requires migration ? | Not started | ||
websites | 11312 | 148571 | Requires migration ? | Not started |
List of inactive projects in Zanata that won't be migrated: accessibility-guide , amateur-radio-guide , anaconda-addon-development-guide , audit-viewer , authconfig , romana , cloud-guide , csi-security-policy , defensive-coding-guide , dnf-plugin-system-upgrade , docbook-locales , docs-install-guide , docs-sandbox , docsite-publican , driverrestore , fas , fedora-elections-guide , fedora-installation-guide , multiboot-guide , openssh-guide , packagers-guide , power-management-guide , fedora-release-notes , securityguide , software-collections-guide , software-management-guide , storage-administration-guide , fedora-uefi-secure-boot-guide , fedora-virt-deploy-and-admin , fedora-cookbook , freeipa-guide , Hi2019 , python-humanize , install-guide-reboot , ipsilon , isitfedoraruby , readme-live-image , liveusb-creator , musicians-guide , myproject , networking-guide , pkinit-nss , publican-fedora , redhat-menus , regcfp , selinux-guide , spacewalk , spice-gtk , system-administrators-guide , system-config-audit , system-config-firewall , technical-notes , test_plugin , translation-quick-start-guide , virtualization-getting-started-guide , vte-profile