Mobile profiling support
Categories
(Core :: Graphics: WebRender, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: kats, Assigned: kats)
References
(Blocks 1 open bug)
Details
(Whiteboard: [wr-q2][wr-april][wr-amvp])
Attachments
(9 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
One of the things on the WR roadmap developed last week is mobile profiling support. This is on my to-do list for April, although I need input from Glenn as to what specifically he would like done.
Glenn, thoughts?
Comment 1•5 years ago
|
||
I think there's two parts to this:
- Implementation of an interface for quickly toggling / setting debug values.
For example, we may choose to have a checkbox to disable all clip masks, or all text runs. about:config is not a great place for this on GVE, because it's (a) quite a slow process when wanting to quickly tweak profiling settings (b) navigating to about:config on GVE may affect the profiling of the current page being investigated.
One option would be to add support in a page in the WR web debugger to tweak these values, and get the WR web(socket) debug server working on mobile (it may already just work). Another option could be integration in the remote webide views that are used for remote profiling on android. Or perhaps there is another way to provide this interface?
Whatever we decide here is probably useful for other features on mobile, such as triggering a WR-capture.
- Adding a range of tweakable settings, which we can use to identify the effect of various GPU costs. We would probably start with something like:
- Disable opaque pass
- Disable alpha pass
- Disable clip masks
- Disable various primitive types (text / gradient etc)
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 2•5 years ago
|
||
After various detours and distractions, I spent some time today looking at this.
(In reply to Glenn Watson [:gw] from comment #1)
One option would be to add support in a page in the WR web debugger to tweak these values, and get the WR web(socket) debug server working on mobile (it may already just work). Another option could be integration in the remote webide views that are used for remote profiling on android. Or perhaps there is another way to provide this interface?
I think the WR websocket debugger is probably the best path forward here. It does basically "just work" on Android, provide you turn on the feature, vendor the extra rust crates, and run adb forward tcp:3583 tcp:3583
to forward the ports to the device. We can probably make it so that the debug server is built by default and only enabled via a runtime configuration (pref or something else) which will make it a little easier to use.
The main reason I'm leaning towards this option vs say the WebIDE views is because this is more of a gecko/WR developer feature whereas WebIDE is more intended for web authors. Also the WR debugger is easy to iterate on without having to get reviews from UX and/or devtools folks.
Comment 3•5 years ago
|
||
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #2)
The main reason I'm leaning towards this option vs say the WebIDE views is because this is more of a gecko/WR developer feature whereas WebIDE is more intended for web authors. Also the WR debugger is easy to iterate on without having to get reviews from UX and/or devtools folks.
FWIW, WebIDE is deprecated, intention is to use about:debugging going forward.
I'm open to either option, but I'd like to push back on the above analysis a bit:
- The Gecko profiler is totally intended for Gecko developers debugging things.
- We already have tons of checkboxes in the "features" section like "sequential styling" that only make sense to gecko developers. I doubt review would be much of a burden.
- There's value in having all the knobs accessible via the same interface, which makes them more discoverable to other developers (who e.g. might discover that disabling opaque passes makes the page much faster).
That said, there are some downsides:
- The features list is already big, and we might need a separate sub-panel for the graphics stuff.
- It's a little odd that you technically need to be collecting a gecko profiler for the relevant flags to have an effect.
Assignee | ||
Comment 4•5 years ago
|
||
That's fair. There's probably some value in having it exposed in the profiler settings as well, given that the two are not mutually exclusive. Both front-ends would toggle the same backend DebugFlags bits and share much of the same underlying implementation.
Assignee | ||
Comment 5•5 years ago
|
||
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 6•5 years ago
|
||
The debugger in WebRender uses the image crate to generate PNGs, and so
it only really needs the png codec feature from the image crate.
Assignee | ||
Comment 7•5 years ago
|
||
This adds a RendererOption flag to control whether the debug server is
enabled. This allows the debug server feature to be built without
enabling the feature by default; it can then be enabled on a
per-renderer basis via the RendererOption.
Depends on D28351
Assignee | ||
Comment 8•5 years ago
|
||
This builds the feature but leaves it disabled by default at runtime.
Depends on D28352
Assignee | ||
Comment 9•5 years ago
|
||
Depends on D28353
Assignee | ||
Comment 10•5 years ago
|
||
Depends on D28354
Assignee | ||
Comment 11•5 years ago
|
||
Depends on D28355
Assignee | ||
Comment 12•5 years ago
|
||
This patch is the output of rebuilding the debugger frontend with a
recent npm installation. The changes to dist/ and the addition of
package-lock.json are a result of the build. The changes to package.json
and main.js were done manually to work around an incompatible change
in beufy 0.6.7 (the lib/ folder changed to dist/).
Depends on D28356
Assignee | ||
Comment 13•5 years ago
|
||
Depends on D28357
Updated•5 years ago
|
Comment 14•5 years ago
|
||
Pushed by kgupta@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/7df230ea5122 Reduce featureset enabled on image crate. r=gw https://hg.mozilla.org/integration/autoland/rev/314f9bc7dafe Allow enabling/disabling the debug server at runtime. r=gw https://hg.mozilla.org/integration/autoland/rev/e5af8cd01080 Build the debugger feature in webrender by default. r=gw https://hg.mozilla.org/integration/autoland/rev/5744891efeef Re-vendor rust dependencies. r=froydnj https://hg.mozilla.org/integration/autoland/rev/5118d628ec89 Add BSD-3-Clause license to about:license and whitelist sha1 which uses it. r=froydnj,mhoye https://hg.mozilla.org/integration/autoland/rev/a02e469be7b3 Add more debug flags to disable various things. r=gw https://hg.mozilla.org/integration/autoland/rev/1dba743761b7 Rebuild the debugger front-end. r=gw https://hg.mozilla.org/integration/autoland/rev/f3516e1416f0 Add a pref to control the debug server. r=gw
Comment 15•5 years ago
|
||
Backed out for build bustages.
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=242131620&repo=autoland&lineNumber=14024
[task 2019-04-23T20:10:30.689Z] 20:10:30 ERROR - error[E0308]: mismatched types
[task 2019-04-23T20:10:30.689Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/net2/src/socket.rs:40:51
[task 2019-04-23T20:10:30.690Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.690Z] 20:10:30 INFO - 40 | ::cvt(c::bind(self.inner.raw(), addr, len as len_t)).map(|_| ())
[task 2019-04-23T20:10:30.691Z] 20:10:30 INFO - | ^^^^^^^^^^^^ expected u32, found i32
[task 2019-04-23T20:10:30.691Z] 20:10:30 ERROR - error: aborting due to previous error
[task 2019-04-23T20:10:30.692Z] 20:10:30 INFO - For more information about this error, try rustc --explain E0308
.
[task 2019-04-23T20:10:30.692Z] 20:10:30 ERROR - error: Could not compile net2
.
[task 2019-04-23T20:10:30.692Z] 20:10:30 INFO - Caused by:
[task 2019-04-23T20:10:30.693Z] 20:10:30 INFO - process didn't exit successfully: CARGO_PKG_VERSION_PATCH=32 CARGO_MANIFEST_DIR=/builds/worker/workspace/build/src/third_party/rust/net2 CARGO_PKG_DESCRIPTION='Extensions to the standard library'\''s networking types as proposed in RFC 1158. [task 2019-04-23T20:10:30.695Z] 20:10:30 INFO - ' CARGO_PKG_REPOSITORY='https://github.com/rust-lang-nursery/net2-rs' CARGO_PKG_VERSION_MINOR=2 CARGO_PKG_HOMEPAGE='https://github.com/rust-lang-nursery/net2-rs' LD_LIBRARY_PATH='/builds/worker/workspace/build/src/obj-firefox/release/deps:/builds/worker/workspace/build/src/rustc/lib' CARGO=/builds/worker/workspace/build/src/rustc/bin/cargo CARGO_PKG_VERSION_PRE= CARGO_PKG_VERSION=0.2.32 CARGO_PKG_NAME=net2 CARGO_PKG_AUTHORS='Alex Crichton <alex@alexcrichton.com>' CARGO_PKG_VERSION_MAJOR=0 /builds/worker/workspace/build/src/sccache2/sccache /builds/worker/workspace/build/src/rustc/bin/rustc --crate-name net2 /builds/worker/workspace/build/src/third_party/rust/net2/src/lib.rs --color never --crate-type lib --emit=dep-info,link -C opt-level=2 -C panic=abort -C codegen-units=1 --cfg 'feature="default"' --cfg 'feature="duration"' -C metadata=354c78d72ab3f4e9 -C extra-filename=-354c78d72ab3f4e9 --out-dir /builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/deps --target aarch64-linux-android -C linker=/builds/worker/workspace/build/src/build/cargo-linker -L dependency=/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/deps -L dependency=/builds/worker/workspace/build/src/obj-firefox/release/deps --extern cfg_if=/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/deps/libcfg_if-2bfa6c093b4b19e8.rlib --extern libc=/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/deps/liblibc-56a0813a2d56ca48.rlib --cap-lints warn -C opt-level=2 -C debuginfo=2 -Dwarnings
(exit code: 1)
[task 2019-04-23T20:10:30.695Z] 20:10:30 INFO - warning: build failed, waiting for other jobs to finish...
[task 2019-04-23T20:10:30.696Z] 20:10:30 INFO - warning: use of deprecated item 'core::sync::atomic::ATOMIC_USIZE_INIT': the new
function is now preferred
[task 2019-04-23T20:10:30.696Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/crossbeam-epoch-0.3.1/src/atomic.rs:8:39
[task 2019-04-23T20:10:30.697Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.697Z] 20:10:30 INFO - 8 | use core::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT};
[task 2019-04-23T20:10:30.698Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.698Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.698Z] 20:10:30 INFO - = note: #[warn(deprecated)] on by default
[task 2019-04-23T20:10:30.699Z] 20:10:30 INFO - warning: use of deprecated item 'core::sync::atomic::ATOMIC_USIZE_INIT': the new
function is now preferred
[task 2019-04-23T20:10:30.700Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/crossbeam-epoch-0.3.1/src/atomic.rs:155:19
[task 2019-04-23T20:10:30.700Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.701Z] 20:10:30 INFO - 155 | data: ATOMIC_USIZE_INIT,
[task 2019-04-23T20:10:30.701Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.701Z] 20:10:30 INFO - help: use of deprecated item 'core::sync::atomic::ATOMIC_USIZE_INIT': the new
function is now preferred
[task 2019-04-23T20:10:30.702Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.702Z] 20:10:30 INFO - 155 | data: AtomicUsize::new(0),
[task 2019-04-23T20:10:30.703Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.703Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] exit code: 0
[task 2019-04-23T20:10:30.705Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] running: "/builds/worker/workspace/build/src/sccache2/sccache" "/builds/worker/workspace/build/src/clang/bin/clang" "-std=gnu99" "--target=aarch64-linux-android" "-O2" "-ffunction-sections" "-fdata-sections" "-fPIC" "--target=aarch64-linux-android" "-I/builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers" "-include" "/builds/worker/workspace/build/src/config/gcc_hidden.h" "-DNDEBUG=1" "-DTRIMMED=1" "-I/builds/worker/workspace/build/src/toolkit/library/rust" "-I/builds/worker/workspace/build/src/obj-firefox/toolkit/library/rust" "-I/builds/worker/workspace/build/src/obj-firefox/dist/include" "-I/builds/worker/workspace/build/src/obj-firefox/dist/include/nspr" "-I/builds/worker/workspace/build/src/obj-firefox/dist/include/nss" "-fPIC" "-include" "/builds/worker/workspace/build/src/obj-firefox/mozilla-config.h" "-DMOZILLA_CLIENT" "-Qunused-arguments" "-isystem" "/builds/worker/workspace/build/src/android-ndk/sysroot/usr/include/aarch64-linux-android" "-isystem" "/builds/worker/workspace/build/src/android-ndk/sysroot/usr/include" "-gcc-toolchain" "/builds/worker/workspace/build/src/android-ndk/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64" "-D__ANDROID_API__=21" "-fstack-protector-strong" "-fno-short-enums" "-fno-exceptions" "-fstack-protector-strong" "-fno-strict-aliasing" "-ffunction-sections" "-fdata-sections" "-fno-math-errno" "-fPIC" "-pipe" "-g" "-Xclang" "-load" "-Xclang" "/builds/worker/workspace/build/src/obj-firefox/build/clang-plugin/libclang-plugin.so" "-Xclang" "-add-plugin" "-Xclang" "moz-check" "-Oz" "-fno-omit-frame-pointer" "-funwind-tables" "-DMOZILLA_CONFIG_H" "-DMDB_IDL_LOGN=9" "-o" "/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/build/lmdb-rkv-sys-937f5e5b7e054c74/out/midl.o" "-c" "/builds/worker/workspace/build/src/third_party/rust/lmdb-rkv-sys/lmdb/libraries/liblmdb/midl.c"
[task 2019-04-23T20:10:30.705Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] exit code: 0
[task 2019-04-23T20:10:30.706Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] AR_aarch64-linux-android = None
[task 2019-04-23T20:10:30.706Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] AR_aarch64_linux_android = Some("/builds/worker/workspace/build/src/clang/bin/llvm-ar")
[task 2019-04-23T20:10:30.707Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] running: "/builds/worker/workspace/build/src/clang/bin/llvm-ar" "crs" "/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/build/lmdb-rkv-sys-937f5e5b7e054c74/out/liblmdb.a" "/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/build/lmdb-rkv-sys-937f5e5b7e054c74/out/mdb.o" "/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/build/lmdb-rkv-sys-937f5e5b7e054c74/out/midl.o"
[task 2019-04-23T20:10:30.708Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] exit code: 0
[task 2019-04-23T20:10:30.708Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] cargo:rustc-link-lib=static=lmdb
[task 2019-04-23T20:10:30.709Z] 20:10:30 INFO - [lmdb-rkv-sys 0.8.3] cargo:rustc-link-search=native=/builds/worker/workspace/build/src/obj-firefox/aarch64-linux-android/release/build/lmdb-rkv-sys-937f5e5b7e054c74/out
[task 2019-04-23T20:10:30.709Z] 20:10:30 INFO - warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead
[task 2019-04-23T20:10:30.709Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/idna/src/punycode.rs:18:5
[task 2019-04-23T20:10:30.710Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.710Z] 20:10:30 INFO - 18 | use std::ascii::AsciiExt;
[task 2019-04-23T20:10:30.711Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.711Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.711Z] 20:10:30 INFO - = note: #[warn(deprecated)] on by default
[task 2019-04-23T20:10:30.712Z] 20:10:30 INFO - warning: use of deprecated item 'std::ascii::AsciiExt': use inherent methods instead
[task 2019-04-23T20:10:30.712Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/idna/src/uts46.rs:14:5
[task 2019-04-23T20:10:30.712Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.713Z] 20:10:30 INFO - 14 | use std::ascii::AsciiExt;
[task 2019-04-23T20:10:30.713Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.713Z] 20:10:30 INFO - warning: unused import: std::ascii::AsciiExt
[task 2019-04-23T20:10:30.714Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/idna/src/punycode.rs:18:5
[task 2019-04-23T20:10:30.714Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.715Z] 20:10:30 INFO - 18 | use std::ascii::AsciiExt;
[task 2019-04-23T20:10:30.715Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.715Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.716Z] 20:10:30 INFO - = note: #[warn(unused_imports)] on by default
[task 2019-04-23T20:10:30.716Z] 20:10:30 INFO - warning: unused import: std::ascii::AsciiExt
[task 2019-04-23T20:10:30.717Z] 20:10:30 INFO - --> /builds/worker/workspace/build/src/third_party/rust/idna/src/uts46.rs:14:5
[task 2019-04-23T20:10:30.717Z] 20:10:30 INFO - |
[task 2019-04-23T20:10:30.717Z] 20:10:30 INFO - 14 | use std::ascii::AsciiExt;
[task 2019-04-23T20:10:30.718Z] 20:10:30 INFO - | ^^^^^^^^^^^^^^^^^^^^
[task 2019-04-23T20:10:30.718Z] 20:10:30 INFO - error: build failed
[task 2019-04-23T20:10:30.719Z] 20:10:30 INFO - /builds/worker/workspace/build/src/config/makefiles/rust.mk:235: recipe for target 'force-cargo-library-build' failed
[task 2019-04-23T20:10:30.719Z] 20:10:30 ERROR - make[4]: *** [force-cargo-library-build] Error 101
[task 2019-04-23T20:10:30.720Z] 20:10:30 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/toolkit/library/rust'
[task 2019-04-23T20:10:30.720Z] 20:10:30 INFO - /builds/worker/workspace/build/src/config/recurse.mk:74: recipe for target 'toolkit/library/rust/target' failed
[task 2019-04-23T20:10:30.721Z] 20:10:30 ERROR - make[3]: *** [toolkit/library/rust/target] Error 2
[task 2019-04-23T20:10:30.721Z] 20:10:30 INFO - make[3]: *** Waiting for unfinished jobs....
[task 2019-04-23T20:10:30.722Z] 20:10:30 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/hal'
[task 2019-04-23T20:10:30.722Z] 20:10:30 INFO - hal/AndroidHal.o
[task 2019-04-23T20:10:30.722Z] 20:10:30 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/hal'
[task 2019-04-23T20:10:30.899Z] 20:10:30 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/toolkit/crashreporter/rust'
[task 2019-04-23T20:10:30.899Z] 20:10:30 INFO - toolkit/crashreporter/rust/force-cargo-host-library-build
[task 2019-04-23T20:10:30.899Z] 20:10:30 INFO - /builds/worker/workspace/build/src/rustc/bin/cargo rustc --release --frozen --manifest-path /builds/worker/workspace/build/src/toolkit/crashreporter/rust/Cargo.toml -vv --lib --target=x86_64-unknown-linux-gnu
Backout: https://hg.mozilla.org/integration/autoland/rev/cffeafe28a4565fdd07582546190591c2279dcf0
Assignee | ||
Comment 16•5 years ago
|
||
Shoot. Looks like adding the ws
(websocket server) rust crate is triggering the check added in bug 1376621. Will need to think about what to do here.
Assignee | ||
Comment 17•5 years ago
|
||
Tom, do you have any thoughts here? We have an off-by-default debugging feature in WebRender which opens a websocket server and can be interacted with via a webapp. This uses the rust ws
crate which is running afoul of the checks in bug 1376621. Since this feature isn't going to be exposed to end users it seems like the proxy concern that bug 1376621 is mitigating is not really relevant here. I'm not sure if there's a good way around the checks for this particular scenario.
Comment 18•5 years ago
|
||
I think for now you can comment out the functions 1376621 is triggering; and file a followup bug assigned to me that makes the behavior of the check more intelligent for situations like this.
Assignee | ||
Comment 19•5 years ago
|
||
There were actually three different errors in the above landing.
One was the networking functions bit. Tom and I discussed on IRC, and I don't really want to remove that check (which is effectively what I'd be doing to allow the ws
crate in) since it does provide value. For now I'll put it behind a default-off compile flag, so that the vendored crates still live in m-c but they won't get built into libgkrust. Devs can enable it locally. Going forward we can expose the knobs in the gecko profiler or other such tools and that will make it easier to use.
The second was that the net2 crate was failing to compile on 64-bit android platforms. That was resolved by updating the crate to the latest version.
And the third was the changes I made to the licensing check was causing the testLicense test to fail because I didn't update that to match.
With those three things fixed I have a green try push but I need to clean up the extra patches a bit.
Assignee | ||
Comment 20•5 years ago
|
||
Depends on D28352
Updated•5 years ago
|
Comment 21•5 years ago
|
||
Pushed by kgupta@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e980a61a57d1 Reduce featureset enabled on image crate. r=gw https://hg.mozilla.org/integration/autoland/rev/59a08c05c327 Allow enabling/disabling the debug server at runtime. r=gw https://hg.mozilla.org/integration/autoland/rev/459c9408935d Bump net2 to a version that builds on 64-bit android. r=froydnj https://hg.mozilla.org/integration/autoland/rev/004c7b730f40 Expose a mozconfig flag to build the WR debugger feature. r=gw,froydnj https://hg.mozilla.org/integration/autoland/rev/cdd4e1c5a9e5 Re-vendor rust dependencies. r=froydnj https://hg.mozilla.org/integration/autoland/rev/3d0e1679baeb Add BSD-3-Clause license to about:license and whitelist sha1 which uses it. r=froydnj,mhoye https://hg.mozilla.org/integration/autoland/rev/6f62c7dd1b13 Add more debug flags to disable various things. r=gw https://hg.mozilla.org/integration/autoland/rev/4cb155acf32f Rebuild the debugger front-end. r=gw https://hg.mozilla.org/integration/autoland/rev/a8eca5bd4f5b Add a pref to control the debug server. r=gw
Comment 22•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e980a61a57d1
https://hg.mozilla.org/mozilla-central/rev/59a08c05c327
https://hg.mozilla.org/mozilla-central/rev/459c9408935d
https://hg.mozilla.org/mozilla-central/rev/004c7b730f40
https://hg.mozilla.org/mozilla-central/rev/cdd4e1c5a9e5
https://hg.mozilla.org/mozilla-central/rev/3d0e1679baeb
https://hg.mozilla.org/mozilla-central/rev/6f62c7dd1b13
https://hg.mozilla.org/mozilla-central/rev/4cb155acf32f
https://hg.mozilla.org/mozilla-central/rev/a8eca5bd4f5b
Description
•