Commit Graph

82 Commits

Author SHA1 Message Date
James Graham
81cdf61bf6 Bug 1207377 - Add a |mach mozharness| command for running tests locally in mozharness, r=ahal 2015-12-07 12:32:04 +00:00
Maja Frydrychowicz
2f6e88a939 Bug 1150512 - Move Marionette test runner to wptserve; r=automatedtester
--HG--
extra : commitid : 1DWdAQuXZz
extra : rebase_source : e58b63b2209e30cd0bdd44f82ceda8495bd0c604
extra : histedit_source : 6278a8fc009cc99b432bc880eaa59bb5d1597685
2015-12-03 15:48:41 -05:00
Mike Hommey
d82628efbd Bug 1229623 - Remove compilation/database.py from mach_bootstrap.py. r=mshal
When I modified ehsan's patch in bug 904572 to switch to a build backend
instead of a mach command, I forgot to remove the line added to
mach_bootstrap.py to pick the mach command, which now doesn't exist.
2015-12-03 13:34:02 +09:00
Mike Hommey
fb7b4a5eae Bug 1151124 - Add a simplified version of pymake's clinetoargv to mozbuild and use it. r=gps
Pymake's clinetoargv is very specific to pymake's use case, yet has been abused
as a replacement for shlex because shlex doesn't handle things properly for our
use cases.

Using pymake's clinetoargv, however, has shortcomings, and we're better off
importing its code in mozbuild, simplifying it a little, and using that
instead.

Plus, less dependencies on pymake will help kill it for good some day.
2015-11-24 11:29:14 +09:00
Jonas Sicking
725c0b32de Bug 1222235: Remove monthly mercurial-update reminder. r=gps 2015-11-05 15:54:55 -08:00
Andrew Halberstadt
b6ff044247 Bug 1212840 - Add mozinstall to mach SEARCH_PATHS, r=armenzg
--HG--
extra : commitid : IRyJ0i6SUB9
extra : rebase_source : 6d9ccee779292a6ebad2f19ae1aa63f31be7d91f
2015-10-08 09:10:03 -04:00
Ehsan Akhgari
b73f093357 Bug 904572 - Add support for generating clang compilation database; r=glandium,r=gps 2015-09-29 09:23:50 +09:00
Nicholas Nethercote
de59a42fb1 Bug 1204787 - Add |mach power|. r=glandium.
This extracts the most useful browser-related measurements from rapl and
powermetrics.

--HG--
extra : rebase_source : 81ce14acc6c6e1bc7ac6c34bf119d8e619956dd1
2015-09-15 16:23:45 +10:00
Peter Moore
0cc8144421 Bug 1194767 - use slugid 1.0.6 in ./mach taskcluster-graph command. r=wcosta
This included adding the slugid 1.0.6 python source code in /python since slugid
is now a dependency of the ./mach taskcluster-graph command, as well us updating
references that used it. Previously the implementation was in-tree.
2015-09-04 17:59:34 +02:00
Gregory Szorc
6be757d647 Bug 1190525 - Print path to mach; r=smacleod
--HG--
extra : commitid : 5yWnVhM1WvG
extra : rebase_source : a92fb2973f31a02f22d1a5dd9fb72b91ac2224e5
extra : amend_source : 6dc735d360827bf3db0b1eb0f8d12f4d21aacd15
2015-08-18 17:04:57 -07:00
Mike Hommey
2d36214d76 Bug 1188224 - Remove stale .pyc files from the source directory at import time. r=gps 2015-08-05 15:45:45 +09:00
Mike Hommey
2f34d661ae Backed out changeset 684252f11061 (bug 1188224) for make check bustage. 2015-08-05 13:50:11 +09:00
Mike Hommey
4be11b7533 Bug 1188224 - Remove stale .pyc files from the source directory at import time. r=gps 2015-08-05 11:17:03 +09:00
Julien Pagès
23e4c1d4a3 Bug 1091285 - move dumpScreen in a new mozscreenshot package. r=jgriffin
This also completely remove build/automationutils.py.

--HG--
extra : commitid : 50v6EAQNEHV
extra : rebase_source : 4ac1347d73498f068979514c6afb16ac50ab4033
2015-07-29 17:50:16 +02:00
Gregory Szorc
7d3179c6e2 Bug 1185557 - Clarify that mach mercurial-setup doesn't make changes without prompting; r=smacleod
It's been clear from user feedback that people don't realize that `mach
mercurial-setup` doesn't make any changes unless they tell it to.
Reinforce this message in the prompts printed by mach_boostrap.py.

