By now it is probably no longer news to many: GNOME Shell moved from GJS’ own custom imports system to standard JavaScript modules (ESM).

Extensions that target older GNOME versions will not work in GNOME 45. Likewise, extensions that are adapted to work with GNOME 45 will not work in older versions.

You can still support more than one GNOME version, but you will have to upload different versions to extensions.gnome.org for pre- and post-45 support.

Please file bugs with your favorite extensions or have a friendly conversation with your extension writers so that we can help minimize the impact of this change. Ideally, you could help with the port and provide a pull or merge request to help maintainers.

  • bennyp
    link
    fedilink
    36
    edit-2
    1 year ago

    It will be annoying for a minute but this change is good: it will help developers ship extensions faster and with fewer bugs by using standard JavaScript modules and IDE support. As mentioned in the blog: modules were standardized in 2015! At what point does it become acceptable to drop non-standard features?

    • _cnt0
      link
      fedilink
      01 year ago

      it will help developers

      Until they break it.

      ship extensions faster

      Which they need to adress the regular breakages.

      and with fewer bugs by using standard JavaScript modules and IDE support

      If I wanted to suffer web technologies, I’d develop content targeting web browsers, not a DE. JavaScript does a lot of things, being conducive to bug free code is not one of them.

      I really admire the pain tolerance and endurance of devs developing and maintaining extensions for gnome. At what point does it become acceptable for them to drop that garbage DE? Rhetoric question: always has been.

      • @Eldritch
        link
        21 year ago

        This. There’s a reason I don’t run gnome. It’s not because I don’t like it overall. It’s fine. Though as others have said it needs extensions. But simply because with every major version every extension breaks. It’s slight hyperbole, but only just. Fucking maddening.

        • _cnt0
          link
          fedilink
          11 year ago

          You know that that is only an option and not a forced replacement for the “proper” API, right? Nobody is stopping you/me from writing plasmoid logic in C++.