Skip to content

Commit c35e1b5

Browse files
Don't import ExperimentAPI or RemoteSettingsExperimentLoader directly
We have to stop using these ESMs directly because they are changing from exporting singletons to just the classes. See [bug 1950237][1] and [bug 1907633][2]. [1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1950237 [2]: https://bugzilla.mozilla.org/show_bug.cgi?id=1907633 Fixes #86
1 parent 742a92e commit c35e1b5

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

src/apis/nimbus.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,23 @@ ChromeUtils.defineESModuleGetters(lazy, {
1212
ClientEnvironmentBase:
1313
"resource://gre/modules/components-utils/ClientEnvironment.sys.mjs",
1414
ExperimentAPI: "resource://nimbus/ExperimentAPI.sys.mjs",
15-
ExperimentManager: "resource://nimbus/lib/ExperimentManager.sys.mjs",
1615
FilterExpressions:
1716
"resource://gre/modules/components-utils/FilterExpressions.sys.mjs",
1817
NimbusFeatures: "resource://nimbus/ExperimentAPI.sys.mjs",
19-
RemoteSettingsExperimentLoader:
20-
"resource://nimbus/lib/RemoteSettingsExperimentLoader.sys.mjs",
2118
TelemetryEnvironment: "resource://gre/modules/TelemetryEnvironment.sys.mjs",
2219
});
2320

21+
ChromeUtils.defineLazyGetter(
22+
lazy,
23+
"ExperimentManager",
24+
() => lazy.ExperimentAPI._manager,
25+
);
26+
ChromeUtils.defineLazyGetter(
27+
lazy,
28+
"RemoteSettingsExperimentLoader",
29+
() => lazy.ExperimentAPI._rsLoader,
30+
);
31+
2432
var nimbus = class extends ExtensionAPI {
2533
getAPI() {
2634
const { ExtensionError } = ExtensionUtils;

src/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"browser_specific_settings": {
66
"gecko": {
77
8-
"strict_min_version": "113.0.a1"
8+
"strict_min_version": "137.0.a1"
99
}
1010
},
1111
"permissions": ["mozillaAddons"],

0 commit comments

Comments
 (0)