--HG--
extra : commitid : DmE2U8DHQ3M
extra : rebase_source : 20e5c4d6ff7610bdceef7817c5ea2854d271ccdf
2015-07-21 10:10:22 -07:00
Gregory Szorc
c0a2520351 Bug 1185612 - Detect closed stdin file descriptor; r=bholley
isatty() raises ValueError if the file descriptor is closed. Detect
closed file descriptors.

--HG--
extra : commitid : 3wH6lYWoPHZ
extra : rebase_source : df0f657a3b2afa6dbc710e98c0b3c31f3b8be486
extra : amend_source : 7a153ea95c7b77cf0d53116d70c7a840fbbdb92e
2015-07-20 11:17:00 -07:00
Gregory Szorc
74ed7bcd35 Bug 1184598 - Don't perform mercurial-setup check for mach-commands command; r=smacleod
This command is used by tab completion handlers. A user reported that
hitting tab in his shell resulted in the mercurial-setup out of date
check spewing output.

--HG--
extra : commitid : 5DE199lHcn2
extra : rebase_source : 7f2ef1c325b3f0deb091798a5d21820257d6c1f6
extra : amend_source : 016428cf3d2442cc2ced24d328aec53a752619ab
2015-07-16 14:37:14 -07:00
Gregory Szorc
8b149c9e84 Bug 1182677 - Aggressively prompt to run mach mercurial-setup; r=smacleod
Having not configured or out-of-date tools benefits nobody. It slows
people down.

Version control tools are an integral part of working on Firefox. It is
important for version control tools to be configured optimally and to be
continuously updated so they stay optimal.

The `mach mercurial-setup` command exists to optimally configure
Mercurial for working on Firefox and other Mozilla projects.

This commit adds a pre-dispatch handler to mach that will verify
Mercurial is in a happy state. If `mach mercurial-setup` has never
executed, it will complain. If `mach mercurial-setup` hasn't been
executed in the past 31 days, it will complain.

Yes, aborting command execution and forcing people to context switch to
run `mach mercurial-setup` is annoying. First, we have carved out
several exceptions to this behavior, including detection for running in
automation, on the machines of curmudgeons, when Mercurial isn't being
used, and from non-interactive processes. Second, I argue that people
ignore optional notifications and that having persistently
poorly-configured tools is worse than a single context switch at most
every month. Therefore, the heavyhanded approach is justified.

In addition, if we did support a non-fatal notification, we would
introduce the problem of extra output from commands. If anyone was e.g.
parsing mach output, we could very likely break those systems. These
cases should be caught by the isatty() check or be running in a context
with MOZ_AUTOMATION set. But you never know.

--HG--
extra : commitid : 7f7JQpa953u
extra : rebase_source : 47b6304b6ac2c9d8136f2023a7d03df7d1f45e4f
extra : source : f06616ee7b2b54d63d20ee4795539514d1df8c7b
2015-07-14 14:20:03 -07:00
Gregory Szorc
30827b6f14 Backed out changeset f06616ee7b2b (bug 1182677)
TaskCluster is not amused.

--HG--
extra : commitid : CyAmoMQ15bK
extra : amend_source : 7b898d2dd2639209c205877270fbc469e3428e0c
2015-07-14 13:58:43 -07:00
Gregory Szorc
45c880523f Bug 1182677 - Aggressively prompt to run mach mercurial-setup; r=smacleod
Having not configured or out-of-date tools benefits nobody. It slows
people down.

Version control tools are an integral part of working on Firefox. It is
important for version control tools to be configured optimally and to be
continuously updated so they stay optimal.

The `mach mercurial-setup` command exists to optimally configure
Mercurial for working on Firefox and other Mozilla projects.

This commit adds a pre-dispatch handler to mach that will verify
Mercurial is in a happy state. If `mach mercurial-setup` has never
executed, it will complain. If `mach mercurial-setup` hasn't been
executed in the past 2 weeks, it will complain.

Yes, aborting command execution and forcing people to context switch to
run `mach mercurial-setup` is annoying. First, we have carved out
several exceptions to this behavior, including detection for running in
automation, on the machines of curmudgeons, when Mercurial isn't being
used, and from non-interactive processes. Second, I argue that people
ignore optional notifications and that having persistently
poorly-configured tools is worse than a single context switch at most
every 2 weeks. Therefore, the heavyhanded approach is justified.

In addition, if we did support a non-fatal notification, we would
introduce the problem of extra output from commands. If anyone was e.g.
parsing mach output, we could very likely break those systems. These
cases should be caught by the isatty() check or be running in a context
with MOZ_AUTOMATION set. But you never know.

