# HG changeset patch # User Brian Grinstead # Date 1519759799 28800 # Node ID a3fce90849696d5d5f647db889cb0616f6095727 # Parent 941b25a777cea373a9b780b9ab44dce31210766b Bug 1440094 - Remove imports to Console.jsm that only access the 'console' object;r=mossop Importing this object is unnecessary after the updates to the WebIDL console from Bug 1425574 and the follow-ups blocking Bug 1430810. There are still callers that access Console.jsm to create custom ConsoleAPI objects, but those will be handled separately. MozReview-Commit-ID: 9ojFxtkpPId diff --git a/browser/base/content/sanitize.js b/browser/base/content/sanitize.js --- a/browser/base/content/sanitize.js +++ b/browser/base/content/sanitize.js @@ -10,17 +10,16 @@ ChromeUtils.import("resource://gre/modul XPCOMUtils.defineLazyModuleGetters(this, { AppConstants: "resource://gre/modules/AppConstants.jsm", PlacesUtils: "resource://gre/modules/PlacesUtils.jsm", FormHistory: "resource://gre/modules/FormHistory.jsm", Downloads: "resource://gre/modules/Downloads.jsm", DownloadsCommon: "resource:///modules/DownloadsCommon.jsm", TelemetryStopwatch: "resource://gre/modules/TelemetryStopwatch.jsm", - console: "resource://gre/modules/Console.jsm", setTimeout: "resource://gre/modules/Timer.jsm", }); XPCOMUtils.defineLazyServiceGetter(this, "serviceWorkerManager", "@mozilla.org/serviceworkers/manager;1", "nsIServiceWorkerManager"); XPCOMUtils.defineLazyServiceGetter(this, "quotaManagerService", "@mozilla.org/dom/quota-manager-service;1", diff --git a/browser/components/sessionstore/SessionFile.jsm b/browser/components/sessionstore/SessionFile.jsm --- a/browser/components/sessionstore/SessionFile.jsm +++ b/browser/components/sessionstore/SessionFile.jsm @@ -25,18 +25,16 @@ var EXPORTED_SYMBOLS = ["SessionFile"]; * This implementation uses OS.File, which guarantees property 1. */ ChromeUtils.import("resource://gre/modules/Services.jsm"); ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); ChromeUtils.import("resource://gre/modules/osfile.jsm"); ChromeUtils.import("resource://gre/modules/AsyncShutdown.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); ChromeUtils.defineModuleGetter(this, "PromiseUtils", "resource://gre/modules/PromiseUtils.jsm"); ChromeUtils.defineModuleGetter(this, "RunState", "resource:///modules/sessionstore/RunState.jsm"); ChromeUtils.defineModuleGetter(this, "TelemetryStopwatch", "resource://gre/modules/TelemetryStopwatch.jsm"); XPCOMUtils.defineLazyServiceGetter(this, "Telemetry", "@mozilla.org/base/telemetry;1", "nsITelemetry"); diff --git a/browser/components/sessionstore/SessionSaver.jsm b/browser/components/sessionstore/SessionSaver.jsm --- a/browser/components/sessionstore/SessionSaver.jsm +++ b/browser/components/sessionstore/SessionSaver.jsm @@ -8,17 +8,16 @@ var EXPORTED_SYMBOLS = ["SessionSaver"]; ChromeUtils.import("resource://gre/modules/Timer.jsm", this); ChromeUtils.import("resource://gre/modules/Services.jsm", this); ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm", this); ChromeUtils.import("resource://gre/modules/TelemetryStopwatch.jsm", this); XPCOMUtils.defineLazyModuleGetters(this, { AppConstants: "resource://gre/modules/AppConstants.jsm", - console: "resource://gre/modules/Console.jsm", PrivacyFilter: "resource:///modules/sessionstore/PrivacyFilter.jsm", RunState: "resource:///modules/sessionstore/RunState.jsm", SessionStore: "resource:///modules/sessionstore/SessionStore.jsm", SessionFile: "resource:///modules/sessionstore/SessionFile.jsm", PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm", }); /* diff --git a/browser/components/sessionstore/SessionStorage.jsm b/browser/components/sessionstore/SessionStorage.jsm --- a/browser/components/sessionstore/SessionStorage.jsm +++ b/browser/components/sessionstore/SessionStorage.jsm @@ -4,19 +4,16 @@ "use strict"; var EXPORTED_SYMBOLS = ["SessionStorage"]; ChromeUtils.import("resource://gre/modules/Services.jsm"); ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); - const ssu = Cc["@mozilla.org/browser/sessionstore/utils;1"] .createInstance(Ci.nsISessionStoreUtils); // A bound to the size of data to store for DOM Storage. const DOM_STORAGE_LIMIT_PREF = "browser.sessionstore.dom_storage_limit"; // Returns the principal for a given |frame| contained in a given |docShell|. function getPrincipalForFrame(docShell, frame) { diff --git a/browser/components/sessionstore/SessionStore.jsm b/browser/components/sessionstore/SessionStore.jsm --- a/browser/components/sessionstore/SessionStore.jsm +++ b/browser/components/sessionstore/SessionStore.jsm @@ -174,17 +174,16 @@ XPCOMUtils.defineLazyModuleGetters(this, SessionSaver: "resource:///modules/sessionstore/SessionSaver.jsm", TabAttributes: "resource:///modules/sessionstore/TabAttributes.jsm", TabCrashHandler: "resource:///modules/ContentCrashHandlers.jsm", TabState: "resource:///modules/sessionstore/TabState.jsm", TabStateCache: "resource:///modules/sessionstore/TabStateCache.jsm", TabStateFlusher: "resource:///modules/sessionstore/TabStateFlusher.jsm", Utils: "resource://gre/modules/sessionstore/Utils.jsm", ViewSourceBrowser: "resource://gre/modules/ViewSourceBrowser.jsm", - console: "resource://gre/modules/Console.jsm", setTimeout: "resource://gre/modules/Timer.jsm", }); /** * |true| if we are in debug mode, |false| otherwise. * Debug mode is controlled by preference browser.sessionstore.debug */ var gDebuggingEnabled = false; diff --git a/browser/components/sessionstore/StartupPerformance.jsm b/browser/components/sessionstore/StartupPerformance.jsm --- a/browser/components/sessionstore/StartupPerformance.jsm +++ b/browser/components/sessionstore/StartupPerformance.jsm @@ -5,18 +5,16 @@ "use strict"; var EXPORTED_SYMBOLS = ["StartupPerformance"]; ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm", this); ChromeUtils.defineModuleGetter(this, "Services", "resource://gre/modules/Services.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); ChromeUtils.defineModuleGetter(this, "setTimeout", "resource://gre/modules/Timer.jsm"); ChromeUtils.defineModuleGetter(this, "clearTimeout", "resource://gre/modules/Timer.jsm"); const COLLECT_RESULTS_AFTER_MS = 10000; const OBSERVED_TOPICS = ["sessionstore-restoring-on-startup", "sessionstore-initiating-manual-restore"]; diff --git a/browser/components/sessionstore/nsSessionStartup.js b/browser/components/sessionstore/nsSessionStartup.js --- a/browser/components/sessionstore/nsSessionStartup.js +++ b/browser/components/sessionstore/nsSessionStartup.js @@ -29,18 +29,16 @@ * browser.startup.page is set to 3. */ /* :::::::: Constants and Helpers ::::::::::::::: */ ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); ChromeUtils.import("resource://gre/modules/Services.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); ChromeUtils.defineModuleGetter(this, "SessionFile", "resource:///modules/sessionstore/SessionFile.jsm"); ChromeUtils.defineModuleGetter(this, "StartupPerformance", "resource:///modules/sessionstore/StartupPerformance.jsm"); ChromeUtils.defineModuleGetter(this, "CrashMonitor", "resource://gre/modules/CrashMonitor.jsm"); ChromeUtils.defineModuleGetter(this, "PrivateBrowsingUtils", "resource://gre/modules/PrivateBrowsingUtils.jsm"); diff --git a/browser/extensions/webcompat/content/lib/ua_overrider.jsm b/browser/extensions/webcompat/content/lib/ua_overrider.jsm --- a/browser/extensions/webcompat/content/lib/ua_overrider.jsm +++ b/browser/extensions/webcompat/content/lib/ua_overrider.jsm @@ -1,14 +1,13 @@ /* This Source Code Form is subject to the terms of the Mozilla Public * 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/. */ ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); -ChromeUtils.import("resource://gre/modules/Console.jsm"); const DefaultUA = Cc["@mozilla.org/network/protocol;1?name=http"].getService(Ci.nsIHttpProtocolHandler).userAgent; const NS_HTTP_ON_USERAGENT_REQUEST_TOPIC = "http-on-useragent-request"; ChromeUtils.defineModuleGetter(this, "Services", "resource://gre/modules/Services.jsm"); XPCOMUtils.defineLazyServiceGetter(this, "eTLDService", "@mozilla.org/network/effective-tld-service;1", "nsIEffectiveTLDService"); class UAOverrider { diff --git a/devtools/client/commandline/test/head.js b/devtools/client/commandline/test/head.js --- a/devtools/client/commandline/test/head.js +++ b/devtools/client/commandline/test/head.js @@ -6,17 +6,16 @@ /* import-globals-from mockCommands.js */ "use strict"; const TEST_BASE_HTTP = "http://example.com/browser/devtools/client/commandline/test/"; const TEST_BASE_HTTPS = "https://example.com/browser/devtools/client/commandline/test/"; var { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); -var { console } = require("resource://gre/modules/Console.jsm"); var flags = require("devtools/shared/flags"); // Import the GCLI test helper var testDir = gTestPath.substr(0, gTestPath.lastIndexOf("/")); Services.scriptloader.loadSubScript(testDir + "/helpers.js", this); Services.scriptloader.loadSubScript(testDir + "/mockCommands.js", this, "UTF-8"); flags.testing = true; diff --git a/devtools/client/framework/ToolboxProcess.jsm b/devtools/client/framework/ToolboxProcess.jsm --- a/devtools/client/framework/ToolboxProcess.jsm +++ b/devtools/client/framework/ToolboxProcess.jsm @@ -4,17 +4,16 @@ * 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"; const DBG_XUL = "chrome://devtools/content/framework/toolbox-process-window.xul"; const CHROME_DEBUGGER_PROFILE_NAME = "chrome_debugger_profile"; -const { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); const { require, DevToolsLoader } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const { XPCOMUtils } = require("resource://gre/modules/XPCOMUtils.jsm"); ChromeUtils.defineModuleGetter(this, "Subprocess", "resource://gre/modules/Subprocess.jsm"); XPCOMUtils.defineLazyGetter(this, "Telemetry", function () { return require("devtools/client/shared/telemetry"); }); XPCOMUtils.defineLazyGetter(this, "EventEmitter", function () { diff --git a/devtools/client/framework/test/shared-head.js b/devtools/client/framework/test/shared-head.js --- a/devtools/client/framework/test/shared-head.js +++ b/devtools/client/framework/test/shared-head.js @@ -31,17 +31,16 @@ PromiseTestUtils.whitelistRejectionsGlob PromiseTestUtils.whitelistRejectionsGlobally(/is no longer, usable/); PromiseTestUtils.whitelistRejectionsGlobally(/NS_ERROR_FAILURE/); PromiseTestUtils.whitelistRejectionsGlobally(/this\._urls is null/); PromiseTestUtils.whitelistRejectionsGlobally(/this\.tabTarget is null/); PromiseTestUtils.whitelistRejectionsGlobally(/this\.toolbox is null/); PromiseTestUtils.whitelistRejectionsGlobally(/this\.webConsoleClient is null/); PromiseTestUtils.whitelistRejectionsGlobally(/this\.worker is null/); -const {console} = scopedCuImport("resource://gre/modules/Console.jsm"); const {ScratchpadManager} = scopedCuImport("resource://devtools/client/scratchpad/scratchpad-manager.jsm"); const {loader, require} = scopedCuImport("resource://devtools/shared/Loader.jsm"); const {gDevTools} = require("devtools/client/framework/devtools"); const {TargetFactory} = require("devtools/client/framework/target"); const DevToolsUtils = require("devtools/shared/DevToolsUtils"); const flags = require("devtools/shared/flags"); let promise = require("promise"); diff --git a/devtools/client/memory/test/unit/head.js b/devtools/client/memory/test/unit/head.js --- a/devtools/client/memory/test/unit/head.js +++ b/devtools/client/memory/test/unit/head.js @@ -1,14 +1,13 @@ /* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; -var { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); var { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); var Services = require("Services"); var DevToolsUtils = require("devtools/shared/DevToolsUtils"); var flags = require("devtools/shared/flags"); flags.testing = true; flags.wantLogging = true; flags.wantVerbose = false; diff --git a/devtools/client/performance/test/unit/head.js b/devtools/client/performance/test/unit/head.js --- a/devtools/client/performance/test/unit/head.js +++ b/devtools/client/performance/test/unit/head.js @@ -1,16 +1,15 @@ /* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; /* exported Cc, Ci, Cu, Cr, Services, console, PLATFORM_DATA_PREF, getFrameNodePath, synthesizeProfileForTest */ var { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); var Services = require("Services"); -var { console } = require("resource://gre/modules/Console.jsm"); const RecordingUtils = require("devtools/shared/performance/recording-utils"); const PLATFORM_DATA_PREF = "devtools.performance.ui.show-platform-data"; /** * Get a path in a FrameNode call tree. */ function getFrameNodePath(root, path) { let calls = root.calls; diff --git a/devtools/client/scratchpad/test/head.js b/devtools/client/scratchpad/test/head.js --- a/devtools/client/scratchpad/test/head.js +++ b/devtools/client/scratchpad/test/head.js @@ -1,17 +1,16 @@ /* vim: set ts=2 et sw=2 tw=80: */ /* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; const {NetUtil} = ChromeUtils.import("resource://gre/modules/NetUtil.jsm", {}); const {FileUtils} = ChromeUtils.import("resource://gre/modules/FileUtils.jsm", {}); -const {console} = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); const {ScratchpadManager} = ChromeUtils.import("resource://devtools/client/scratchpad/scratchpad-manager.jsm", {}); const {require} = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const Services = require("Services"); const DevToolsUtils = require("devtools/shared/DevToolsUtils"); const flags = require("devtools/shared/flags"); const promise = require("promise"); const defer = require("devtools/shared/defer"); diff --git a/devtools/client/shared/vendor/stringvalidator/tests/unit/head_stringvalidator.js b/devtools/client/shared/vendor/stringvalidator/tests/unit/head_stringvalidator.js --- a/devtools/client/shared/vendor/stringvalidator/tests/unit/head_stringvalidator.js +++ b/devtools/client/shared/vendor/stringvalidator/tests/unit/head_stringvalidator.js @@ -1,12 +1,11 @@ "use strict"; const { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); -const { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); this.validator = require("devtools/client/shared/vendor/stringvalidator/validator"); function describe(suite, testFunc) { info(`\n Test suite: ${suite}`.toUpperCase()); testFunc(); } diff --git a/devtools/client/shared/widgets/AbstractTreeItem.jsm b/devtools/client/shared/widgets/AbstractTreeItem.jsm --- a/devtools/client/shared/widgets/AbstractTreeItem.jsm +++ b/devtools/client/shared/widgets/AbstractTreeItem.jsm @@ -7,19 +7,16 @@ const { require, loader } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const { XPCOMUtils } = require("resource://gre/modules/XPCOMUtils.jsm"); const { ViewHelpers } = require("devtools/client/shared/widgets/view-helpers"); const { KeyCodes } = require("devtools/client/shared/keycodes"); loader.lazyRequireGetter(this, "EventEmitter", "devtools/shared/old-event-emitter"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); - this.EXPORTED_SYMBOLS = ["AbstractTreeItem"]; /** * A very generic and low-level tree view implementation. It is not intended * to be used alone, but as a base class that you can extend to build your * own custom implementation. * * Language: diff --git a/devtools/client/shared/widgets/VariablesViewController.jsm b/devtools/client/shared/widgets/VariablesViewController.jsm --- a/devtools/client/shared/widgets/VariablesViewController.jsm +++ b/devtools/client/shared/widgets/VariablesViewController.jsm @@ -20,19 +20,16 @@ Object.defineProperty(this, "WebConsoleU configurable: true, enumerable: true }); XPCOMUtils.defineLazyGetter(this, "VARIABLES_SORTING_ENABLED", () => Services.prefs.getBoolPref("devtools.debugger.ui.variables-sorting-enabled") ); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); - const MAX_LONG_STRING_LENGTH = 200000; const MAX_PROPERTY_ITEMS = 2000; const DBG_STRINGS_URI = "devtools/client/locales/debugger.properties"; this.EXPORTED_SYMBOLS = ["VariablesViewController", "StackFrameUtils"]; /** * Localization convenience methods. diff --git a/devtools/client/styleeditor/StyleEditorUI.jsm b/devtools/client/styleeditor/StyleEditorUI.jsm --- a/devtools/client/styleeditor/StyleEditorUI.jsm +++ b/devtools/client/styleeditor/StyleEditorUI.jsm @@ -20,17 +20,16 @@ const { wire, showFilePicker, } = require("resource://devtools/client/styleeditor/StyleEditorUtil.jsm"); const {SplitView} = require("resource://devtools/client/shared/SplitView.jsm"); const {StyleSheetEditor} = require("resource://devtools/client/styleeditor/StyleSheetEditor.jsm"); const {PluralForm} = require("devtools/shared/plural-form"); const {PrefObserver} = require("devtools/client/shared/prefs"); const csscoverage = require("devtools/shared/fronts/csscoverage"); -const {console} = require("resource://gre/modules/Console.jsm"); const {KeyCodes} = require("devtools/client/shared/keycodes"); loader.lazyRequireGetter(this, "ResponsiveUIManager", "devtools/client/responsivedesign/responsivedesign"); const LOAD_ERROR = "error-load"; const STYLE_EDITOR_TEMPLATE = "stylesheet"; const SELECTOR_HIGHLIGHTER_TYPE = "SelectorHighlighter"; const PREF_MEDIA_SIDEBAR = "devtools.styleeditor.showMediaSidebar"; diff --git a/devtools/client/styleeditor/StyleEditorUtil.jsm b/devtools/client/styleeditor/StyleEditorUtil.jsm --- a/devtools/client/styleeditor/StyleEditorUtil.jsm +++ b/devtools/client/styleeditor/StyleEditorUtil.jsm @@ -16,17 +16,16 @@ this.EXPORTED_SYMBOLS = [ "wire", "showFilePicker" ]; const PROPERTIES_URL = "chrome://devtools/locale/styleeditor.properties"; const {require} = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const Services = require("Services"); -const console = require("resource://gre/modules/Console.jsm").console; const gStringBundle = Services.strings.createBundle(PROPERTIES_URL); /** * Returns a localized string with the given key name from the string bundle. * * @param name * @param ...rest * Optional arguments to format in the string. diff --git a/devtools/client/styleeditor/StyleSheetEditor.jsm b/devtools/client/styleeditor/StyleSheetEditor.jsm --- a/devtools/client/styleeditor/StyleSheetEditor.jsm +++ b/devtools/client/styleeditor/StyleSheetEditor.jsm @@ -6,17 +6,16 @@ "use strict"; this.EXPORTED_SYMBOLS = ["StyleSheetEditor"]; const {require} = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const Editor = require("devtools/client/sourceeditor/editor"); const promise = require("promise"); const {shortSource, prettifyCSS} = require("devtools/shared/inspector/css-logic"); -const {console} = require("resource://gre/modules/Console.jsm"); const Services = require("Services"); const EventEmitter = require("devtools/shared/old-event-emitter"); const {Task} = require("devtools/shared/task"); const {FileUtils} = require("resource://gre/modules/FileUtils.jsm"); const {NetUtil} = require("resource://gre/modules/NetUtil.jsm"); const {OS} = ChromeUtils.import("resource://gre/modules/osfile.jsm", {}); const { getString, diff --git a/devtools/client/webconsole/test/browser_console_consolejsm_output.js b/devtools/client/webconsole/test/browser_console_consolejsm_output.js --- a/devtools/client/webconsole/test/browser_console_consolejsm_output.js +++ b/devtools/client/webconsole/test/browser_console_consolejsm_output.js @@ -16,17 +16,16 @@ function onNewMessage(aEvent, aNewMessag } } add_task(function* () { let consoleStorage = Cc["@mozilla.org/consoleAPI-storage;1"]; let storage = consoleStorage.getService(Ci.nsIConsoleAPIStorage); storage.clearEvents(); - let {console} = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); console.log("bug861338-log-cached"); let hud = yield HUDService.toggleBrowserConsole(); yield waitForMessages({ webconsole: hud, messages: [{ name: "cached console.log message", @@ -283,17 +282,16 @@ add_task(function* testMaxLogLevelPref() hud.ui.off("new-messages", onNewMessage); yield HUDService.toggleBrowserConsole(); }); // Test that console.profile/profileEnd trigger the right events add_task(function* testProfile() { let consoleStorage = Cc["@mozilla.org/consoleAPI-storage;1"]; let storage = consoleStorage.getService(Ci.nsIConsoleAPIStorage); - let { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); storage.clearEvents(); let profilerEvents = []; function observer(subject, topic) { is(topic, "console-api-profiler", "The topic is 'console-api-profiler'"); const subjectObj = subject.wrappedJSObject; diff --git a/devtools/server/tests/unit/head_dbg.js b/devtools/server/tests/unit/head_dbg.js --- a/devtools/server/tests/unit/head_dbg.js +++ b/devtools/server/tests/unit/head_dbg.js @@ -18,17 +18,16 @@ ChromeUtils.import("resource://testing-c crashReporter: true, }); const { require, loader } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const { worker } = ChromeUtils.import("resource://devtools/shared/worker/loader.js", {}); const promise = require("promise"); const defer = require("devtools/shared/defer"); const { Task } = require("devtools/shared/task"); -const { console } = require("resource://gre/modules/Console.jsm"); const { NetUtil } = require("resource://gre/modules/NetUtil.jsm"); const Services = require("Services"); // Always log packets when running tests. runxpcshelltests.py will throw // the output away anyway, unless you give it the --verbose flag. Services.prefs.setBoolPref("devtools.debugger.log", true); // Enable remote debugging for the relevant tests. Services.prefs.setBoolPref("devtools.debugger.remote-enabled", true); diff --git a/devtools/shared/Parser.jsm b/devtools/shared/Parser.jsm --- a/devtools/shared/Parser.jsm +++ b/devtools/shared/Parser.jsm @@ -2,17 +2,16 @@ /* vim: set ft=javascript ts=2 et sw=2 tw=80: */ /* This Source Code Form is subject to the terms of the Mozilla Public * 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"; const { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const { XPCOMUtils } = require("resource://gre/modules/XPCOMUtils.jsm"); -const { console } = require("resource://gre/modules/Console.jsm"); const DevToolsUtils = require("devtools/shared/DevToolsUtils"); ChromeUtils.defineModuleGetter(this, "Reflect", "resource://gre/modules/reflect.jsm"); this.EXPORTED_SYMBOLS = ["Parser", "ParserHelpers", "SyntaxTreeVisitor"]; /** diff --git a/devtools/shared/builtin-modules.js b/devtools/shared/builtin-modules.js --- a/devtools/shared/builtin-modules.js +++ b/devtools/shared/builtin-modules.js @@ -210,16 +210,17 @@ defineLazyGetter(exports.modules, "xpcIn // List of all custom globals exposed to devtools modules. // Changes here should be mirrored to devtools/.eslintrc. exports.globals = { isWorker: false, reportError: Cu.reportError, atob: atob, btoa: btoa, + console: console, TextEncoder: TextEncoder, TextDecoder: TextDecoder, URL, CSS, loader: { lazyGetter: defineLazyGetter, lazyImporter: defineLazyModuleGetter, lazyServiceGetter: defineLazyServiceGetter, @@ -269,19 +270,16 @@ function lazyGlobal(name, getter) { }, configurable: true, enumerable: true }); } // Lazily define a few things so that the corresponding jsms are only loaded // when used. -lazyGlobal("console", () => { - return require("resource://gre/modules/Console.jsm").console; -}); lazyGlobal("clearTimeout", () => { return require("resource://gre/modules/Timer.jsm").clearTimeout; }); lazyGlobal("setTimeout", () => { return require("resource://gre/modules/Timer.jsm").setTimeout; }); lazyGlobal("clearInterval", () => { return require("resource://gre/modules/Timer.jsm").clearInterval; diff --git a/devtools/shared/builtin-modules.js.1440094-2.later b/devtools/shared/builtin-modules.js.1440094-2.later new file mode 100644 --- /dev/null +++ b/devtools/shared/builtin-modules.js.1440094-2.later @@ -0,0 +1,21 @@ +--- builtin-modules.js ++++ builtin-modules.js +@@ -13,17 +13,17 @@ + * they would also miss them. + */ + + const { Cu, CC, Cc, Ci } = require("chrome"); + const promise = require("resource://gre/modules/Promise.jsm").Promise; + const jsmScope = require("resource://gre/modules/Services.jsm"); + const { Services } = jsmScope; + // Steal various globals only available in JSM scope (and not Sandbox one) +-const { ChromeUtils, HeapSnapshot, XMLHttpRequest, ++const { ChromeUtils, HeapSnapshot, XMLHttpRequest, console, + atob, btoa, TextEncoder, TextDecoder } = Cu.getGlobalForObject(jsmScope); + + // Create a single Sandbox to access global properties needed in this module. + // Sandbox are memory expensive, so we should create as little as possible. + const { CSS, CSSRule, FileReader, indexedDB, InspectorUtils, URL } = + Cu.Sandbox(CC("@mozilla.org/systemprincipal;1", "nsIPrincipal")(), { + wantGlobalProperties: [ + "CSS", "CSSRule", "FileReader", "indexedDB", "InspectorUtils", "URL", diff --git a/devtools/shared/pretty-fast/tests/unit/head_pretty-fast.js b/devtools/shared/pretty-fast/tests/unit/head_pretty-fast.js --- a/devtools/shared/pretty-fast/tests/unit/head_pretty-fast.js +++ b/devtools/shared/pretty-fast/tests/unit/head_pretty-fast.js @@ -1,16 +1,15 @@ "use strict"; const { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); this.sourceMap = require("source-map"); this.acorn = require("acorn/acorn"); this.prettyFast = require("devtools/shared/pretty-fast/pretty-fast"); -const { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); // Register a console listener, so console messages don't just disappear // into the ether. var errorCount = 0; var listener = { observe: function (aMessage) { errorCount++; try { diff --git a/devtools/shared/shims/Console.jsm b/devtools/shared/shims/Console.jsm --- a/devtools/shared/shims/Console.jsm +++ b/devtools/shared/shims/Console.jsm @@ -15,19 +15,11 @@ const WARNING_PREF = "devtools.migration if (Services.prefs.getBoolPref(WARNING_PREF)) { const { Deprecated } = Cu.import("resource://gre/modules/Deprecated.jsm", {}); Deprecated.warning("This path to Console.jsm is deprecated. Please use " + "Cu.import(\"resource://gre/modules/Console.jsm\") " + "to load this module.", "https://bugzil.la/912121"); } -this.EXPORTED_SYMBOLS = [ - "console", - "ConsoleAPI" -]; - -const module = - Cu.import("resource://gre/modules/Console.jsm", {}); - -for (let symbol of this.EXPORTED_SYMBOLS) { - this[symbol] = module[symbol]; -} +this.console = console; +this.ConsoleAPI = + Cu.import("resource://gre/modules/Console.jsm", {}).ConsoleAPI; diff --git a/devtools/shared/tests/unit/test_console_filtering.js b/devtools/shared/tests/unit/test_console_filtering.js --- a/devtools/shared/tests/unit/test_console_filtering.js +++ b/devtools/shared/tests/unit/test_console_filtering.js @@ -1,14 +1,14 @@ /* Any copyright is dedicated to the Public Domain. http://creativecommons.org/publicdomain/zero/1.0/ */ "use strict"; -const { console, ConsoleAPI } = require("resource://gre/modules/Console.jsm"); +const { ConsoleAPI } = require("resource://gre/modules/Console.jsm"); const { ConsoleAPIListener } = require("devtools/server/actors/webconsole/listeners"); const Services = require("Services"); var seenMessages = 0; var seenTypes = 0; var callback = { onConsoleAPICall: function (message) { diff --git a/devtools/shared/webconsole/test/common.js b/devtools/shared/webconsole/test/common.js --- a/devtools/shared/webconsole/test/common.js +++ b/devtools/shared/webconsole/test/common.js @@ -5,18 +5,16 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; /* exported ObjectClient, attachConsole, attachConsoleToTab, attachConsoleToWorker, closeDebugger, checkConsoleAPICalls, checkRawHeaders, runTests, nextTest, Ci, Cc, withActiveServiceWorker, Services */ -// This gives logging to stdout for tests -const {console} = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); const {require} = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); const {Task} = require("devtools/shared/task"); const {DebuggerServer} = require("devtools/server/main"); const {DebuggerClient} = require("devtools/shared/client/debugger-client"); const ObjectClient = require("devtools/shared/client/object-client"); const Services = require("Services"); function initCommon() { diff --git a/devtools/shared/worker/worker.js b/devtools/shared/worker/worker.js --- a/devtools/shared/worker/worker.js +++ b/devtools/shared/worker/worker.js @@ -12,17 +12,17 @@ const { Cc, Ci, Cu, ChromeWorker } = require("chrome"); const dumpn = require("devtools/shared/DevToolsUtils").dumpn; factory.call(this, require, exports, module, { Cc, Ci, Cu }, ChromeWorker, dumpn); } else { // Cu.import const { require } = ChromeUtils.import("resource://devtools/shared/Loader.jsm", {}); this.isWorker = false; this.Promise = require("resource://gre/modules/Promise.jsm").Promise; - this.console = require("resource://gre/modules/Console.jsm").console; + this.console = console; factory.call( this, require, this, { exports: this }, { Cc, Ci, Cu }, ChromeWorker, null ); this.EXPORTED_SYMBOLS = ["DevToolsWorker"]; } }).call(this, function (require, exports, module, { Ci, Cc }, ChromeWorker, dumpn) { let MESSAGE_COUNTER = 0; diff --git a/devtools/startup/devtools-startup.js b/devtools/startup/devtools-startup.js --- a/devtools/startup/devtools-startup.js +++ b/devtools/startup/devtools-startup.js @@ -552,17 +552,16 @@ DevToolsStartup.prototype = { gBrowser.selectedTab = gBrowser.addTab(url, {relatedToCurrent: true}); }, handleConsoleFlag: function (cmdLine) { let window = Services.wm.getMostRecentWindow("devtools:webconsole"); if (!window) { let require = this.initDevTools("CommandLine"); let { HUDService } = require("devtools/client/webconsole/hudservice"); - let { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); HUDService.toggleBrowserConsole().catch(console.error); } else { // the Browser Console was already open window.focus(); } if (cmdLine.state == Ci.nsICommandLine.STATE_REMOTE_AUTO) { cmdLine.preventDefault = true; @@ -580,24 +579,22 @@ DevToolsStartup.prototype = { _isRemoteDebuggingEnabled() { let remoteDebuggingEnabled = false; try { remoteDebuggingEnabled = kDebuggerPrefs.every(pref => { return Services.prefs.getBoolPref(pref); }); } catch (ex) { - let { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); console.error(ex); return false; } if (!remoteDebuggingEnabled) { let errorMsg = "Could not run chrome debugger! You need the following " + "prefs to be set to true: " + kDebuggerPrefs.join(", "); - let { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); console.error(new Error(errorMsg)); // Dump as well, as we're doing this from a commandline, make sure people // don't miss it: dump(errorMsg + "\n"); } return remoteDebuggingEnabled; }, diff --git a/intl/l10n/Localization.jsm b/intl/l10n/Localization.jsm --- a/intl/l10n/Localization.jsm +++ b/intl/l10n/Localization.jsm @@ -427,17 +427,16 @@ function keysFromContext(method, ctx, ke if (messageErrors.length === 0 || !messageErrors.some(e => e instanceof L10nError)) { translations[i] = translation; } else { hasErrors = true; } if (messageErrors.length) { - const { console } = ChromeUtils.import("resource://gre/modules/Console.jsm", {}); messageErrors.forEach(error => console.warn(error)); } }); return hasErrors; } this.Localization = Localization; diff --git a/testing/talos/talos/talos-powers/content/TalosParentProfiler.js b/testing/talos/talos/talos-powers/content/TalosParentProfiler.js --- a/testing/talos/talos/talos-powers/content/TalosParentProfiler.js +++ b/testing/talos/talos/talos-powers/content/TalosParentProfiler.js @@ -13,17 +13,16 @@ * If your test is running in the content process, you should use * TalosContentProfiler.js instead. */ var TalosParentProfiler; (function() { ChromeUtils.import("resource://gre/modules/Services.jsm"); - ChromeUtils.import("resource://gre/modules/Console.jsm"); // Whether or not this TalosContentProfiler object has had initFromObject // or initFromURLQueryParams called on it. Any functions that change the // state of the Gecko Profiler should only be called after calling either // initFromObject or initFromURLQueryParams. let initted = Services.profiler.IsActive(); // The subtest name that beginTest() was called with. diff --git a/toolkit/components/addoncompat/CompatWarning.jsm b/toolkit/components/addoncompat/CompatWarning.jsm --- a/toolkit/components/addoncompat/CompatWarning.jsm +++ b/toolkit/components/addoncompat/CompatWarning.jsm @@ -3,19 +3,16 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/. var EXPORTED_SYMBOLS = ["CompatWarning"]; ChromeUtils.import("resource://gre/modules/Services.jsm"); ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); ChromeUtils.import("resource://gre/modules/Preferences.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); - function section(number, url) { const baseURL = "https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts"; return { number, url: baseURL + url }; } var CompatWarning = { // Sometimes we want to generate a warning, but put off issuing it // until later. For example, if someone registers a listener, we diff --git a/toolkit/components/places/PlacesTransactions.jsm b/toolkit/components/places/PlacesTransactions.jsm --- a/toolkit/components/places/PlacesTransactions.jsm +++ b/toolkit/components/places/PlacesTransactions.jsm @@ -175,18 +175,16 @@ var EXPORTED_SYMBOLS = ["PlacesTransacti */ const TRANSACTIONS_QUEUE_TIMEOUT_MS = 240000; // 4 Mins. ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); ChromeUtils.import("resource://gre/modules/Services.jsm"); ChromeUtils.defineModuleGetter(this, "PlacesUtils", "resource://gre/modules/PlacesUtils.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); Cu.importGlobalProperties(["URL"]); function setTimeout(callback, ms) { let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer); timer.initWithCallback(callback, ms, timer.TYPE_ONE_SHOT); } diff --git a/toolkit/modules/E10SUtils.jsm b/toolkit/modules/E10SUtils.jsm --- a/toolkit/modules/E10SUtils.jsm +++ b/toolkit/modules/E10SUtils.jsm @@ -10,18 +10,16 @@ ChromeUtils.import("resource://gre/modul ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); XPCOMUtils.defineLazyPreferenceGetter(this, "useSeparateFileUriProcess", "browser.tabs.remote.separateFileUriProcess", false); XPCOMUtils.defineLazyPreferenceGetter(this, "allowLinkedWebInFileUriProcess", "browser.tabs.remote.allowLinkedWebInFileUriProcess", false); ChromeUtils.defineModuleGetter(this, "Utils", "resource://gre/modules/sessionstore/Utils.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); function getAboutModule(aURL) { // Needs to match NS_GetAboutModuleName let moduleName = aURL.path.replace(/[#?].*/, "").toLowerCase(); let contract = "@mozilla.org/network/protocol/about;1?what=" + moduleName; try { return Cc[contract].getService(Ci.nsIAboutModule); } catch (e) { diff --git a/toolkit/modules/EventEmitter.jsm b/toolkit/modules/EventEmitter.jsm --- a/toolkit/modules/EventEmitter.jsm +++ b/toolkit/modules/EventEmitter.jsm @@ -2,19 +2,16 @@ * 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"; ChromeUtils.import("resource://gre/modules/Services.jsm"); ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm"); -ChromeUtils.defineModuleGetter(this, "console", - "resource://gre/modules/Console.jsm"); - var EXPORTED_SYMBOLS = ["EventEmitter"]; let EventEmitter = this.EventEmitter = function() {}; let loggingEnabled = Services.prefs.getBoolPref("toolkit.dump.emit"); Services.prefs.addObserver("toolkit.dump.emit", { observe: () => { loggingEnabled = Services.prefs.getBoolPref("toolkit.dump.emit"); diff --git a/toolkit/modules/Sqlite.jsm b/toolkit/modules/Sqlite.jsm --- a/toolkit/modules/Sqlite.jsm +++ b/toolkit/modules/Sqlite.jsm @@ -17,17 +17,16 @@ ChromeUtils.import("resource://gre/modul XPCOMUtils.defineLazyModuleGetters(this, { AsyncShutdown: "resource://gre/modules/AsyncShutdown.jsm", Services: "resource://gre/modules/Services.jsm", OS: "resource://gre/modules/osfile.jsm", Log: "resource://gre/modules/Log.jsm", FileUtils: "resource://gre/modules/FileUtils.jsm", Task: "resource://gre/modules/Task.jsm", PromiseUtils: "resource://gre/modules/PromiseUtils.jsm", - console: "resource://gre/modules/Console.jsm", }); XPCOMUtils.defineLazyServiceGetter(this, "FinalizationWitnessService", "@mozilla.org/toolkit/finalizationwitness;1", "nsIFinalizationWitnessService"); // Regular expression used by isInvalidBoundLikeQuery var likeSqlRegex = /\bLIKE\b\s(?![@:?])/i;