The Translate extension needs to be converted to use the new extension registration system. More details are available on T87875. From the duplicate task:
Most extensions have been converted to use extension.json by now. Translate, with it's lengthy setup file has eluded this conversion despite [[ https://gerrit.wikimedia.org/r/c/mediawiki/extensions/Translate/+/391645 | multiple attempts ]]. I think the reasons for this are:
* Fully automatic conversion is not possible with Translate
* The patch is huge and difficult to review manually
* The patch gets stale because it doesn't get reviewed in time
And the cycle repeats. My proposal to stop this cycle is to do it in smaller steps:
# Add a minimal extension-wip.json with extension info, add an unconditional `define( 'TRANSLATE_LOADED', 1 );add an unconditional `wfLoadExtension( 'Translate', wfLoadExtension( 'Translate' )` to Translate.php__DIR__ . Add a callback to extension.json that checks presence of `TRANSLATE_LOADED`. This is to guard from anyone calling `wfLoadExtension( 'Translate' )` directly before it is ready/extension-wip.json' )` to Translate.php.
# Move data to extension.json in smaller steps: e.g. one patch for resource loader modules, one patch for autoload and so on.
I propose we should try to finish the migration between MLEB releases. Next one is at the end of October, so we would have about seven weeks if we start now. Can this work?Special notes:
* extension.json name cannot be used before it is ready (Jenkins test fails)
* i18n things cannot be removed from Translate.php before extension.json is ready