gnome-shell/js
Florian Müllner ba46a1cf54 extensionSystem: Update immediately after major upgrades
Currently we periodically check for updated extensions, prepare
an update and perform it at the next login.

This is largely due to the fact that once an extension has been
loaded, its code is cached and reloading it would only make it
*appear* as updated, while in reality still running the old code.

Of course this only applies *once* we have loaded extensions.

Before that, it's possible to download and install updates, and
only then initialize extensions with their latest version.

The trade-off is that network requests, data download and extraction may
introduce a significant delay before extensions
are enabled. Most extensions modify the UI one way or another,
so that delay would likely be noticeable by the user.

Assuming that users are usually happy enough with the current
extension version, that trade-off doesn't seem worthwhile.

However there is an exception: After a major version update,
extensions are likely disabled as out-of-date, or at least
more likely to break (when the version check is disabled).

In that case delaying extension initialization to download
and install updates looks like the better trade-off, so do
that.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2951>
2023-09-15 12:54:41 +00:00
..
dbusServices cleanup: Fixup wrong JSDoc comments 2023-08-09 15:10:38 +00:00
extensions extensionBase: Use UUID as fallback gettext domain 2023-08-29 21:21:51 +00:00
gdm cleanup: Use type-safe comparisons 2023-08-09 15:10:38 +00:00
misc ibusManager: Add missing environment variables required to launch ibus-daemon 2023-09-14 16:02:29 +00:00
portalHelper js: Port Config to ESM 2023-08-10 17:42:23 +00:00
ui extensionSystem: Update immediately after major upgrades 2023-09-15 12:54:41 +00:00
js-resources.gresource.xml components: Change component loading to be asynchronous 2023-08-05 22:16:23 +02:00
meson.build extensions-app: Move Extensions app to new subproject 2020-03-27 23:33:30 +00:00
portal-resources.gresource.xml js/portal-resources: Add missing fileUtils to js path 2022-11-03 18:02:27 +00:00