Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create process for changing Locale Info #219

Open
3 of 4 tasks
mattpen opened this issue Dec 18, 2023 · 3 comments
Open
3 of 4 tasks

Create process for changing Locale Info #219

mattpen opened this issue Dec 18, 2023 · 3 comments
Assignees

Comments

@mattpen
Copy link
Contributor

mattpen commented Dec 18, 2023

The PhET project regularly gets requests for changes to Locale information and it is not always handled consistently. We should document the process for making sure that information changes are propogated efficiently throughout the whole project and automate the process, if possible. Systems that we know have dependencies on the data include: simulation builds (chipper & joist), rosetta, the website, desktop app, and possibly yotta and the mobile apps.

Use Cases:

  • Handling requests for new locales (keeping an eventual migration to ISO-639-3 (3-letter locale codes) in mind)
  • Handling requests for changing English and native names for locales

There is a backlog of change requests here: https://docs.google.com/spreadsheets/d/18PTbonJxJ9_vnhOqLx0QNPuA53UmIa1b5kLaYFz5qp4/edit#gid=1190768911

We should start by enumerating where locale information is stored and how it is created. This comment lists dependencies on the website site, and this issue lists dependencies on the sim side. After that we should decide where a authoritative copy of the data lives, and decide how other sources will derive from it.

Starting a list of issues that need to be addressed with this work:

@mattpen mattpen self-assigned this Dec 18, 2023
@mattpen
Copy link
Contributor Author

mattpen commented Dec 18, 2023

@jbphet suggested that the method rosetta uses may be effective for cross project purposes. In rosetta we request the file via HTTP from the Github Raw API. This data can be stale for ~5-10 minutes, but this should be acceptable becuase the data changes infrequently (1-2x/year)

@mattpen
Copy link
Contributor Author

mattpen commented Dec 19, 2023

After reviewing the project today I found that except for the website, all parts of the project that require localeInfo use one of the 3 files described in phetsims/chipper#1376. So I think here is what needs to happen:

  1. Migrate website-common's localeInfo.js to typescript.
  2. Migrate the types from website-meteor's localeInfo.ts to website-common.
  3. Update the export for localeInfo in website's AdminMainPage to use chipper/data/localeInfo.json as the source for localeInfo, and supplement with built-in Java data.
  4. Figure out how to consolidate the 3 sources in Locale info is specified 3x places chipper#1376 or update the comments so that it is clear what is needed when updates happen.

@mattpen
Copy link
Contributor Author

mattpen commented Dec 20, 2023

While working on updating the website, I saw that we had added a customization for the localized name for welsh(cy) that is Cymraeg, but this doesn't exist in the chipper files. I'm thinking we should add this to chipper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant