This patch removes the use of the "unified extensions" pref and adjust
the existing tests. More clean-ups will be done in follow-ups, e.g. the
removal of `gUnifiedExtensions.isEnabled` and some test-only changes to
no longer create a new window in each test file.
Differential Revision: https://phabricator.services.mozilla.com/D166908
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.
5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.
To produce this patch I did all of the following:
1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.
2. Run ./mach lint --linter black --fix
3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.
4. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).
# ignore-this-changeset
Differential Revision: https://phabricator.services.mozilla.com/D94045
We will no longer parse Breakpad-generated .sym files, and we will no longer
call out to dump_syms.exe or nm.
This has a number of advantages:
- It's simpler.
- It's faster, especially for local builds on Windows.
- It's more extensible. For example, we can now easily add code to the wasm
module which consults debugging information in order to obtain filename +
line information or inlined call stacks.
- On Macs that don't have the Xcode command line tools installed, Xcode will
no longer pop up a dialog because we no longer attempt to run 'nm'.
Depends on D13005
Differential Revision: https://phabricator.services.mozilla.com/D13006
--HG--
extra : moz-landing-system : lando
The module can dump ELF binaries, Mach-O binaries, and pdb files. So it works
for all our supported platforms.
The module is currently hosted on https://zealous-rosalind-a98ce8.netlify.com/ ,
which is a netlify server that serves files from the following repo:
https://github.com/mstange/profiler-assets
To make all of this look a bit more official, I'm planning on doing two things:
- Move the github repo under the devtools-html organization
- Get a firefox.com subdomain such as profiler-assets.firefox.com for hosting
Depends on D13004
Differential Revision: https://phabricator.services.mozilla.com/D13005
--HG--
extra : moz-landing-system : lando
Also, use a single hidden window to hold <browser> elements
for multiple extensions.
Differential Revision: https://phabricator.services.mozilla.com/D14163
--HG--
rename : browser/components/extensions/test/browser/browser_ext_tabs_cookieStoreId.js => browser/components/extensions/test/browser/browser_ext_tabs_cookieStoreId_private.js
extra : moz-landing-system : lando
Pulls out the CppFiltParser work into a worker to run in the
background and avoid the jank induced by the final
convertSymsMapToExpectedSymFormat call.
Profiling shows that after this change there is virtually no
jank when asking the geckoProfiler API for symbols.
MozReview-Commit-ID: CAKMvjLa4dl
--HG--
extra : rebase_source : de9202687ca8ffbfa5216f73fe57e97ffdbea8ef
Pulls out the NMParser work (parsing nm results and turning
them into an ArrayBuffer'd map of addresses to symbols) into
a worker.
For OSX we will still need to do some work to run c++filt in the
background, but this gets us most of the way there. Without a
Subprocess.jsm usable from a worker, we'll have to bounce data
back to the main thread in order to bounce it to the c++filt
worker.
MozReview-Commit-ID: LZi7J1qGpmh
--HG--
extra : rebase_source : 048329fb085542ecc4c8f8d872e6c4cf0b535376
Backed out changeset 916250167bc8
Backed out changeset c2a286511a6c
Backed out changeset 9cc319bef82d
Backed out changeset 29443725aebb
--HG--
extra : histedit_source : 76915ec4b96c97ee6bd4896769158490442aedce%2C0face0f9fe6eb85dd4ba8b3603bf948e0ce99d7f
In order to rewrite the Gecko Profiler add-on as a WebExtension,
we need an API for the profiler which allows us to control the
nsIProfiler, and symbolicate the stacks that it provides. This
is the implementation of the simpler parts of that API.
TODO:
- Support profiling of remote targets through a new devtools
API.
- Support the dump_syms breakpad code which was asm.js in the
old extension by directly calling into native code.
- Figure out a faster way to send the large volume of data from
getSymbols all the way from our extension down to the content
process and then into the page's context.
MozReview-Commit-ID: JzDbV4l2eXd
--HG--
extra : rebase_source : fee9acfaa522372c22c61f9b0f1cab13d5da2a86
This removes the unnecessary setting of c-basic-offset from all
python-mode files.
This was automatically generated using
perl -pi -e 's/; *c-basic-offset: *[0-9]+//'
... on the affected files.
The bulk of these files are moz.build files but there a few others as
well.
MozReview-Commit-ID: 2pPf3DEiZqx
--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
The generated messages are still a bit rough in some instances, but they're at
least much better than what we have now.
MozReview-Commit-ID: gTS0RvDnwk
--HG--
rename : toolkit/components/extensions/test/xpcshell/.eslintrc => browser/components/extensions/test/xpcshell/.eslintrc
rename : toolkit/components/extensions/test/xpcshell/head.js => browser/components/extensions/test/xpcshell/head.js
rename : toolkit/components/extensions/test/xpcshell/test_ext_manifest_content_security_policy.js => browser/components/extensions/test/xpcshell/test_ext_manifest_commands.js
rename : toolkit/components/extensions/test/xpcshell/xpcshell.ini => browser/components/extensions/test/xpcshell/xpcshell.ini
extra : rebase_source : 058603a2ab0efa90d3626b82be6d5e2cf1436fc3
extra : amend_source : 3a7924ef237cb392dd2f4c1f696b8858daad43ab