Tasks relating to translations and localization
Details
Tue, Nov 12
Jun 20 2024
From an attempt I made to fix this before running out of motivation (this lists all parameters that vary on number in the US English translation but the i18n extractor thinks they don't)
WARNING /applications/calendar/notifications/PhabricatorCalendarNotificationEngine.php:269: missing PhutilNumber call? WARNING /applications/config/check/PhabricatorExtraConfigSetupCheck.php:72: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:58: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:73: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:316: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:321: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:347: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:390: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:397: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:524: missing PhutilNumber call? WARNING /applications/config/view/PhabricatorSetupIssueView.php:578: missing PhutilNumber call? WARNING /applications/conpherence/xaction/ConpherenceThreadParticipantsTransaction.php:74: missing PhutilNumber call? WARNING /applications/conpherence/xaction/ConpherenceThreadParticipantsTransaction.php:80: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependedOnByRevisionEdgeType.php:36: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependedOnByRevisionEdgeType.php:48: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependedOnByRevisionEdgeType.php:78: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependedOnByRevisionEdgeType.php:92: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependsOnRevisionEdgeType.php:39: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependsOnRevisionEdgeType.php:51: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependsOnRevisionEdgeType.php:81: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionDependsOnRevisionEdgeType.php:95: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasCommitEdgeType.php:34: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasCommitEdgeType.php:46: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasReviewerEdgeType.php:18: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasReviewerEdgeType.php:30: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasReviewerEdgeType.php:61: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasReviewerEdgeType.php:75: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasTaskEdgeType.php:33: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasTaskEdgeType.php:45: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasTaskEdgeType.php:76: missing PhutilNumber call? WARNING /applications/differential/edge/DifferentialRevisionHasTaskEdgeType.php:90: missing PhutilNumber call? WARNING /applications/differential/mail/DifferentialCreateMailReceiver.php:75: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:523: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:525: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:529: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:531: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:556: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:558: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:562: missing PhutilNumber call? WARNING /applications/differential/render/DifferentialChangesetHTMLRenderer.php:564: missing PhutilNumber call? WARNING /applications/differential/storage/DifferentialTransaction.php:593: missing PhutilNumber call? WARNING /applications/differential/storage/DifferentialTransaction.php:597: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasRevisionEdgeType.php:34: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasRevisionEdgeType.php:46: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasTaskEdgeType.php:33: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasTaskEdgeType.php:45: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasTaskEdgeType.php:76: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitHasTaskEdgeType.php:90: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertedByCommitEdgeType.php:22: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertedByCommitEdgeType.php:34: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertedByCommitEdgeType.php:64: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertedByCommitEdgeType.php:78: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertsCommitEdgeType.php:25: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertsCommitEdgeType.php:37: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertsCommitEdgeType.php:67: missing PhutilNumber call? WARNING /applications/diffusion/edge/DiffusionCommitRevertsCommitEdgeType.php:81: missing PhutilNumber call? WARNING /applications/legalpad/edge/LegalpadObjectNeedsSignatureEdgeType.php:17: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependedOnByTaskEdgeType.php:32: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependedOnByTaskEdgeType.php:44: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependedOnByTaskEdgeType.php:74: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependedOnByTaskEdgeType.php:88: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependsOnTaskEdgeType.php:37: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependsOnTaskEdgeType.php:49: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependsOnTaskEdgeType.php:79: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskDependsOnTaskEdgeType.php:93: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasCommitEdgeType.php:33: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasCommitEdgeType.php:45: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasCommitEdgeType.php:76: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasCommitEdgeType.php:90: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasMockEdgeType.php:21: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasMockEdgeType.php:33: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasRevisionEdgeType.php:33: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasRevisionEdgeType.php:45: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasRevisionEdgeType.php:76: missing PhutilNumber call? WARNING /applications/maniphest/edge/ManiphestTaskHasRevisionEdgeType.php:90: missing PhutilNumber call? WARNING /applications/owners/xaction/PhabricatorOwnersPackageOwnersTransaction.php:54: missing PhutilNumber call? WARNING /applications/owners/xaction/PhabricatorOwnersPackageOwnersTransaction.php:60: missing PhutilNumber call? WARNING /applications/pholio/edge/PholioMockHasTaskEdgeType.php:21: missing PhutilNumber call? WARNING /applications/pholio/edge/PholioMockHasTaskEdgeType.php:33: missing PhutilNumber call? WARNING /applications/pholio/xaction/PholioImageFileTransaction.php:61: missing PhutilNumber call? WARNING /applications/pholio/xaction/PholioImageFileTransaction.php:67: missing PhutilNumber call? WARNING /applications/phortune/controller/account/PhortuneAccountOverviewController.php:116: missing PhutilNumber call? WARNING /applications/phortune/edge/PhortuneAccountHasMemberEdgeType.php:17: missing PhutilNumber call? WARNING /applications/phortune/edge/PhortuneAccountHasMemberEdgeType.php:29: missing PhutilNumber call? WARNING /applications/phortune/edge/PhortuneMerchantHasMemberEdgeType.php:17: missing PhutilNumber call? WARNING /applications/phortune/edge/PhortuneMerchantHasMemberEdgeType.php:29: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectMemberOfProjectEdgeType.php:22: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectMemberOfProjectEdgeType.php:34: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectObjectHasProjectEdgeType.php:24: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectObjectHasProjectEdgeType.php:36: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectObjectHasProjectEdgeType.php:67: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectObjectHasProjectEdgeType.php:81: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectProjectHasMemberEdgeType.php:22: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectProjectHasMemberEdgeType.php:34: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectProjectHasMemberEdgeType.php:64: missing PhutilNumber call? WARNING /applications/project/edge/PhabricatorProjectProjectHasMemberEdgeType.php:78: missing PhutilNumber call? WARNING /applications/project/storage/PhabricatorProjectTransaction.php:108: missing PhutilNumber call? WARNING /applications/project/storage/PhabricatorProjectTransaction.php:120: missing PhutilNumber call? WARNING /applications/project/xaction/PhabricatorProjectSlugsTransaction.php:56: missing PhutilNumber call? WARNING /applications/project/xaction/PhabricatorProjectSlugsTransaction.php:62: missing PhutilNumber call? WARNING /applications/project/xaction/PhabricatorProjectSlugsTransaction.php:90: missing PhutilNumber call? WARNING /applications/project/xaction/PhabricatorProjectSlugsTransaction.php:97: missing PhutilNumber call? WARNING /applications/repository/worker/PhabricatorRepositoryPushMailWorker.php:77: missing PhutilNumber call? WARNING /applications/repository/worker/PhabricatorRepositoryPushMailWorker.php:108: missing PhutilNumber call? WARNING /applications/subscriptions/engineextension/PhabricatorSubscriptionsCurtainExtension.php:98: missing PhutilNumber call? WARNING /applications/subscriptions/view/SubscriptionListStringBuilder.php:67: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasContributorEdgeType.php:22: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasContributorEdgeType.php:34: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasWatcherEdgeType.php:21: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasWatcherEdgeType.php:33: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasWatcherEdgeType.php:63: missing PhutilNumber call? WARNING /applications/transactions/edges/PhabricatorObjectHasWatcherEdgeType.php:77: missing PhutilNumber call? WARNING /applications/transactions/response/PhabricatorApplicationTransactionNoEffectResponse.php:38: missing PhutilNumber call? WARNING /applications/transactions/response/PhabricatorApplicationTransactionNoEffectResponse.php:39: missing PhutilNumber call? WARNING /applications/transactions/response/PhabricatorApplicationTransactionNoEffectResponse.php:44: missing PhutilNumber call? WARNING /applications/transactions/response/PhabricatorApplicationTransactionNoEffectResponse.php:55: missing PhutilNumber call? WARNING /applications/transactions/response/PhabricatorApplicationTransactionNoEffectResponse.php:56: missing PhutilNumber call? WARNING /applications/transactions/storage/PhabricatorApplicationTransaction.php:1042: missing PhutilNumber call? WARNING /applications/transactions/storage/PhabricatorApplicationTransaction.php:1053: missing PhutilNumber call? WARNING /infrastructure/diff/view/PHUIDiffTableOfContentsItemView.php:140: missing PhutilNumber call? WARNING /infrastructure/edges/type/PhabricatorEdgeType.php:66: missing PhutilNumber call? WARNING /infrastructure/edges/type/PhabricatorEdgeType.php:78: missing PhutilNumber call? WARNING /infrastructure/edges/type/PhabricatorEdgeType.php:109: missing PhutilNumber call? WARNING /infrastructure/edges/type/PhabricatorEdgeType.php:123: missing PhutilNumber call?
Not all of these should be fixed in the obvious way, or even can be.
Jun 19 2024
Jun 7 2024
... but it turns out by concidence most of the date elements that are worth translating are already translatable from other references in the code:
// The only purpose of this function is to provide a static list of // translations which can come from PhutilTranslator::translateDate() to // allow translation extractor getting them.
I seem to have a bad habit of doing things and realizing they were stupid or I had missed something weeks to months later.
May 25 2024
May 15 2024
Mar 12 2024
Since 2023, Wikimedia Phabricator is really Phorge.
Feb 11 2024
Jul 11 2023
- the setlocal isn't supposed to make a difference (it only applies the command string itself - ie if a file is named 🧆.txt.
- Setting E is more likely to cause this problem then to solve it...
I think these two are related here:
- https://secure.phabricator.com/T13060 (call setlocal in the master php process, so everything is always en_us)
- T15281 and https://secure.phabricator.com/T12071 (Env-vars are missing because of E)
(I'm able to reproduce. Had to apt-get install language-pack-hu for that...)
Jul 10 2023
May 9 2023
Apr 6 2023
Mar 28 2023
Mar 26 2023
Mar 12 2023
Dec 17 2022
When I said inconsistencies, I was talking specifically issues where certain UI elements have the original English version of the text, while others have the "translated" Pirate English version of the text.
I don't think that Pirate English should be consistent. Anyway I think that "Subscribers" should be translated in Pirate English and that is a bug. But what is the "Task history"?
Nov 5 2022
Oct 21 2022
Sep 16 2022
There is a thread to translatewiki.net about adding Phorge: https://translatewiki.net/wiki/Thread:Support/Adding_Phorge_for_translation%3F.
Wikimedia must first migrate to Phorge to add it into translatewiki.net.
Mar 29 2022
A highly unfortunate side-effect of T15077: Rebrand: Tracking task is that it will invalidate a ton of translations. My guess is that upstream did not want to maintain these translations as part of the release product, possibly due to not requiring translations be part of the Phabricator release process. If we pull them into the Phorge codebase then we would likely need to update all translations for any text changes made during development, prior to release. I think it would make sense to host the translations in a repository here but I would worry about them quickly falling out of date. Handling of translations is likely a larger-sized project that we would need help managing.
Mar 24 2022
Dec 9 2021
Well, there are inconsistencies. For example, subscribers are called "spies" in the task overview, but "subscribers" in the task history, and "spies" again in task actions.
Dec 3 2021
It is not very clear to understand where the problem is and how to try to help improve it. I am not familiar with Pirate English. Other than adding "Arrr." I mean.