Extensions in GNOME 45 - New import system is not backwards compatible

https://lemmy.ndlug.org/post/151957

Extensions in GNOME 45 - New import system is not backwards compatible - NDLUG

> 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 [http://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.

Extensions that target older GNOME versions will not work in GNOME 45

So basically it's just another GNOME release gotcha.

Seriously though, a stable API is not the GTK/GNOME developers' agenda here. Nobody wanting a stable API should write software with this toolkit. That said, if you're a true front end aficionado and you're looking to make your software look awesome every six months, GNOME has got you so covered like the chocolate on a peanut M&M.

For those wanting to write software that won't magically kerslode without yet another recompile (or heavily relying on your distro to do that dirty work) stick with KDE/Qt group. They tend to be less breaky each release.

GNOME Shell breaks catastrophically every few months

Every time GNOME updates to a new version—it feels like it happens every few months—it breaks all my extensions. I rely on a number of extensions to get GNOME Shell to behave the way I want it to: Argos, so that I can display the output of commands I need to monitor Dash to Dock, to have a nicely working dock Pop Shell, for window tiling Tray Icons, so I can see what, e.g., Megasync is doing, without having a window open GSConnect, to interface with my phone Multi Monitors addon, since I use ...

GNOME Discourse

I had to orphan a very simple extension I wrote for gnome 3.2-3.10 It was a bugfix that for some reason upstream didn’t even want to acknowledge it existed, and never accepted the patch. So I made the extension, but after about a year of constant breakages I gave up.

That ordeal really made me feel unappreciated as a contributor.