Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Перейти к файлу
Ricky Stewart 31755b431d Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj
Today we don't require that `mach` `CommandProvider`s subclass from any particular parent class and we're very lax about the requirements they must meet. While that's convenient in certain circumstances, it has some unfortunate implications for feature development.

Today the only requirements that we have for `CommandProvider`s are that they have an `__init__()` method that takes either 1 or 2 arguments, the second of which must be called `context` and is populated with the `mach` `CommandContext`. Again, while this flexibility is occasionally convenient, it is limiting. As we add features to `mach`, having a better idea what the shape of our `CommandProvider`s are and how we can instantiate them and use them is increasingly important, and this gives us additional control when having `mach` configure `CommandProvider`s based on data that is only available at the `mach` level. In particular, we plan to leverage this in bugs 985141 and 1654074.

Here we add validation to the `CommandProvider` decorator to ensure all classes inherit from `MachCommandBase`, update all `CommandProvider`s in-tree to inherit from `MachCommandBase`, and update source and test code accordingly.

Follow-up work: we now require (de facto) that the `context` be populated with a `topdir` attribute by the `populate_context_handler` function, since instantiating the `MachCommandBase` requires a `topdir` be provided. This is fine for now in the interest of keeping this patch reasonably sized, but some additional refactoring could make this cleaner.

Differential Revision: https://phabricator.services.mozilla.com/D86255
2020-08-07 18:24:59 +00:00
.cargo Bug 1649631 - Fix wasi issues in clang-11 builds r=froydnj,dmajor 2020-08-06 19:22:24 +00:00
.vscode Bug 1656740 - Integrate `clangd` in `vscode` for C++ language support. r=froydnj 2020-08-06 06:25:17 +00:00
accessible Bug 1652809: Add rotor mochitest for headings. r=eeejay 2020-08-07 16:54:36 +00:00
browser Bug 1657909 - Improve calculation of fields telemetry for Credit Card Autofill. r=abr 2020-08-07 17:59:56 +00:00
build Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
caps Backed out changeset 6d39aab86966 (bug 1633710) for failure at test_disabled_hosts.js. CLOSED TREE 2020-08-05 22:19:30 +03:00
chrome Bug 1649221: Update ChromeUtils.generateQI callers to pass strings. r=mccr8,remote-protocol-reviewers,marionette-reviewers,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,preferences-reviewers,agi,whimboo,Bebe,twisniewski 2020-07-10 23:58:28 +00:00
config Backed out 9 changesets (bug 1656141) for causing multiple failures. 2020-08-07 01:48:45 +03:00
devtools Bug 1652445 - Fix highlighters overlay to react to frame navigation r=rcaliman 2020-08-07 12:24:10 +00:00
docs Bug 1656740 - Integrate `clangd` in `vscode` for C++ language support. r=froydnj 2020-08-06 06:25:17 +00:00
docshell Backed out changeset c20c383af4db (bug 1657583) for http related failures CLOSED TREE 2020-08-07 17:13:37 +03:00
dom Bug 1656811 - Mark webgl-color-test.html as failing with SWGL. r=gbrown 2020-08-07 19:59:58 +00:00
editor Backed out 4 changesets (bug 1623764) for mochitest failures on test_movement_by_characters.html. CLOSED TREE 2020-08-06 08:09:42 +03:00
extensions Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
gfx Backed out 11 changesets (bug 1656802) for async-scrolling reftests failures CLOSED TREE 2020-08-07 14:36:21 +03:00
gradle/wrapper
hal Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj 2020-07-01 08:29:29 +00:00
image Bug 1657346 - AVIF: Handle chromaticity derived matrix coeffs. r=jbauman 2020-08-06 23:38:30 +00:00
intl Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
ipc Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
js Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
layout Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
media Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
memory Bug 1657857 - Call native abort in UBSan builds. r=froydnj 2020-08-07 18:22:03 +00:00
mfbt Bug 1656896 - Improve the Tainting macros and add unit tests r=froydnj 2020-08-07 19:14:22 +00:00
mobile Bug 1651088 - ensure ExoPlayer instance operate on a single thread. r=geckoview-reviewers,snorp 2020-08-05 20:04:30 +00:00
modules Bug 1657808: Keep DTLS 1.0 in Release and restrict DTLS 1.3 to Nightly. r=dminor DONTBUILD 2020-08-07 13:53:13 +00:00
mozglue Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
netwerk Backed out changeset c20c383af4db (bug 1657583) for http related failures CLOSED TREE 2020-08-07 17:13:37 +03:00
nsprpub Bug 1656520 - NSPR_4_28_BETA1. r=kjacobs UPGRADE_NSPR_RELEASE 2020-08-04 12:01:24 +00:00
other-licenses Bug 1634535 - Move ply to third_party/python r=glandium 2020-05-05 16:02:02 +00:00
parser Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
python Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
remote Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
security Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj 2020-08-07 07:49:47 +00:00
services No Bug, mozilla-central repo-update HSTS HPKP remote-settings - a=repo-update r=RyanVM 2020-08-03 14:13:18 +00:00
servo Backed out 4 changesets (bug 1656236) for build bustages on a CLOSED TREE 2020-08-05 12:10:43 +03:00
startupcache Bug 1656974 - Turn off StartupCache when startup is finished r=froydnj 2020-08-07 19:42:56 +00:00
storage Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj 2020-08-04 11:27:07 +00:00
taskcluster Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
testing Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
third_party Backed out 2 changesets (bug 1631722) for windows bpgo failures CLOSED TREE 2020-08-07 16:37:42 +03:00
toolkit Bug 1656069 - Wire up the headers/footer checkbox to update all the footerStr* and headerStr* settings. r=mstriemer,emalysz 2020-08-07 20:18:15 +00:00
tools Bug 1657650 - Require that Mach command providers subclass MachCommandBase. r=remote-protocol-reviewers,marionette-reviewers,maja_zf,mhentges,froydnj 2020-08-07 18:24:59 +00:00
uriloader Bug 1655457 - always lowercase file extensions used in the Windows external helper app code, r=mak 2020-08-06 20:09:55 +00:00
view Bug 1623992 - Automated rewrite from chrome://global/skin/ to chrome://global/skin/global.css in markup r=marionette-reviewers,perftest-reviewers,mossop,whimboo,sparky 2020-04-03 22:23:23 +00:00
widget Bug 1656731 - Add Intel(R) UHD Graphics 617 to the KabyLake GT2 list r=mstange 2020-08-07 16:51:26 +00:00
xpcom Bug 1657706 - Forward-declare JSContext in nsrootidl.idl. r=nika 2020-08-07 16:45:16 +00:00
xpfe/appshell Bug 1653729 - Part 1: Generalize do_QueryActor API, r=kmag 2020-08-04 21:34:29 +00:00
.arcconfig
.babel-eslint.rc.js Bug 1620537 - Upgrade to ESLint 7.5.0, remove now unnecessary Babel plugins. r=mossop 2020-07-24 21:37:12 +00:00
.clang-format
.clang-format-ignore Bug 1651731: [lint] Only allow files that are typically executable to have shebang lines override permission check; r=linter-reviewers,sylvestre 2020-07-09 21:16:32 +00:00
.cron.yml Bug 1656475 - Activate performance alerting on multi commit Fenix performance tests r=perftest-reviewers,sparky 2020-08-05 16:06:17 +00:00
.eslintignore Bug 1618465 - Move pdf.js to toolkit (main files). r=bdahl,Pike 2020-07-02 07:13:46 +00:00
.eslintrc.js Bug 1656292 - Enable remaining ESLint rules on editor/libeditor/tests/*.xhtml files. r=masayuki 2020-07-31 23:58:46 +00:00
.flake8 Bug 1654090 - Replace testing/mochitest/pywebsocket with pywebsocket3; r=jmaher 2020-07-22 02:06:38 +00:00
.git-blame-ignore-revs Bug 1633969 - Refresh .git-blame-ignore-revs. r=sylvestre 2020-04-30 16:38:19 +00:00
.gitattributes
.gitignore Bug 1651214 - Ignore .python-version file at top of checkout r=nalexander 2020-07-07 23:41:55 +00:00
.hg-annotate-ignore-revs Bug 1633969 - Add a changeset marked as "skip-blame" to .hg-annotate-ignore-revs. r=sylvestre 2020-04-30 16:37:44 +00:00
.hg-format-source
.hgignore Bug 1651214 - Ignore .python-version file at top of checkout r=nalexander 2020-07-07 23:41:55 +00:00
.hgtags No bug - tagging e8d1d9067328f6929a618c67f5d1e83cd9a4858f with FIREFOX_NIGHTLY_80_END a=release DONTBUILD CLOSED TREE 2020-07-27 17:45:36 +00:00
.lldbinit
.mailmap Bug 1650456 - Correct name in a few places, r=froydnj 2020-07-03 20:20:29 +00:00
.prettierignore
.prettierrc
.taskcluster.yml Bug 1652184: Report to perherder stats about bugbug timings; r=ahal 2020-07-13 19:53:00 +00:00
.trackerignore
.yamllint
.ycm_extra_conf.py Bug 1646256 - Make rust-analyzer and YouCompleteMe work with mozilla-central. r=sylvestre 2020-06-17 17:53:56 +00:00
AUTHORS
CLOBBER Bug 1655105 - Add back comments to CLOBBER file. a=CLOBBER 2020-08-05 14:43:40 +02:00
Cargo.lock Backed out 2 changesets (bug 1631722) for windows bpgo failures CLOSED TREE 2020-08-07 16:37:42 +03:00
Cargo.toml Bug 1649631 - Fix wasi issues in clang-11 builds r=froydnj,dmajor 2020-08-06 19:22:24 +00:00
GNUmakefile
LEGAL
LICENSE
Makefile.in Bug 1654994 - Switch full symbols archive to tar.zst. r=firefox-build-system-reviewers,rstewart,tomprince 2020-07-31 20:27:54 +00:00
README.txt
aclocal.m4 Bug 1641790 - Move --with-system-nss to python configure. r=firefox-build-system-reviewers,rstewart 2020-05-29 17:02:09 +00:00
build.gradle Bug 1641983 - Update apilint to 0.3.0. r=snorp 2020-06-01 15:58:01 +00:00
client.mk Bug 1633016 - Remove a bunch of references to PYTHON(2) in Makefiles r=glandium 2020-05-05 19:53:22 +00:00
client.py Bug 1650306 - Address the defects found by the pylint/no-else-return rule. r=sylvestre 2020-07-08 09:24:49 +00:00
configure.in Bug 1644887 - `configure` calls into `$PYTHON3` rather than `python3` directly r=glandium 2020-06-10 21:29:27 +00:00
configure.py Bug 1649901 - Improve reproducibility of config_status_deps.in files r=froydnj 2020-07-01 22:55:52 +00:00
gradle.properties
gradlew
gradlew.bat
mach Bug 1594914 - Convert mach python-test to run with python 3 r=gbrown 2020-08-04 17:40:58 +00:00
moz.build Bug 1655789 - Use build/moz.build for JS standalone builds r=glandium 2020-08-05 21:27:10 +00:00
moz.configure Bug 1641291 - Part 1: Allow cross-compiling from host macOS -> Windows target. r=froydnj 2020-07-07 02:13:35 +00:00
mozilla-config.h.in
old-configure.in Bug 1656346 - Move `--enable-startupcache` from `old-configure` r=firefox-build-system-reviewers,mhentges,glandium 2020-08-05 00:28:34 +00:00
package-lock.json Bug 1620537 - Upgrade to ESLint 7.5.0, remove now unnecessary Babel plugins. r=mossop 2020-07-24 21:37:12 +00:00
package.json Bug 1620537 - Upgrade to ESLint 7.5.0, remove now unnecessary Babel plugins. r=mossop 2020-07-24 21:37:12 +00:00
settings.gradle Backed out changeset d0ff30e1d830 (bug 1650692) for toolchains failures on ImageDecoderTest.kt. CLOSED TREE 2020-07-15 07:42:37 +03:00
substitute-local-geckoview.gradle
test.mozbuild

README.txt

An explanation of the Mozilla Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://firefox-source-docs.mozilla.org/contributing/directory_structure.html

For information on how to build Mozilla from the source code and create the patch see:

    https://firefox-source-docs.mozilla.org/contributing/how_to_contribute_firefox.html

If you have a question about developing Mozilla, and can't find the solution
on https://developer.mozilla.org, you can try asking your question on Matrix at chat.mozilla.org in `Introduction` (https://chat.mozilla.org/#/room/#introduction:mozilla.org) channel.


Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Mozilla developers for
testing, may be buggy.