Backed out 4 changesets (bug 1533831) for failing at /browser/browser_target.js on a CLOSED TREE.
authorGurzau Raul <rgurzau@mozilla.com>
Thu, 18 Apr 2019 05:35:54 +0300
changeset 469957 715ae7cfb2d11cc68f8a8d26ad5342d3cbf0ab17
parent 469956 8515e58392b724460b731fe12881de75a2397c0a
child 469958 212b470175716a1d5f9972b53260e45cf0205bde
push id35884
push userapavel@mozilla.com
push dateThu, 18 Apr 2019 21:35:00 +0000
treeherdermozilla-central@74dc09642c22 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1533831
milestone68.0a1
backs out94fd0790781ab6979840a602ddc987de5a7668f0
d32384388e3d28bafb8cc078d98994bb27953553
bd363475667fe35e455f496c0c727526d5bb9e9d
b818d6ca606d15354929e7c5a65b6448e7d43eef
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out 4 changesets (bug 1533831) for failing at /browser/browser_target.js on a CLOSED TREE. Backed out changeset 94fd0790781a (bug 1533831) Backed out changeset d32384388e3d (bug 1533831) Backed out changeset bd363475667f (bug 1533831) Backed out changeset b818d6ca606d (bug 1533831)
remote/README
remote/command-line-handler.js
remote/doc/Building.md
remote/doc/Debugging.md
remote/doc/Prefs.md
remote/doc/Testing.md
remote/pref/remote.js
remote/test/browser/browser.ini
toolkit/moz.configure
--- a/remote/README
+++ b/remote/README
@@ -7,12 +7,17 @@ simulate user interaction for automation
 JavaScript execution.
 
 This component provides an experimental and partial implementation
 of a remote devtools interface using the CDP protocol and transport
 layer.
 
 See https://firefox-source-docs.mozilla.org/remote/ for documentation.
 
-The remote agent is disabled by default, but can be enabled by
-setting a preference before running it:
+The remote agent is not by default included in Firefox builds.  To
+build it, put this in your mozconfig:
+
+	ac_add_options --enable-cdp
 
