Hi Marcin thanks for the question!

For now gadgets will still work as before. However on the long term please
see https://phabricator.wikimedia.org/T328610 where we are starting to make
preparations for changing that in future!

On Wed, Feb 1, 2023, 2:29 AM Marcin Szwarc <[email protected]> wrote:

> Hi,
>
>
>
> Does this change affect on-wiki gadgets as well? They do have an option to
> specify the target in the definition (and it’s „desktop” by default).
>
>
>
> User:Msz2001
>
>
>
>
>
> *Od: *Jon Robson <[email protected]>
> *Wysłano: *środa, 1 lutego 2023 00:47
> *Do: *Wikimedia developers <[email protected]>
> *Temat: *[Wikitech-l] PSA: ResourceLoader modules now default to mobile
> and desktop in 1.40
>
>
>
> TLDR: Any ResourceLoader module will now run on mobile or desktop site by
> default. Previously they would only load on the desktop site.
>
>
>
> Hopefully this goes without disruption, but to be safe, if you maintain
> code used in Wikimedia production, please:
>
> 1) check your experiences over the course of this week in mobile/desktop
> site for JS errors/obvious UI errors (the former will be detected and
> monitored via logstash)
> 2) check that your repository doesn't fail the core
> testUnsatisfiableDependencies PHPUnit test. 3) Please check out the
> following Phabricator tickets to see if you are impacted on the long term
> [4][5].
>
>
>
> # Background
>
>
>
> Back in the early days of MobileFrontend, most of the JavaScript we had
> was not mobile friendly. To avoid this we created an allow-list system,
> where JavaScript was disabled by default and extensions/skins had to
> explicitly enable it by adding a "targets" property to their
> ResourceLoaderModule definition.
>
>
>
> This was meant as a short term solution, but as with many things,
> attention got pulled elsewhere, and almost ten years later it was still
> there.
>
>
>
> There have been many complaints about this over those years. Mainly:
>
> 1) It means we have split the ResourceLoader cache further
>
> 2) It's not intuitive - new code was getting shipped to desktop only
> experiences by default.
>
> It also featured on the Developer Wishlist of 2017 at #34 [1].
>
> 3) Many older features don't work for community members for no credible
> reason.
>
>
>
> # Recent developments
>
>
>
> As one of the few remaining people responsible for doing this in the first
> time, I felt obliged to spend some time over December trying to pay off
> this technical debt. I audited code that was being removed by the targets
> system [2] and made the target explicit. Where modules were problematic on
> mobile, we marked them in such a way that it was clear that they should
> only run in a certain mode. This was only possible thanks to attention from
> Amir, Santosh, Thiemo, Lucas W, Tpt, Sohom D, Bartosz - thank you all.
>
>
> Today, Roan merged a change that makes ResourceLoader modules default to
> the desktop AND mobile sites. This should be a harmless change, but may be
> unintentionally triggering failures in testUnsatisfiableDependencies tests
> as it seems some extension/skins are not included in the MediaWiki core
> PHPUnit test run. If you encounter this issue, the fix is relatively simple
> - you must define targets explicitly (see this example [6] and apologies in
> advance for any annoyance this may cause)
>
>
>
> # For action
>
>
>
> Please take extra care with your code that you test on both mobile/desktop
> sites and at mobile/desktop breakpoints. It's still possible to ship code
> to mobile/desktop and see these guidelines [3] if you need to do that or
> reply to this email with any questions you have.
>
>
>
> # Next steps
>
>
>
> This change will help with limiting the targets system to existing known
> cases. This has been a long term request of the performance team. Please
> see the follow up tickets to see if there is any action from you at your
> leisure [4][5].
>
>
>
> [1] https://www.mediawiki.org/wiki/Developer_Wishlist/2017/results
>
> [2] in https://phabricator.wikimedia.org/T324723
>
> [3]
> https://www.mediawiki.org/wiki/ResourceLoader/Migration_guide_for_extension_developers#Target_system
>
> [4] https://phabricator.wikimedia.org/T328497
>
> [5] https://phabricator.wikimedia.org/T328498
>
> [6]
> https://gerrit.wikimedia.org/r/c/mediawiki/extensions/PropertySuggester/+/885432/
>
>
>
>
> _______________________________________________
> Wikitech-l mailing list -- [email protected]
> To unsubscribe send an email to [email protected]
> https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/
_______________________________________________
Wikitech-l mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/

Reply via email to