Граф коммитов

89 Коммитов

Автор SHA1 Сообщение Дата
Alex Lopez 77ce415604 Bug 1696251 - Replace self with command_context where possible in existing mach commands. r=mhentges,webdriver-reviewers,perftest-reviewers,whimboo
This step removes all the dependencies of mach commands to
having a MachCommandBase as the `self` by using the `command_context`
argument instead. This also removes any remaining statefulness from those
classes that implement mach commands, ultimately making it easier to move
existing commands out of classes in a follow-up.

Differential Revision: https://phabricator.services.mozilla.com/D118058
2021-07-19 16:04:25 +00:00
Butkovits Atila a07f790e42 Backed out changeset e1921c5112d8 (bug 1696251) for causing bustages complaining about 'CommandContext'. CLOSED TREE 2021-07-16 20:35:55 +03:00
Alex Lopez 190e03aaab Bug 1696251 - Replace self with command_context where possible in existing mach commands. r=mhentges,webdriver-reviewers,perftest-reviewers,whimboo
This step removes all the dependencies of mach commands to
having a MachCommandBase as the `self` by using the `command_context`
argument instead. This also removes any remaining statefulness from those
classes that implement mach commands, ultimately making it easier to move
existing commands out of classes in a follow-up.

Differential Revision: https://phabricator.services.mozilla.com/D118058
2021-07-16 15:51:29 +00:00
Dan Mosedale 7a2de0bfe5 Bug 1716257 - make `mach npm` use the same version of node, r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D117612
2021-06-14 19:21:47 +00:00
Alex Lopez 455d9a088b Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-05-17 16:15:58 +00:00
Butkovits Atila 2e34e363b9 Backed out 2 changesets (bug 1696251) for causing js-bench-sm failures. CLOSED TREE
Backed out changeset 1c84c9a34575 (bug 1696251)
Backed out changeset e169193b7423 (bug 1696251)
2021-04-23 02:53:36 +03:00
Alex Lopez d1a82b8092 Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-04-22 18:56:15 +00:00
Cosmin Sabou 785f9b8a87 Backed out changeset d4a5d8567977 (bug 1696251) for non-unified build bustages. CLOSED TREE 2021-04-19 19:43:31 +03:00
Alex Lopez 75dfe35468 Bug 1696251 - Pass MachCommandBase object as first argument for Mach Commands. r=mhentges,remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers
As an intermediate step to allow mach commands as standalone functions, the MachCommandBase
subclass instance that currently corresponds to self has to be made available as a separate
argument (named command_context).

Differential Revision: https://phabricator.services.mozilla.com/D109650
2021-04-19 16:15:11 +00:00
Ricky Stewart 02a7b4ebdf Bug 1654103: Standardize on Black for Python code in `mozilla-central`.
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
2020-10-26 18:34:53 +00:00
Bogdan Tara da1098d4aa Backed out 10 changesets (bug 1654103, bug 1672023, bug 1518999) for PanZoomControllerTest.touchEventForResult gv-junit failures CLOSED TREE
Backed out changeset ff3fb0b4a512 (bug 1672023)
Backed out changeset e7834b600201 (bug 1654103)
Backed out changeset 807893ca8069 (bug 1518999)
Backed out changeset 13e6b92440e9 (bug 1518999)
Backed out changeset 8b2ac5a6c98a (bug 1518999)
Backed out changeset 575748295752 (bug 1518999)
Backed out changeset 65f07ce7b39b (bug 1518999)
Backed out changeset 4bb80556158d (bug 1518999)
Backed out changeset 8ac8461d7bd7 (bug 1518999)
Backed out changeset e8ba13ee17f5 (bug 1518999)
2020-10-24 03:36:18 +03:00
Ricky Stewart c0cea3b0fa Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
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
2020-10-23 20:40:42 +00:00
Dorel Luca 1ff59cb7a3 Backed out changeset 7558c8821a07 (bug 1654103) for multiple failures. CLOSED TREE 2020-10-22 03:51:06 +03:00
Ricky Stewart 50762dacab Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
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
2020-10-21 21:27:27 +00:00
Ricky Stewart 18cc8129db Bug 1666517 - `./mach busted` shows recent resolved bugs as well as unresolved bugs r=mhentges,dmajor DONTBUILD
The idea here is that if someone else reported a bug and it got fixed immediately, but you don't have the fix yet for whatever reason (e.g you haven't pulled to the latest `central` or whatever), then you'll see it here. I've chosen 15 days as the cutoff basically arbitrarily.

