Open zepumph opened 1 year ago
@jbphet @chrisklus and I found that ReleaseBranch.updateCheckout is incredibly buggy. For babel, we are seeing that it is not pulling new translations in. For example, BASE had a kurdish translation come in last night, but the sim is in english (the fallback): https://phet.colorado.edu/sims/html/balloons-and-static-electricity/1.5.11/balloons-and-static-electricity_ku.html
This is because of these lines here:
Also noting https://github.com/phetsims/perennial/issues/83 because that punt has been hiding issues for the last month.
So for BASE, it had this workaround, but for Coulombs law, it predates this workaround pointing back to the fallback locale, and so it has a hard failure.
@jonathanolson, this is a top priority regression that we need to fix. How can we make sure that each parallel checkout is completely up to date. Here is a patch with some ideas, but I do not understand things well enough to make a commit.
Subject: [PATCH] remove dispose code in keyboard help, https://github.com/phetsims/scenery-phet/issues/810
---
Index: js/common/ReleaseBranch.js
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/js/common/ReleaseBranch.js b/js/common/ReleaseBranch.js
--- a/js/common/ReleaseBranch.js (revision aca2bd5294ba6b828401363b6c81a732ab453497)
+++ b/js/common/ReleaseBranch.js (date 1686265919455)
@@ -212,7 +212,8 @@
await gitCloneDirectory( repo, checkoutDirectory );
}
else {
- await execute( 'git', [ 'fetch' ], repoPwd );
+ // Options two? Why are we only fetching, this seems really buggy
+ await execute( 'git', [ 'pull' ], repoPwd );
}
};
@@ -232,6 +233,11 @@
await gitCheckoutDirectory( dependencies[ repo ].sha, repoPwd );
+ // Option one? Babel is always at the tip of a branch, can we pull that branch please? See
+ if ( repo === 'babel' ) {
+ await gitPullDirectory( repoPwd );
+ }
+
if ( repo === 'chipper' || repo === 'perennial-alias' || repo === this.repo ) {
winston.info( `npm ${repo} in ${checkoutDirectory}` );
Added your "option one" above.
Can't just do locales=* builds (although I added ReleaseBranch.redeployProduction above, which will hopefully be helpful for the future), since it doesn't provide translator information for credits. Individual build requests will need to happen from rosetta for that (specifying translatorId
in the build requests, one locale at a time) to get the credits correct.
I've redeployed most of the sims that were problems. I say "most" because of the issue linked just above where user IDs are missing, which makes it tricky to redeploy the translation. I'll work on that next.
For reference, here is a list of some sims and locales that I verified were bad (either missing or deployed with all English fallbacks) due to this problem, and subsequently verified were fixed after the redeployment. This isn't an exhaustive list of all sims that suffered from this problem, but was useful for spot checking that the redeployment fixed things.
Sim | Language | Locale Code |
---|---|---|
balloons-and-static-electricity | Kurdish | ku |
mean-share-and-balance | Arfan Oromo | om |
quadrilateral | Danish | da |
quadrilateral | Polish | pl |
quadrilateral | Portuguese, Brazil | pt_BR |
quadrilateral | Romanian | ro |
Below is a list of all the redeployments that were attempted, though some failed due to the lack of a user ID in the translation files. This list was created by extracting all requested builds from the Rosetta log from May 23 until now. There are 56 sim/locale combinations on the list, though it's possible there are some duplicates.
The following sim+locales could not be redeployed because of missing user IDs:
@mattpen has let me know that the problem sims from the list in https://github.com/phetsims/perennial/issues/326#issuecomment-1585091178 need to be rebuilt again because of issues with the main website translation pages. These pages were not being updated to use the localized sim title. @mattpen has fixed this, so I'll kick off the script to trigger these builds and update this issue when it's done.
Second iteration of batch trigger builds seems to have completed successfully. The "quad" translation page is now lookin' good. Here's a screenshot:
I also checked the other sims listed in https://github.com/phetsims/perennial/issues/326#issuecomment-1585091178 and they look good as well.
I'm not going to close this because I want to make sure the sims listed in https://github.com/phetsims/perennial/issues/326#issuecomment-1585181903 and redeployed after user IDs are added back to those translations. This is blocked until https://github.com/phetsims/rosetta/issues/412 is fully resolved.
@mattpen and I noticed that two more of this same type of build failure happened over the weekend. From the most recent failure, arithmetic
on the 18th, it looks pretty clear that at 4:09 the translator submitted some common code translations for the locale ki
and then triggered a build for arithmetic
with no sim-specific translations (specifically no title translation). This caused the same no-title error because there wasn't a ki
file in babel yet for arithmetic. When they submitted sim-specific translations at 5:41 and triggered another build, it succeeded. It looks like this is happening during a build, so we started looking for places this could fail in chipper. We will reach out to continue with @jonathanolson.
@solaolateju - While the devs will look for some way to prevent or fix the above failure, can you please also up your training for translators to make sure they know not to submit only common code strings in this way. They need to translate the actual sim itself as well.
If you might be able to ask the translator about the origins here, as well. Did he/she intend for the rest of the sim specific strings to be in English for this translation, so the only thing that would ever be translated for this sim and language is common code strings??
I'm going to unassign myself and hand this back to other devs that I know to be working on this. I'll make sure that the sims listed above are redeployed as part of fully addressing https://github.com/phetsims/rosetta/issues/412.
@zepumph and I investigated more this afternoon and think that this would be easiest to solve on rosetta's side. To make a change to the build process to use the backup english title to prevent errors would require maintenance releasing all release branches. If we instead stopped allowing translators to submit a translation with no title, this error should no longer be possible.
We chatted with @jbphet about this and he up for adding the validation to rosetta. We open an issue over there.
@kathy-phet I will inform translators at future trainings. It is unusual to begin translating from common strings.
I checked Arithmetic
(ki
) and found it uses over 80% common strings and about 9 or 53 are Sim-Specific Strings. which would have increased the likelihood of this happening.
From 3:06 this morning. @jbphet, @chrisklus and I are investigating. We're going to start with a trigger build.