-	% ./mach run --setpref "remote.enabled=true" --remote-debugger
+This exposes a --remote-debugger flag you can use to start the
+remote agent:
+
+	% ./mach run --setpref "browser.fission.simulate=true" -- --remote-debugger
--- a/remote/command-line-handler.js
+++ b/remote/command-line-handler.js
@@ -1,31 +1,24 @@
 /* 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";
 
 // Stopgap module until we can land bug 1536862 and remove this temporary file
 
-const {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");
+const {RemoteAgent} = ChromeUtils.import("chrome://remote/content/RemoteAgent.jsm");
 const {XPCOMUtils} = ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
 
-ChromeUtils.defineModuleGetter(this, "RemoteAgent",
-    "chrome://remote/content/RemoteAgent.jsm");
-
 const RemoteAgentFactory = {
   createInstance(outer, iid) {
     if (outer) {
       throw Cr.NS_ERROR_NO_AGGREGATION;
     }
-    // we can't use Preferences.jsm before first paint
-    if (!Services.prefs.getBoolPref("remote.enabled")) {
-      return {};
-    }
 
     return RemoteAgent.QueryInterface(iid);
   },
 };
 
 function RemoteAgentComponent() {}
 
 RemoteAgentComponent.prototype = {
--- a/remote/doc/Building.md
+++ b/remote/doc/Building.md
@@ -1,49 +1,25 @@
 Building
 ========
 
-The remote agent is included in the default Firefox build, but
-disabled by default.  To expose the remote agent you can set the
-`remote.enabled` preference to true before running it:
+The remote agent is by default not included in Firefox builds.
+To build it, put this in your [mozconfig]:
 
-	% ./mach run --setpref="remote.enabled=true" --remote-debugger
-
-The source code is found under `$(topsrcdir)/remote`.
+	ac_add_options --enable-cdp
 
-Full build mode
----------------
+This exposes a `--remote-debugger` flag you can use to start the
+remote agent:
 
-The remote agent supports only Firefox, and is included when you
-build in the usual way:
+	% ./mach run --setpref "browser.fission.simulate=true" -- --remote-debugger
 
-	% ./mach build
-
-When you make changes to XPCOM component files you need to rebuild
+When you make changes to the XPCOM component you need to rebuild
 in order for the changes to take effect.  The most efficient way to
 do this, provided you haven’t touched any compiled code (C++ or Rust):
 
 	% ./mach build faster
 
-Component files include the likes of command-line-handler.js,
-RemoteAgent.manifest, moz.build files, prefs/remote.js, and jar.mn.
-All the JS modules (files ending with `.jsm`) are symlinked into
-the build and can be changed without rebuilding.
-
-You may also opt out of building the remote agent entirely by setting
-the `--disable-cdp` build flag in your [mozconfig]:
-
-	ac_add_options --disable-cdp
-
-
-Artifact mode
--------------
-
-You may also use [artifact builds] when working on the remote agent.
-This fast build mode downloads pre-built components from the Mozilla
-build servers, rendering local compilation unnecessary.  To use
-them, place this in your [mozconfig]:
-
-	ac_add_options --enable-artifact-builds
-
+Component files include the likes of RemoteAgent.js, RemoteAgent.manifest,
+moz.build files, prefs/remote.js, and jar.mn.  All the JS modules
+(files ending with `.jsm`) are symlinked into the build and can be
+changed without rebuilding.
 
 [mozconfig]: ../build/buildsystem/mozconfigs.html
-[artifact builds]: https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions/Artifact_builds
--- a/remote/doc/Debugging.md
+++ b/remote/doc/Debugging.md
@@ -4,11 +4,11 @@ Debugging
 Increasing the logging verbosity
 --------------------------------
 
 To increase the internal logging verbosity you can use the
 `remote.log.level` [preference].
 
 If you use mach to start the Firefox:
 
-	./mach run --setpref "remote.enabled=true" --setpref "remote.log.level=Debug" --remote-debugger
+	./mach run --setpref "browser.fission.simulate=true" --setpref "remote.log.level=Debug" -- --remote-debugger
 
 [preference]: ./Prefs.md
--- a/remote/doc/Prefs.md
+++ b/remote/doc/Prefs.md
@@ -5,21 +5,19 @@ There are a couple of preferences associ
 
 
 Configurable preferences
 ------------------------
 
 ### `remote.enabled`
 
 Indicates whether the remote agent is enabled.  When the remote
-agent is enabled, it exposes a [`--remote-debugger` flag] for Firefox.
+agent is enabled, it exposes a `--remote-debugger` flag for Firefox.
 When set to false, the remote agent will not be loaded on startup.
 
-[`--remote-debugger` flag]: Usage.html
-
 ### `remote.force-local`
 
 Limits the remote agent to be allowed to listen on loopback devices,
 e.g. 127.0.0.1, localhost, and ::1.
 
 ### `remote.log.level`
 
 Defines the verbosity of the internal logger.  Available levels
--- a/remote/doc/Testing.md
+++ b/remote/doc/Testing.md
@@ -1,35 +1,35 @@
 Testing
 =======
 
 The remote agent has unit- and functional tests located under
 `remote/test/{unit,browser}`.
 
 You may run all the tests locally using `mach test` like this:
 
-	% ./mach test --setpref "remote.enabled=true" remote/test
+	% ./mach test remote/test
 
 The tests are currently not run on try.
 
 
 Unit tests
 ----------
 
 Because tests are run in parallel and [xpcshell] itself is quite
 chatty, it can sometimes be useful to run the tests in sequence:
 
-	% ./mach xcpshell-test --setpref "remote.enabled=true" --sequential remote/test/unit/test_Assert.js
+	% ./mach xcpshell --sequential remote/test/unit/test_Assert.js
 
 The unit tests will appear as part of the `X` jobs on Treeherder.
 
 [xpcshell]: https://developer.mozilla.org/en-US/docs/Mozilla/QA/Writing_xpcshell-based_unit_tests
 
 
 Functional tests
 ----------------
 
 We also have a set of functional [browser chrome] tests located
 under _remote/test/browser_:
 
-	% ./mach mochitest --setpref "remote.enabled=true" -f browser remote/test/browser/browser_cdp.js
+	% ./mach mochitest -f browser remote/test/browser/browser_cdp.js
 
 [browser chrome]: https://developer.mozilla.org/en-US/docs/Mozilla/Browser_chrome_tests
--- a/remote/pref/remote.js
+++ b/remote/pref/remote.js
@@ -1,11 +1,11 @@
 // Indicates whether the remote agent is enabled.
 // If it is false, the remote agent will not be loaded.
-pref("remote.enabled", false);
+pref("remote.enabled", true);
 
 // Limits remote agent to listen on loopback devices,
 // e.g. 127.0.0.1, localhost, and ::1.
 pref("remote.force-local", true);
 
 // Defines the verbosity of the internal logger.
 //
 // Available levels are, in descending order of severity,
--- a/remote/test/browser/browser.ini
+++ b/remote/test/browser/browser.ini
@@ -1,11 +1,11 @@
 [DEFAULT]
 tags = remote
-prefs = remote.enabled=true
+subsuite = remote
 support-files =
   chrome-remote-interface.js
   head.js
 
 [browser_cdp.js]
 [browser_main_target.js]
 [browser_tabs.js]
 [browser_target.js]
--- a/toolkit/moz.configure
+++ b/toolkit/moz.configure
@@ -914,24 +914,19 @@ add_old_configure_assignment('FT2_CFLAGS
 
 
 # Remote agent (part of CDP based remote protocol)
 # ==============================================================
 #
 # See https://firefox-source-docs.mozilla.org/remote/ for more.
 # The source code lives under ../remote.
 
-@depends(target, milestone)
-def remote_default(target, milestone):
-    return target.os != 'Android' and milestone.is_nightly
+option('--enable-cdp', help='{Enable|Disable} remote agent')
 
-option('--disable-cdp', default=remote_default,
-       help='{Enable|Disable} remote agent')
-
-@depends('--disable-cdp')
+@depends('--enable-cdp')
 def remote(value):
     if value:
         return True
 
 set_config('ENABLE_REMOTE_AGENT', remote)
 set_define('ENABLE_REMOTE_AGENT', remote)