Differential Revision: https://phabricator.services.mozilla.com/D91062
2020-09-23 20:40:25 +00:00
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
Eric Rahm 6611c40970 Bug 1306503 - Add logspam mach commands. r=firefox-build-system-reviewers,mhentges,rstewart
This adds support for invoking the |mach logspam {report|file|bisect}|
commands. The core logic from the pypi base command is reused.

Differential Revision: https://phabricator.services.mozilla.com/D85493
2020-08-03 18:44:18 +00:00
Eric Rahm a442c0fca4 Bug 1306503 - Split out a reusable pypi tool class. r=firefox-build-system-reviewers,mhentges,rstewart
This splits out the pypi tool logic baked into the mozregression command. It
will be reused for the logspam command.

Differential Revision: https://phabricator.services.mozilla.com/D85492
2020-08-03 18:44:10 +00:00
neil 974e53c285 Bug 1639509 Remove mach uuid r=championshuttler,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79540
2020-07-13 15:43:24 +00:00
Andrew Halberstadt d0fbcca0b6 Bug 985141 - [mozbuild] Remove leading underscore from MozbuildObject._activate_virtualenv, r=firefox-build-system-reviewers,perftest-reviewers,andi,AlexandruIonescu,rstewart
This function is used all across the tree and should be considered a public API.

