Commit Graph

51 Commits

Author SHA1 Message Date
Andrew Halberstadt
7e537b9fdc Bug 902002 - Don't display mach categories in help if no commands exist under them, r=gps, DONTBUILD, a=NPOTB 2013-08-07 15:17:08 -04:00
Gregory Szorc
3f54869e4b Bug 894197 - Define state directory in mach context object; r=jhammel
DONTBUILD (NPOTB)
2013-07-15 19:56:15 -07:00
Gregory Szorc
6b1167c227 Bug 879406 - Unbust |mach help| when arguments are not prefixed with '-'; r=ted
DONTBUILD (NPOTB)
2013-06-14 09:44:33 -07:00
Gregory Szorc
d541e7f5d5 Bug 878089 - mach shouldn't fail if terminal couldn't be configured; r=ted
DONTBUILD (NPOTB)
2013-06-10 16:16:25 -07:00
Ehsan Akhgari
5dfa419274 Bug 878859 - Remove the mach clippy avatar; r=ted
DONTBUILD since this is not part of the build!
2013-06-03 15:46:23 -04:00
Gregory Szorc
615c504f9b Bug 874471 - Handle mach command help more robustly; r=ted
DONTBUILD (NPOTB) on a CLOSED TREE
2013-05-21 15:37:06 -07:00
Matt Brubeck
7587123eae Bug 799680 - Add a bash completion script for mach [r=gps]
DONTBUILD (not part of the build)
2013-05-15 17:00:01 -07:00
Matt Brubeck
0a12c603af Bug 872807 - Make mach command names case-insensitive [r=gps]
DONTBUILD (not part of the build)
2013-05-15 16:58:11 -07:00
Ms2ger
cbd5d22f79 No bug - Fix mach's highlighting of 'TEST-UNEXPECTED-FAIL'; oy-r=gps 2013-05-10 09:13:32 +02:00
Gregory Szorc
2afb3f3369 Bug 856392 - Categorize mach commands; r=jhammel
DONTBUILD (NPOTB)
2013-05-08 17:56:30 -07:00
Gregory Szorc
4086f318b9 Bug 857984 - mach mochitest now colorizes and prints failure summary; r=Ms2ger 2013-04-04 15:17:23 -07:00
Ms2ger
7a4e479db0 Backout changeset e1bddda508fe for double logging when running mochitests through mach. 2013-04-07 10:11:11 +02:00
Gregory Szorc
935e4805b0 Bug 857984 - mach mochitest now colorizes and prints failure summary; r=Ms2ger
--HG--
extra : rebase_source : 97900c2bf0aaa83a3a9fa5e4dc88901140f66e60
2013-04-04 15:17:23 -07:00
Matt Brubeck
2802c34f95 Bug 841445 - Make 'mach help <command>' call print_help directly [r=gps]
DONTBUILD (not part of the build)
2013-03-26 11:15:08 -07:00
Daniel Holbert
38ac00bdbf Bug 854058: Fix typo in mach error message: s/occured/occurred/. r=gps DONTBUILD 2013-03-22 22:02:37 -07:00
Matt Brubeck
f7c49205a8 Bug 853225 - Fix the mach usage line for subcommands [r=gps]
DONTBUILD (not part of the build)
2013-03-20 17:53:34 -07:00
Gregory Szorc
e1391a8122 Bug 846409 - Add |mach mach-debug-commands|; r=jhammel
DONTBUILD (NPOTB)
2013-03-04 10:18:48 -08:00
Gregory Szorc
8821ce28f8 Bug 818777 - Switch to NamedTemporaryFile from mozfile; r=ted
This version works with Windows.
2012-12-20 16:11:35 -08:00
Gregory Szorc
3c90f824e7 Bug 818649 - Ensure mach logs are written to log file; r=jhammel
DONTBUILD (NPOTB)
2012-12-07 11:44:11 -08:00
Gregory Szorc
effb7c4ec4 Bug 818366 - Ability to pass through file descriptors to child processes; r=jhammel 2012-12-05 14:22:58 -08:00
Gregory Szorc
e57f6c26ce Bug 810742 - Handle callee thrown exceptions when invoking a mach command; r=jhammel 2012-12-05 14:21:58 -08:00
Gregory Szorc
fda723869f Bug 818628 - Handle long exit code values; r=edmorley
DONTBUILD (NPOTB)
2012-12-05 12:32:09 -08:00
Gregory Szorc
6c043cff64 Bug 814075 - Remove reference to mach test, fix help usage; r=me
DONTBUILD (NPOTB)
2012-11-21 10:25:44 -08:00
Gregory Szorc
286bd17a50 Bug 797471 - Handle mochitest failures gracefully in mach; r=Ms2ger 2012-11-14 12:56:02 -08:00
Cameron McCormack
9602f337f2 Bug 809650 - Handle mach @CommandArguments in the right order. DONTBUILD (NPOTB) r=gps 2012-11-08 10:21:43 +11:00
Gregory Szorc
e7977769f9 Bug 809544 - mach now prints elapsed time as MM:SS; r=jhammel 2012-11-07 11:54:41 -08:00
Gregory Szorc
96087ea75a Bug 807974 - Handle make errors more gracefully; r=jhammel
We now return the status code from executed processes. The API to
require a successful status code has been changed from ignore_errors to
ensure_exit_code. The build mach command no longer spews a stack trace
if make fails.

