diff --git a/browser/base/content/test/static/browser_all_files_referenced.js b/browser/base/content/test/static/browser_all_files_referenced.js index 2c0484771e4e..b2b760130744 100644 --- a/browser/base/content/test/static/browser_all_files_referenced.js +++ b/browser/base/content/test/static/browser_all_files_referenced.js @@ -363,7 +363,7 @@ if (!isDevtools) { // resource://devtools/shared/worker/loader.js, // resource://devtools/shared/loader/builtin-modules.js if (!AppConstants.ENABLE_WEBDRIVER) { - whitelist.add("resource://gre/modules/jsdebugger.jsm"); + whitelist.add("resource://gre/modules/jsdebugger.sys.mjs"); } } diff --git a/devtools/client/memory/test/xpcshell/head.js b/devtools/client/memory/test/xpcshell/head.js index 1c38531dee06..179ea544ff72 100644 --- a/devtools/client/memory/test/xpcshell/head.js +++ b/devtools/client/memory/test/xpcshell/head.js @@ -17,8 +17,8 @@ var { FileUtils } = ChromeUtils.import("resource://gre/modules/FileUtils.jsm"); var { expectState } = require("resource://devtools/server/actors/common.js"); var HeapSnapshotFileUtils = require("resource://devtools/shared/heapsnapshot/HeapSnapshotFileUtils.js"); var HeapAnalysesClient = require("resource://devtools/shared/heapsnapshot/HeapAnalysesClient.js"); -var { addDebuggerToGlobal } = ChromeUtils.import( - "resource://gre/modules/jsdebugger.jsm" +var { addDebuggerToGlobal } = ChromeUtils.importESModule( + "resource://gre/modules/jsdebugger.sys.mjs" ); var Store = require("resource://devtools/client/memory/store.js"); var { L10N } = require("resource://devtools/client/memory/utils.js"); diff --git a/devtools/docs/user/debugger-api/tutorial-allocation-log-tree/index.rst b/devtools/docs/user/debugger-api/tutorial-allocation-log-tree/index.rst index 0285055ef7cb..711e6f245b0c 100644 --- a/devtools/docs/user/debugger-api/tutorial-allocation-log-tree/index.rst +++ b/devtools/docs/user/debugger-api/tutorial-allocation-log-tree/index.rst @@ -34,8 +34,8 @@ This page shows how to use the :doc:`Debugger API <../index>` to show how many o // This defines the 'Debugger' constructor in this // Scratchpad; it doesn't actually start debugging anything. - const { addDebuggerToGlobal } = ChromeUtils.import( - 'resource://gre/modules/jsdebugger.jsm' + const { addDebuggerToGlobal } = ChromeUtils.importESModule( + 'resource://gre/modules/jsdebugger.sys.mjs' ); addDebuggerToGlobal(window); diff --git a/devtools/docs/user/debugger-api/tutorial-breakpoint/index.rst b/devtools/docs/user/debugger-api/tutorial-breakpoint/index.rst index 3985794f9319..fb56b14a3f24 100644 --- a/devtools/docs/user/debugger-api/tutorial-breakpoint/index.rst +++ b/devtools/docs/user/debugger-api/tutorial-breakpoint/index.rst @@ -40,8 +40,8 @@ This tutorial was tested against Firefox 58 Beta and Nightly. It does not work i .. code-block:: javascript - const { addDebuggerToGlobal } = ChromeUtils.import( - "resource://gre/modules/jsdebugger.jsm" + const { addDebuggerToGlobal } = ChromeUtils.importESModule( + "resource://gre/modules/jsdebugger.sys.mjs" ); const { console } = ChromeUtils.import( "resource://gre/modules/Console.jsm" diff --git a/devtools/platform/IJSDebugger.idl b/devtools/platform/IJSDebugger.idl index 92d5e472c67f..ec309a315f92 100644 --- a/devtools/platform/IJSDebugger.idl +++ b/devtools/platform/IJSDebugger.idl @@ -6,8 +6,8 @@ /** * Do not use this interface. Instead, write: - * const { addDebuggerToGlobal } = ChromeUtils.import( - * "resource://gre/modules/jsdebugger.jsm" + * const { addDebuggerToGlobal } = ChromeUtils.importESModule( + * "resource://gre/modules/jsdebugger.sys.mjs" * ); * addDebuggerToGlobal(global); */ diff --git a/devtools/platform/jsdebugger.jsm b/devtools/platform/jsdebugger.sys.mjs similarity index 91% rename from devtools/platform/jsdebugger.jsm rename to devtools/platform/jsdebugger.sys.mjs index 53be813286d4..a4af1fdbc3d4 100644 --- a/devtools/platform/jsdebugger.jsm +++ b/devtools/platform/jsdebugger.sys.mjs @@ -3,14 +3,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -"use strict"; - -var EXPORTED_SYMBOLS = ["addDebuggerToGlobal", "addSandboxedDebuggerToGlobal"]; - /* * This is the js module for Debugger. Import it like so: - * const { addDebuggerToGlobal } = ChromeUtils.import( - * "resource://gre/modules/jsdebugger.jsm" + * const { addDebuggerToGlobal } = ChromeUtils.importESModule( + * "resource://gre/modules/jsdebugger.sys.mjs" * ); * addDebuggerToGlobal(globalThis); * @@ -23,14 +19,15 @@ var EXPORTED_SYMBOLS = ["addDebuggerToGlobal", "addSandboxedDebuggerToGlobal"]; */ const init = Cc["@mozilla.org/jsdebugger;1"].createInstance(Ci.IJSDebugger); -function addDebuggerToGlobal(global) { + +export function addDebuggerToGlobal(global) { init.addClass(global); initPromiseDebugging(global); } // Defines the Debugger in a sandbox global in a separate compartment. This // ensures the debugger and debuggee are in different compartments. -function addSandboxedDebuggerToGlobal(global) { +export function addSandboxedDebuggerToGlobal(global) { const sb = Cu.Sandbox(global, { freshCompartment: true }); addDebuggerToGlobal(sb); global.Debugger = sb.Debugger; diff --git a/devtools/platform/moz.build b/devtools/platform/moz.build index 7e171a7d44a0..33be638e5b4b 100644 --- a/devtools/platform/moz.build +++ b/devtools/platform/moz.build @@ -23,7 +23,7 @@ XPCOM_MANIFESTS += [ ] EXTRA_JS_MODULES += [ - "jsdebugger.jsm", + "jsdebugger.sys.mjs", ] # The /devtools/moz.build opted in to treatment of devtools as a browser diff --git a/devtools/platform/tests/xpcshell/test_nativewrappers.js b/devtools/platform/tests/xpcshell/test_nativewrappers.js index 69af71822b80..973f33a46129 100644 --- a/devtools/platform/tests/xpcshell/test_nativewrappers.js +++ b/devtools/platform/tests/xpcshell/test_nativewrappers.js @@ -1,8 +1,8 @@ "use strict"; function run_test() { - const { addDebuggerToGlobal } = ChromeUtils.import( - "resource://gre/modules/jsdebugger.jsm" + const { addDebuggerToGlobal } = ChromeUtils.importESModule( + "resource://gre/modules/jsdebugger.sys.mjs" ); Services.prefs.setBoolPref("security.allow_eval_with_system_principal", true); diff --git a/devtools/server/actors/webconsole.js b/devtools/server/actors/webconsole.js index 0c7406111af2..8aaaf5beb98e 100644 --- a/devtools/server/actors/webconsole.js +++ b/devtools/server/actors/webconsole.js @@ -215,7 +215,7 @@ const WebConsoleActor = ActorClassWithSpec(webconsoleSpec, { /** * Debugger instance. * - * @see jsdebugger.jsm + * @see jsdebugger.sys.mjs */ dbg: null, diff --git a/devtools/server/tests/chrome/test_Debugger.Script.prototype.global.html b/devtools/server/tests/chrome/test_Debugger.Script.prototype.global.html index dda20a12ec4f..d403d6b4a3ba 100644 --- a/devtools/server/tests/chrome/test_Debugger.Script.prototype.global.html +++ b/devtools/server/tests/chrome/test_Debugger.Script.prototype.global.html @@ -16,7 +16,7 @@ Debugger.Script.prototype.global should return innerize globals, not WindowProxi