With `ac_add_options --enable-project=tools/crashreporter` in a
mozconfig, `./mach build` builds minidump_stackwalk, dump_syms
and fileid.
One caveat is that due to limitation in how the build system works
currently, it's cumbersome to keep dump_syms as a host program for
Gecko, and to make it a target program for this project. For now,
keep it as a host program. We're not going to use it on automation,
but it's still convenient to have for quick local builds (I've had
to resort to awful hacks downstream).
Differential Revision: https://phabricator.services.mozilla.com/D16299
--HG--
extra : moz-landing-system : lando
In the MinGW browser build job, we're going to use -fms-extensions,
which will tell clang to start processing these comments. Clang
cannot process them correctly (it's an upstream bug) but it doesn't
need to, because we include the libs we need in moz.build files.
So we exclude them for MinGW builds. mingw-clang gets them wrong and
mingw-gcc (which doesn't even work anymore on -central) ignored them.
In the future, with a llvm fix, we could clean up the moz.build
files and re-enable these comments.
Differential Revision: https://phabricator.services.mozilla.com/D3527
--HG--
extra : moz-landing-system : lando
It hasn't been used for a long while, and the screenshot tool is only
used for tests. So keeping the code essentially always disabled doesn't
have much value.
--HG--
extra : rebase_source : 6bf696d6543cbdd3ef66e19d4dc110134b761b63
Mach itself now depends on 'six', so it needs to be packaged in the test archive.
MozReview-Commit-ID: 8lWc0cxwrss
--HG--
extra : rebase_source : fc25b5dec23d0864905ebb116114b5ef37f0595b
memory.h conflicts with a system header, so we have workarounds to
change include paths to work around this.
This is mostly a cherry-pick of this upstream commit:
8bb3d55af7
..but the patch was applied separately to toolkit/crashreporter/google-breakpad
and toolkit/crashreporter/breakpad-client since we've forked the latter,
and there's also one other fixup of a source file included.
MozReview-Commit-ID: HH92HZG7y9n
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/memory.h => toolkit/crashreporter/google-breakpad/src/common/memory_allocator.h
rename : toolkit/crashreporter/google-breakpad/src/common/memory_unittest.cc => toolkit/crashreporter/google-breakpad/src/common/memory_allocator_unittest.cc
extra : rebase_source : d321475099f000482689d6a6fb8629274ee19a65
extra : histedit_source : d526c27d952dbe73aee87e24701e2a862e1ca3d2
The |mach try| implementation isn't really testing specific so figured while doing this refactor
anyway we could take the opportunity to move it to /tools. This renames the "autotry" module to
"syntax" as one of the 'selectors' under the newly created tryselect module.
MozReview-Commit-ID: DmnGU5sKuCk
--HG--
rename : testing/tools/autotry/autotry.py => tools/tryselect/selectors/syntax.py
extra : rebase_source : 52f2a61d97107b8d50e3894ea0f5cd9c24d4108d
Allow running |mach wpt| on one click loaners in order to run
web-platform-tests tests.
This implementation is just like the one for other testsuites using
thee packaged tests rather than the checkout that we get with wpt, at
least on Linux. That's also where the tests run from so it seems
reasonable for now. Moving to the checkout in the future could remove
some of the logic here by using a fake mozbuild environment so that
the testsuite itself doesn't have to implement anything much.
MozReview-Commit-ID: CaewrdjJ2ef
--HG--
extra : rebase_source : 491b8014d48f06ff5bd41b28cc985608981fbdf4
The -j try syntax specifies a "job" task. Job tasks are different from
unittests in that they typically don't require a build and run from the
source tree. Examples include linters (eslint, flake8, etc), python tests
(mozbase, mochitest, etc) and misc things like doc generation.
Sometimes, developers might only want to run a specific "job" task with a
syntax like "./mach try -j mozbase".
This means a few assumptions need to be broken in |mach try|. Platforms
and unittests should no longer be required if -j was specified. Most of
the changes in this patch revolve around dealing with those broken
assumptions.
MozReview-Commit-ID: O0y6V2Wwej
--HG--
extra : rebase_source : d003380317cbb688fcc7113c454a5c0543ade40c
Currently if no unittests, paths or tags are specified it will error out.
MozReview-Commit-ID: O0y6V2Wwej
--HG--
extra : rebase_source : e7a438aa1131e3d473459c46fbe9f23c3c06bae1
This was a bug in the mach test package bootstrap that could happen in one-click loaners. If a user neglected to
pass in --flavor, this meant that instead of a nice error message out of mochitest, they'd get a cryptic
traceback.
With this fix, it will be obvious that the problem is "no tests were found".
MozReview-Commit-ID: 5LEQFVDoJrT
--HG--
extra : rebase_source : 90683afe5e6b6b97c085d5ef44d75b4a7d846c90
Previously the run-wizard script would add a command to source the virtualenv in ~/.bashrc after
mozharness finished setting things up. This is fragile, assumes people are using bash, etc. Plus
it appeared to intermittently fail for some users.
Instead, this activates the virtualenv directly from individual mach commands that need it. This
guarantees we will always be using the virtualenv if required (and won't be using it if not). The
'activate_this.py' script is invoked the same way that we do it for in-tree mach commands:
https://dxr.mozilla.org/mozilla-central/rev/9c06e744b1befb3a2e2fdac7414ce18220774a1d/python/mozbuild/mozbuild/virtualenv.py#456
MozReview-Commit-ID: CfcoiVJXQTl
--HG--
extra : rebase_source : da01d1ce1bd9b41c89922e989f857c4de8c09341
In bug 1320073, the marionette package structure was refactored a bit. This made the SEARCH_PATHS
in the mach test package bootstrap outdated. While this didn't end up causing any errors due to
marionette also appearing in an activated virtualenv, it should still be fixed. Figured since I was
in the area, I would just piggy-back off this commit series rather than filing a new bug.
MozReview-Commit-ID: DCNz3xEVJfY
--HG--
extra : rebase_source : 56f37475770fb4848a6413111e15b37f94164e04
CLOSED TREE
Backed out changeset 1f3f88337227 (bug 1312739)
Backed out changeset ecb1d15e8075 (bug 1312739)
Backed out changeset b2adce340421 (bug 1312739)
In bug 1320073, the marionette package structure was refactored a bit. This made the SEARCH_PATHS
in the mach test package bootstrap outdated. While this didn't end up causing any errors due to
marionette also appearing in an activated virtualenv, it should still be fixed. Figured since I was
in the area, I would just piggy-back off this commit series rather than filing a new bug.
MozReview-Commit-ID: DCNz3xEVJfY
--HG--
extra : rebase_source : 5f019d2ca80e008e89c8b9bc93722534f103a58c
This will allow developers to request a loaner for an Android mochitest job and then use
|mach mochitest| to run tests.
MozReview-Commit-ID: 4lsKGpizfH7
--HG--
extra : rebase_source : fba9adb6e2d50cc9ac27532bc91b5eb1d909d874
You can set attributes on a mach context by using the 'key' argument to the context_handler. Basically,
whatever gets returned by the handler when <key> is passed in, will get set (i.e cached) on the context
object for fast retrieval next time. This is a way to lazy load these attributes.
Previously I was setting functions like 'find_firefox()' on the context object, and then having the
mach_commands call that directly. But this way is much cleaner.
Now, the loaded 'mozharness_config' can be stored as an attribute on the context. Also 'find_firefox()'
is now an attribute called 'firefox_bin'.
MozReview-Commit-ID: 4lsKGpizfH7
--HG--
extra : rebase_source : af5e32e05a29b8e91d4cd0005689baa8079ec137
This makes it possible to run |mach marionette-test| from a test package (and therefore
also an interactive loaner).
MozReview-Commit-ID: Lxhe8KMQaWq
--HG--
extra : rebase_source : ee2c01a80d863c2044d8d30b0e5116c8a9704253