DONTBUILD (NPOTB)
2012-11-06 17:01:08 -08:00
Gregory Szorc
a015660155 Bug 808346 - Don't scan sys.path to discover mach commands; r=jhammel
All mach modules are now explicitly listed in the mach driver.

--HG--
rename : python/mozbuild/mach/commands/build.py => python/mozbuild/mozbuild/mach_commands.py
2012-11-06 17:00:19 -08:00
Gregory Szorc
47aa1a9366 Bug 808336 - Part 2: Discover mach settings providers via decorators; r=jhammel
With this patch, mach is now decoupled from the build system and is
truly a generic command dispatching framework.
2012-11-06 16:58:13 -08:00
Gregory Szorc
203a9e64f9 Bug 808336 - Part 1: Refactor mach command handler management; r=jhammel
Previously we were tighly coupled with MozbuildObject. This was not in
the spirit of mach being a generic tool. Now, instead of passing multiple
arguments to __init__ of the class providing the mach command we either
pass 0 or 1. The number of arguments is detected when processing the
@CommandProvider decorator. The optional argument is a named tuple
containing mach run-time state.

Capturing of mach command provider information is now captured in a
class (as opposed to an anoymous tuple). We also capture these in a rich
data structure which is passed as part of the run-time data to the
command provider class. This allows mach commands to inspect the mach
environment.

Mach decorators have been moved to mach.decorators. mach.base is
reserved for generic mach data/container classes.

Existing mach command classes derived from MozbuildObject have been
replaced with either object or mozbuild.base.MachCommandBase. This
latter class translates the mach context instance passed to __init__
into the constructor arguments for MozbuildObject.__init__.

Support for registering function handlers with mach has been removed.
All handlers must be inside classes.