--HG--
extra : commitid : AWLag0bpQOY
extra : rebase_source : fba19b918e9eadc6d5976c10d82974fb7e835e9d
2015-07-14 13:53:50 -07:00
Gregory Szorc
b696aaef57 Bug 1182677 - Refactor state directory lookup into own function; r=smacleod
A subsequent commit will want to access the state directory path without
possibly creating it. Make that possible by extracting path resolution
to its own function.

--HG--
extra : commitid : 60aMbblXNF9
extra : rebase_source : 5e83e36d32ff1f581e91b442005139c89f3bc3f3
2015-07-14 13:44:59 -07:00
Julien Pagès
addba42d69 Bug 1091274 - Move leak log functions out of automationutils and into mozbase. r=jgriffin 2015-07-03 07:04:22 +02:00
Chris Manchester
7c8e569eaf Bug 1149670 - Add a mach command to find tests in specified directories and prepare a commit to push them to try.;r=ahal
--HG--
extra : commitid : EDP1u6cliJy
2015-05-28 15:57:21 -07:00
Andrew Halberstadt
601518ec18 Bug 1169714 - Add requests to mach bootstrap SEARCH_PATH, r=jgriffin
--HG--
extra : rebase_source : 7936ffa21f1429338566c2371e8683ef8b0367fc
2015-05-29 14:01:25 -04:00
Jonathan Griffin
4feab373ba Bug 1163833 - Add integration with browsermob-proxy, r=dburns 2015-05-27 10:00:09 -07:00
Andrew Halberstadt
6a55c03d43 Bug 1058923 - Package mach in tests.zip; create bootstrap script for test package, r=gps
--HG--
extra : rebase_source : 9f988171182a0abd54724e0cc2906fe678da318f
extra : source : 7923a0c837b56efcd1376b95318fe4cdce03d5e8
2015-05-01 12:20:55 -04:00
Ehsan Akhgari
3e88d83106 Bug 892973 - Add support for the YouCompleteMe vim plugin; r=gps 2015-04-27 13:08:43 -04:00
Alexandre Poirot
c5e3c63860 Bug 1147031 - Write mach command for luciddream. r=jgriffin 2015-04-09 11:46:00 -04:00
Ryan VanderMeulen
720e898086 Backed out changeset a209d4d37f8f (bug 1147031) for Luciddream bustage. 2015-04-07 11:48:46 -04:00
Alexandre Poirot
72aa4edbeb Bug 1147031 - Write mach command for luciddream. r=jgriffin 2015-04-02 10:55:00 -04:00
Axel Hecht
1ce66ccec6 Bug 940103 - Add a mach command to call compare-locales. r=gps
We're using as many defaults from the configure step as we can. We're also opinionated upon the defaults, but obviously allow most compare-locales options to be specified.

There are two exceptions:
Reference language is specified to be en-US, without optional argument. This is our in-tree command, and the reference language is known.
We always clobber the merge dir, and don't give an option not to. We default to a merge dir in the objdir, so we don't need to be that paranoid as in the standalone version.

Also, compare-locales clobbers merge-dir/browser etc, so you're not going to get / removed.

--HG--
extra : rebase_source : c0f63e566779e83201708d05966f3583ae82e4ee
2015-03-18 18:47:36 +01:00
Chris Manchester
dc928c0e88 Bug 1109183 - Fix imports of the marionette client and remove spurious entry from sys.path provided by mach. r=ahal
--HG--
extra : rebase_source : 1c6579dfd5cd44973a74b5c0f81b14fca6f170d4
2015-03-03 17:37:19 -08:00
David Burns
e9b13c916c Bug 1107336: update build and test targets to use new marionette driver; r=jgriffin
--HG--
extra : rebase_source : 6f68fe231f117fe7a1b2ddcc0841acc7c4023403
2015-02-23 14:45:50 +00:00
Chris Manchester
88ee2578a8 Bug 1114474 - Unbreak some mach consumers of marionette.r=ahal 2015-02-10 13:55:33 -08:00
James Lal
4eaf9e1e54 Bug 1068653 - Part 2 add taskcluster trygraph commands r=wcosta, garndt, mdas
--HG--
extra : rebase_source : 4d2c484bc780bd20c13b9bca129bd173ac66624a
extra : source : 630a93355767c7813dc7b761309f6728a79c2c80
2014-11-26 10:11:28 -08:00
Carsten "Tomcat" Book
4d0b9273e4 Backed out changeset e6d21c2fa111 (bug 1107336) for breaking Web Platform Reftests on a CLOSED TREE 2015-01-21 16:14:03 +01:00
David Burns
cb7df25aff Bug 1107336: Update mach for newly created MarionetteDriver; r=jgriffin
--HG--
extra : rebase_source : 1ca3a7047dbaec3f29ec28e7914db1c9760a6f11
2014-12-09 20:14:23 +00:00
Nick Alexander
ef888e008b Bug 1103121 - Add |mach gradle| command for building Fennec Gradle. r=gps
I went with gradle instead of gradlew because it's more likely to be
what users consider.  And mach helpfully fixes up the uncommon typo.

