I dislike how easily #Gnome #extensions break between versions. Their API must freeze and backwards compatibility must be maintained, because objectively, there isn't a single user today who is not using extensions. Because simply, the system is unusable without them.

#linux #gnomeshell

@eugenialoli gnome extensions don't have api per se, they basically change the gnome implementation itself (not exactly but close enough) so it's not easy to make an API for that. If gnome made an extension api it would be way more limiting than the way it works now

@eugenialoli the problem is that there *is no API,* extensions work by monkey-patching internal GNOME Shell JavaScript. GNOME Shell devs actually work very hard to not change _internal_ code structure unless absolutely necessary—they avoid renaming or cleaning things up internally specifically to make extensions break less frequently.

An extensions API could theoretically be developed, but there is already more work than time/resources—and nobody has stepped up to develop it.

@eugenialoli I would be interested in a quick settings API, maybe, but I'm not sure things like completely changing the display of the panel or dash will ever be able to be abstracted into a table API without severely limiting what GNOME Shell developers could do to improve GNOME Shell itself.

@eugenialoli

You also need to check whether the extension is actually broken or whether it's just the developer who hasn't declared their extension's compatibility with the latest version of GNOME in the manifest (metadata.json).

Updates and Breakage | GNOME JavaScript

A Guide To GNOME JavaScript!

@eugenialoli I don't use any extension