dependencies: Migrate to ES module and organize dependencies

gi modules are always loaded (there is no API for "set version without
loading"), so
we need to break dependencies.js into three sections:

- Required
- Compile-time optional
- Runtime optional

Required dependencies are always imported, compile-time optional
dependencies
are loaded if gnome-shell is compiled with support for them, and for
runtime optional dependencies we catch any errors when attempting to
load them.
If runtime optional dependencies fail to load we log a debug-level
message.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2822>
This commit is contained in:
Evan Welsh 2023-07-09 23:34:52 -07:00
parent 7a5f1e5c9e
commit c2c4d84fc1
3 changed files with 74 additions and 34 deletions

View file

@ -6,6 +6,7 @@ overrides:
- js/ui/init.js
- js/ui/environment.js
- js/ui/scripting.js
- js/misc/dependencies.js
- js/dbusServices/**
- js/portalHelper/**
- subprojects/extensions-app/**