Hello Wikimedia developers! I am writing to update on a small change just in case it impacts you. If you don't write MediaWiki extensions on Wikimedia's Gerrit you can disregard this message.
# TLDR If you see a PHPUnit failure with the text "The following modules have not declared budgets", instructions on how to address this issue can be found in this email. The fix involves a small modification to bundlesize.config.json file that should already exist in your impacted repository. # Longer version In the Wikimedia ecosystem, adding significant JavaScript and CSS to page load can impact user experience, sometimes increasing the time it takes for a page to load or become responsive. This is particularly a concern for readers who may be using slower connections or need to get information as quickly as possible. A while back we introduced a test that required codebases to register ResourceLoader modules that they add to anonymous page views in a bundlesize.config.json file. This essential acts an audit to easily identify how code ends up on a page [1]. This only applies to code added by extensions and the Vector skin (not gadgets). When the test fails it points to a page on mediawiki.org that documents how to address problems with the test [2]. Recently we had several incidents where Vue.js and OOUI were loaded on page load for all anonymous users. For certain users this would have resulted in the page feeling unresponsive (e.g. frozen). This was because the test did not take into account the fact that JavaScript modules themselves can load additional dependencies. As a result of this the test has been updated to also consider such modules. IF you experience issues with tests following this change, the documentation contains all the information you should need to resolve it. If you have any further problems or the documentation isn't helping you, please ping me on the talk page, or Gerrit patch you are experiencing the issue, or on the Phabricator ticket [3] and we'll get it addressed ASAP (provided I'm not sleeping :-)). [1] https://codesearch.wmcloud.org/search/?q=maxSize&files=bundlesize.config.json&excludeFiles=&repos= [2] https://www.mediawiki.org/wiki/Performance_budgeting [3] https://phabricator.wikimedia.org/T395698
_______________________________________________ Wikitech-l mailing list -- wikitech-l@lists.wikimedia.org To unsubscribe send an email to wikitech-l-le...@lists.wikimedia.org https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/