This is a little hard-coded right now but I don't think it's likely
any other Gradle consumer will arise in the short term.

--HG--
extra : source : 67ce3d7591f944fa458758d97f443651f0e40dac
extra : amend_source : d10846e845deda5d368bdfdbb5b3d68706038992
extra : histedit_source : fb30750f389444a9619778d4c690d7de5e5fcbc1
2014-11-21 12:40:00 -08:00
Benoit Girard
9a2e89e1ac Bug 1062726 - Add ./mach ide [visualstudio,eclipse] command. r=gps
--HG--
extra : rebase_source : 6c0ed5227c59380722863be8ecc389d9a53fc0a0
2014-09-04 02:08:33 -04:00
Chris Manchester
83c51d6502 Bug 1050511 - Modify import of marionette harness to avoid a mismatch in assertRaises when running through mach. r=gps 2014-10-10 12:58:10 -04:00
Alessio Placitelli
e1fff09053 Bug 928397 - Add mozdebug package to mozbase. r=ted.mielczarek 2014-07-02 13:51:00 +02:00
James Graham
1d0db0076b Bug 945222 - Initial import of web-platform-tests testsuite 4/4 : Integration with build system, mach and mozharness, r=ahal,gps
--HG--
extra : rebase_source : 0d704f5a3edcbcef56d15b76ef26aae1b7232c4d
2014-09-04 12:52:43 +01:00
Nathan Froyd
a9ceaeb4dd Bug 1045617 - move services's run_server.py Makefile rules into mach; r=gps 2014-07-30 15:44:13 -04:00
Sylvestre Ledru
d257c5c025 Bug 1051987 - By default, hide the disabled commands. They are eating the display for no value. $ ./mach -v help bring them back. r=jmaher
From 7c2de97792113d3415acf2cfa1591fa05c5b07a8 Mon Sep 17 00:00:00 2001
 display for no value. $ ./mach -v help bring them back.
---
 build/mach_bootstrap.py        |  2 +-
 python/mach/mach/dispatcher.py | 14 +++++++-------
 python/mach/mach/main.py       |  3 +++
 3 files changed, 11 insertions(+), 8 deletions(-)
2014-08-11 18:31:24 +02:00
Mike Hommey
4474b717c2 Bug 1030717 - Don't try to create the mach state directory until it's actually needed. r=gps 2014-07-03 07:15:31 +09:00
Gregory Szorc
d8e33f0d59 Bug 1027215 - Generic Python code for parsing reftest manifests; r=roc
The immediate goal of this patch is to give the build system and testing
tools the knowledge to identify reftest files and directories. Parsing
extra metadata out of reftest manifests is currently a non-requirement,
but may be supported some day.