Differential Revision: https://phabricator.services.mozilla.com/D85045
2020-07-28 16:06:10 +00:00
Dan Mosedale e9c23bbb90 Bug 1652173 - implement `mach node` and `mach npm`, r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D83204
2020-07-13 21:31:31 +00:00
Ricky Stewart 7bee84802f Bug 1641992 - Add argument to `mach busted file` to specify which component the bug should be filed against r=froydnj
With the addition of this change, a lone `mach busted file` will throw an error (since this should only ever be used by actual humans, and not in automation or anything, the backwards-compatibility breakage isn't a huge deal). Now it's expected to pass in `mach busted file $COMMAND`, where $COMMAND is the mach command that you were running when the error occurred, and we'll figure out which bugzilla component to file the bug against for you instead of directing it to `Firefox Build System :: General` regardless of whether the issue has *anything* to do with the build system. We preserve `mach busted file general` as a backup command that doesn't do any of this heavy logic.

Differential Revision: https://phabricator.services.mozilla.com/D77538
2020-06-01 16:23:48 +00:00
Tilden Windsor 3a9676792b Bug 1639483 - Remove "mach search". r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D76305
2020-05-21 15:49:57 +00:00
Connor Sheehan 71b33e1850 Bug 1574977: restore `mach pastebin` and port to new service r=nalexander
This commit re-implements `mach pastebin` for use with the new Mozilla
pastebin tool (paste.mozilla.org). As with the old implementation, the
tool supports passing a file for upload as well as reading content to
paste from stdin.

`dpaste` (the software that runs `paste.mo`) is supposed to support
sniffing the correct syntax highlighter from the given filename, but
this feature does not seem to work (both on `paste.mo` nor `dpaste.de`).
Instead we have a mapping of known filename extensions to known available
highlighters on `paste.mo`. `mach pastebin` will attempt to guess a
highlighter from the file extension or the basename of the file if none
is available.

Differential Revision: https://phabricator.services.mozilla.com/D42902

--HG--
extra : moz-landing-system : lando
2019-08-22 18:11:26 +00:00
Edwin Gao 892c0866e2 Bug 1559975 - fix python2 lint issues in tools/mach_commands.py r=ahal,catlee
Changes:
- add `print_function` to satisfy py2 linter

Differential Revision: https://phabricator.services.mozilla.com/D37117

--HG--
extra : moz-landing-system : lando
2019-07-19 14:50:07 +00:00
Bobby Holley 8864a06b2a Bug 1543246 - Implement |./mach busted|. r=froydnj
Depends on D26817

Differential Revision: https://phabricator.services.mozilla.com/D26818

--HG--
extra : moz-landing-system : lando
2019-04-10 16:26:44 +00:00
Bobby Holley 92dd11b20e Bug 1543246 - Add searchfox support to mach. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D26817

--HG--
extra : moz-landing-system : lando
2019-04-10 16:26:42 +00:00
Chris Manchester 2a2d1b1a0e Bug 1480362 - Remove |./mach pastebin| command now that the service is no longer available. r=firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D19085

--HG--
extra : moz-landing-system : lando
2019-02-08 19:50:29 +00:00
Tom Ritter 8728bdccf7 Bug 1455378 Give an informative error message of you try to ./mach pastebin too large a file. r=gps
--HG--
extra : rebase_source : 719fb33701b159955494031708d9366a57b31f9a
2018-04-19 17:31:00 +00:00
Andi-Bogdan Postelnicu 9ca255c241 Bug 1405554 - Merge clang-format with clang-tidy under the same package from toolchains. r=gps
MozReview-Commit-ID: 1XokTUVmVPL

--HG--
extra : rebase_source : bd52ecd720eb3a0a145660c3c5b55922f571f9fb
2018-02-09 09:01:17 +02:00
Margareta Eliza Balazs 9ab2f0f44f Backed out changeset 773a25b97a66 (bug 1405554) for f8 lint failure in /builds/worker/checkouts/gecko/tools/mach_commands.py on a CLOSED TREE 2018-02-08 19:36:21 +02:00
Andi-Bogdan Postelnicu 51fc404396 Bug 1405554 - Merge clang-format with clang-tidy under the same package from toolchains. r=gps
MozReview-Commit-ID: 1XokTUVmVPL

--HG--
extra : rebase_source : 13cab9c90d98da10dcafbe788c4e8b67fcd56803
2018-01-31 11:02:23 +02:00
hrdktg cfc465ea00 Bug 1419986 - Fix ./mach clang-format when run without path argument. r=sylvestre
MozReview-Commit-ID: EdYpYzFHXeM

--HG--
extra : amend_source : 29ce6eddc34d1bfdef856cd0b2286bbf4f67e5ed
2017-11-22 13:06:14 +05:30
hrdktg 08472314bf Bug 1413612 - Allow running ./mach clang-format outside of topsrcdir. r=sylvestre
MozReview-Commit-ID: G6F6cFZab3d
2017-11-21 18:22:11 +05:30
Sylvestre Ledru 8aad132e5c Bug 1411004 - ./mach clang-format: Better handling of relative paths r=mystor=mystor
For example, this is addressing the issue:
./mach clang-format -p ./mfbt/

MozReview-Commit-ID: Le8mPTOEfA7

--HG--
extra : rebase_source : ed196a2a86793d6601f590ce04744ebc7f3cd303
2017-10-30 18:36:28 +01:00
Sebastian Hengst 8d87f8dc5c Backed out changeset 31f259ee387b (bug 1411004) for failing flake8 at tools/mach_commands.py:307:14 | indentation is not a multiple of four. r=backout
--HG--
extra : rebase_source : 9aa7815837319af97673a17aae6096b297b9564d
2017-10-31 16:20:11 +01:00
Sylvestre Ledru 751ec47c7c Bug 1411004 - ./mach clang-format: Better handling of relative paths r=mystor=mystor
For example, this is addressing the issue:
./mach clang-format -p ./mfbt/

MozReview-Commit-ID: Le8mPTOEfA7

--HG--
extra : rebase_source : 87ca393854f1dfc4f3959e91677a4cbc6fb80287
2017-10-30 18:36:28 +01:00
Sylvestre Ledru e0bda6ceaf Bug 1410938 - Make mach_commands.py flake8/pep8 compatible and add it the list of flake8 files r=gps
MozReview-Commit-ID: HKWsDehR0vZ

--HG--
extra : rebase_source : 1e77f8aee5f909dd7b4cfaace6014015c51cf589
2017-10-23 18:40:22 +02:00
Sylvestre Ledru c879ade558 Bug 1410938 - Split the clang-format calls into batches of 200 files r=gps
MozReview-Commit-ID: 3cH295RBcv3

--HG--
extra : rebase_source : 68765af2185f73820963da052d3aec036358a2e5
2017-10-23 18:14:32 +02:00
Sylvestre Ledru 10aea37400 Bug 1397457 - Update mach to download clang-format 5.0 - Remove the deprecated comment r=trivial DONTBUILD 2017-09-11 10:07:50 +02:00
Sylvestre Ledru 5c735fdea1 Bug 1397457 - Update mach to download clang-format 5.0 r=andi
MozReview-Commit-ID: EF3thvpxg6G

--HG--
extra : rebase_source : e5db9ed4ff526973eea091e3af79cd8aff2fc427
2017-09-06 23:56:34 +02:00
Xavier ALT f8d3bcf27f Bug 1392012 - ./clang-format with git should exclude files from .clang-format-ignore r=sylvestre
MozReview-Commit-ID: KsgPnN9aDTC

--HG--
extra : rebase_source : c7d245eae583b2c29b07f130d311a864606219a0
2017-08-24 23:41:44 +02:00
Xavier ALT 7e2ea48a18 Bug 1389956 - extract clang format diff command generation into its own method r=sylvestre
MozReview-Commit-ID: 8kbZcfMBe4J

--HG--
extra : rebase_source : 77a38c8812075c0d8258d427eb11827be51bfac1
2017-08-23 00:24:23 +02:00
Rok Garbas f3a3affcf2 Bug 1284475 - migrate ToolTool blueprint to new codebase of relengapi r=KWierso
UPGRADE_NSS_RELEASE a=kaie
MozReview-Commit-ID: 7CB1VYb8OJP

--HG--
extra : rebase_source : 04751620add813cd1780898d109d9f7fa89d7b2d
2017-08-08 10:55:52 +02:00
Gregory Szorc ad141eef1b Bug 1392886 - Expose repository type as an instance property; r=mshal
This will remove the need to sniff class types. The 1 in-tree
consumer doing this has been converted.

MozReview-Commit-ID: I8cUa8J54VE

--HG--
extra : rebase_source : 4c24adaf7eb9d62678ac78604e819a7376d4073b
2017-08-22 20:04:55 -07:00
Sylvestre Ledru 89677ada26 Bug 1391231 - Use the list provided by .clang-format-ignore instead of only thirdpartypath.txt r=gps
MozReview-Commit-ID: CY1fS7Fg1y

--HG--
extra : rebase_source : a419bfba44e2e74e3ac9f7592d6da04b702590ec
2017-08-17 15:22:06 +02:00
Xavier ALT 53bbc12c9a Bug 1387035 - Update clang-format methods to use mozversioncontrol for hg/git detection r=gps
MozReview-Commit-ID: IZTPYtTxuKu

--HG--
extra : rebase_source : dda9f730cad1635874842a043a1b83450995d236
2017-08-15 23:23:30 +02:00
Prithviraj Pawar 6e753a8ef2 Bug 1387036 : ./mach clang-format , removed filterdiff and added "git diff -- *" for restricting diff to a given set of file extensions. r=sylvestre
MozReview-Commit-ID: 3M7GMpFYqkR

--HG--
extra : rebase_source : 57693361d49137f53396461c0c4c0c7df4cd2aaa
2017-08-12 23:35:51 +05:30
Sylvestre Ledru 3aab9a7979 Bug 1376803 - add support of ./mach clang-format -p <file/dir> r=gps
MozReview-Commit-ID: nmAqNsSWho

--HG--
extra : rebase_source : 880980ae1a458c06fe66d7ce60d0a66fee7cd883
2017-06-29 09:35:23 -07:00
Sylvestre Ledru dbf920a78e Bug 1376803 - Move the clang-format diff into a specific function r=gps
MozReview-Commit-ID: C7cy5U0HJ8

--HG--
extra : rebase_source : 7113cfa45a2c50a756cacceba6d73e73c86942c8
2017-06-27 18:34:39 -07:00