--HG--
rename : python/mach/mach/base.py => python/mach/mach/decorators.py
2012-11-06 16:57:41 -08:00
Ms2ger
87cc03d608 Bug 799648 - Followup followup: Add the line back where it was meant to be; r=gps (NPOTB, DONTBUILD) 2012-10-11 22:00:37 +02:00
Gregory Szorc
a9eb0b06d7 Bug 799648 - Part 4: Temporarily disable settings file integration; r=jhammel
DONTBUILD (NPOTB)
2012-10-10 11:09:21 -07:00
Gregory Szorc
437679b76b Bug 799648 - Part 3: Move config module from mozbuild to mach; r=jhammel
--HG--
rename : python/mozbuild/mozbuild/config.py => python/mach/mach/config.py
rename : python/mozbuild/mozbuild/test/test_config.py => python/mach/mach/test/test_config.py
2012-10-10 11:08:10 -07:00
Gregory Szorc
194f8b0246 Bug 799648 - Part 2: Move mozbuild's log manager into mach; r=jhammel
--HG--
rename : python/mozbuild/mozbuild/logger.py => python/mach/mach/logging.py
rename : python/mozbuild/mozbuild/test/test_logger.py => python/mach/mach/test/test_logger.py
2012-10-10 11:08:09 -07:00
Gregory Szorc
51818ea64b Bug 799648 - Part 1: Move process execution and logging methods into Mach mixin classes; r=jhammel 2012-10-10 11:08:09 -07:00
Gregory Szorc
4e06481823 Bug 799312 - Implement |mach help <command>|; r=jhammel
Previously you had to |mach <command> --help|. Both forms now work.
2012-10-10 11:08:09 -07:00
Gregory Szorc
ca38f7a4a6 Bug 795427 - Part 3: Print more user friendly error messages; r=jhammel 2012-10-10 11:08:09 -07:00
Gregory Szorc
89e2129d77 Bug 799262 - Formal API for loading mach command modules; r=jhammel 2012-10-10 11:08:09 -07:00
Gregory Szorc
060a0c42f9 Bug 794509 - Part 3: Automatically discover mach commands in sys.path; r=jhammel
DONTBUILD (NPOTB)
2012-10-05 12:19:19 -07:00
Gregory Szorc
d1f15571d1 Bug 794509 - Part 2: Move mach command modules into a mach.commands sub-module; r=jhammel
This patch on its own will break mach. Part 3 will refactor mach's
loader to discover and load modules using a modified module finding
method.

--HG--
rename : python/mach/mach/settings.py => python/mach/mach/commands/settings.py
rename : python/mach/mach/build.py => python/mozbuild/mach/commands/build.py
rename : python/mach/mach/testing.py => python/mozbuild/mach/commands/testing.py
rename : python/mach/mach/warnings.py => python/mozbuild/mach/commands/warnings.py
2012-10-05 12:13:18 -07:00
Gregory Szorc
d6ccd6209d Bug 794509 - Part 1: mach subcommands are now defined through Python decorators; r=jhammel 2012-10-05 12:12:51 -07:00
Gregory Szorc
b5354431a8 Bug 795427 - Part 2: Terminate mach silently when KeyboardInterrupt is raised; r=jhammel
DONTBUILD (NPOTB)
2012-10-04 17:43:56 -07:00
Gregory Szorc
71e7085b92 Bug 795427 - Part 1: Proper exit codes from mach; r=jhammel 2012-10-04 17:43:54 -07:00
Ms2ger
dd7df1a544 Bug 780698 - Part c: Support mochitest-a11y, reftest, crashtest in mach; r=gps 2012-10-02 10:24:12 +02:00
Ms2ger
40beeb0722 Bug 780698 - Part b: Fix mochitest runners; r=gps 2012-10-02 10:24:11 +02:00
Gregory Szorc
411107479e Bug 795394 - Default to utf-8 encoding when no encoding is specified; r=jhammel
DONTBUILD (NPOTB)
2012-10-01 11:12:33 -07:00
Gregory Szorc
54087fdfa1 Bug 795491 - Improve mach's help text; r=jhammel 2012-10-01 11:06:40 -07:00
Gregory Szorc
733f2ff586 Bug 751795 - Part 5: mach can now build the tree, record compiler warnings; r=jhammel
This is meant to be a stop-gap until more robust tree building lands in
mozbuild. It simply proxies building through client.mk and captures
compiler warnings using the existing mechanism in mozbuild.

There are some DRY violations for how the compiler database is managed.
The more robust tree building code contains consolidated compiler
database logic. The DRY violations should disappear when that lands.

DONTBUILD (NPOTB)
2012-09-26 16:42:38 -07:00
Gregory Szorc
20d59f541e Bug 751795 - Part 3: Testing module; r=jhammel DONTBUILD (NPOTB)
mach can now run some tests.
2012-09-26 09:46:27 -07:00
Gregory Szorc
f0e0eb9adf Bug 751795 - Part 2: Add settings module; r=jhammel 2012-09-26 09:44:38 -07:00