--HG--
extra : rebase_source : 279680af28c9175f5babe458a57203e8b19ab724
extra : histedit_source : c0e463ea02f87a376ef48e2b25136e5f6be4e61a
2014-06-17 17:29:57 -07:00
William Lachance
543aa429dc Bug 984528 - Rename manifestdestiny -> manifestparser. r=ahal
--HG--
rename : testing/mozbase/docs/manifestdestiny.rst => testing/mozbase/docs/manifestparser.rst
rename : testing/mozbase/manifestdestiny/manifestparser/__init__.py => testing/mozbase/manifestparser/manifestparser/__init__.py
rename : testing/mozbase/manifestdestiny/manifestparser/manifestparser.py => testing/mozbase/manifestparser/manifestparser/manifestparser.py
rename : testing/mozbase/manifestdestiny/setup.py => testing/mozbase/manifestparser/setup.py
rename : testing/mozbase/manifestdestiny/tests/comment-example.ini => testing/mozbase/manifestparser/tests/comment-example.ini
rename : testing/mozbase/manifestdestiny/tests/default-skipif.ini => testing/mozbase/manifestparser/tests/default-skipif.ini
rename : testing/mozbase/manifestdestiny/tests/filter-example.ini => testing/mozbase/manifestparser/tests/filter-example.ini
rename : testing/mozbase/manifestdestiny/tests/fleem => testing/mozbase/manifestparser/tests/fleem
rename : testing/mozbase/manifestdestiny/tests/include-example.ini => testing/mozbase/manifestparser/tests/include-example.ini
rename : testing/mozbase/manifestdestiny/tests/include/bar.ini => testing/mozbase/manifestparser/tests/include/bar.ini
rename : testing/mozbase/manifestdestiny/tests/include/crash-handling => testing/mozbase/manifestparser/tests/include/crash-handling
rename : testing/mozbase/manifestdestiny/tests/include/flowers => testing/mozbase/manifestparser/tests/include/flowers
rename : testing/mozbase/manifestdestiny/tests/include/foo.ini => testing/mozbase/manifestparser/tests/include/foo.ini
rename : testing/mozbase/manifestdestiny/tests/just-defaults.ini => testing/mozbase/manifestparser/tests/just-defaults.ini
rename : testing/mozbase/manifestdestiny/tests/manifest.ini => testing/mozbase/manifestparser/tests/manifest.ini
rename : testing/mozbase/manifestdestiny/tests/mozmill-example.ini => testing/mozbase/manifestparser/tests/mozmill-example.ini
rename : testing/mozbase/manifestdestiny/tests/mozmill-restart-example.ini => testing/mozbase/manifestparser/tests/mozmill-restart-example.ini
rename : testing/mozbase/manifestdestiny/tests/no-tests.ini => testing/mozbase/manifestparser/tests/no-tests.ini
rename : testing/mozbase/manifestdestiny/tests/path-example.ini => testing/mozbase/manifestparser/tests/path-example.ini
rename : testing/mozbase/manifestdestiny/tests/relative-path.ini => testing/mozbase/manifestparser/tests/relative-path.ini
rename : testing/mozbase/manifestdestiny/tests/test_convert_directory.py => testing/mozbase/manifestparser/tests/test_convert_directory.py
rename : testing/mozbase/manifestdestiny/tests/test_convert_symlinks.py => testing/mozbase/manifestparser/tests/test_convert_symlinks.py
rename : testing/mozbase/manifestdestiny/tests/test_default_skipif.py => testing/mozbase/manifestparser/tests/test_default_skipif.py
rename : testing/mozbase/manifestdestiny/tests/test_expressionparser.py => testing/mozbase/manifestparser/tests/test_expressionparser.py
rename : testing/mozbase/manifestdestiny/tests/test_manifestparser.py => testing/mozbase/manifestparser/tests/test_manifestparser.py
rename : testing/mozbase/manifestdestiny/tests/test_read_ini.py => testing/mozbase/manifestparser/tests/test_read_ini.py
rename : testing/mozbase/manifestdestiny/tests/test_testmanifest.py => testing/mozbase/manifestparser/tests/test_testmanifest.py
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/subdir/manifest.ini => testing/mozbase/manifestparser/tests/verifyDirectory/subdir/manifest.ini
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/subdir/test_sub.js => testing/mozbase/manifestparser/tests/verifyDirectory/subdir/test_sub.js
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/test_1.js => testing/mozbase/manifestparser/tests/verifyDirectory/test_1.js
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/test_2.js => testing/mozbase/manifestparser/tests/verifyDirectory/test_2.js
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/test_3.js => testing/mozbase/manifestparser/tests/verifyDirectory/test_3.js
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/verifyDirectory.ini => testing/mozbase/manifestparser/tests/verifyDirectory/verifyDirectory.ini
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/verifyDirectory_incomplete.ini => testing/mozbase/manifestparser/tests/verifyDirectory/verifyDirectory_incomplete.ini
rename : testing/mozbase/manifestdestiny/tests/verifyDirectory/verifyDirectory_toocomplete.ini => testing/mozbase/manifestparser/tests/verifyDirectory/verifyDirectory_toocomplete.ini
2014-06-10 13:20:23 -04:00
Jonathan Griffin
52e73c5315 Bug 996477 - Fix ImportError when running mach marionette-webapi, r=glandium 2014-04-16 10:27:25 -07:00
Gregory Szorc
766b00de4d Bug 903149 - Part 3: Support for minifying packaged JavaScript; r=glandium 2013-09-11 19:54:19 -07:00
Andrew Halberstadt
2162ac0779 Bug 949600 - Sync mozbase to m-c one last time, r=wlach 2014-02-19 16:42:01 -05:00