Breaking changes/deprecations:
Please apply a patch like this to your twinkle due to these changes:
mediawiki.storage
is added as a new dependency. Edit your gadget definition anddev-loader.js
file to include it.loadAdditionalMediaWikiMessages()
is deprecated. Instead of using it, set extra messages inTwinkle.extraMwMessages
array, which would causeinit()
to fetch those too. That is, replaceTwinkle.preModuleInitHooks = [ () => loadAdditionalMediaWikiMessages(mwMessageList) ];
withTwinkle.extraMwMessages = mwMessageList;
. This change reduces the number of network requests needed to fetch all messages.
Notable improvements:
- This version brings significant performance improvements in:
- i18n messages fetched from Gerrit for non-English languages is now cached in the LocalStorage to avoid repeated, slow and mostly uncached requests to Gerrit on every page load.
- The overall bundle size is greatly reduced due to tree-shaking. The config property to enable this was missing earlier.
- The i18n library no longer bundles data like language fallbacks, plural rules and digit transforms for all languages. Rather these are now part of the i18n messages files and thus are retrieved only for the active language, without an additional network request.