Commit Graph

2721 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
2620527719 Merge mozilla-central to mozilla-inbound 2017-03-16 15:39:58 +01:00
Nathan Froyd
4aebc3be96 Bug 1316990 - part 2b - add initial set of approved licenses for Rust packages; r=gerv
This commit adds the initial whitelist of (mostly) SPDX license
identifiers and the initial whitelist of separately-specified license
files for those packages that require it.  For gamma-lut, the license
that the hash identifies is:

https://hg.mozilla.org/mozilla-central/file/47611a305c44/third_party/rust/gamma-lut/LICENSE

For deque, the license that the hash identifies is:

https://hg.mozilla.org/mozilla-central/file/47611a305c44/third_party/rust/deque/LICENSE-MIT

Integrating any new licenses into about:license is left as separate work
for the time being.
2017-03-16 10:00:02 -04:00
Nathan Froyd
b518eaa441 Bug 1316990 - part 2a - check licenses of vendored Cargo packages; r=rillian
This commit adds the core support to `mach vendor rust` to verify that
the licenses of vendored packages are OK for distribution in Firefox.
2017-03-16 10:00:02 -04:00
Nathan Froyd
d0e8561658 Bug 1316990 - part 1 - split out an _ensure_cargo function; r=rillian
We're going to be adding some more code to the vendor function, and
splitting this function out helps make vendor a little more manageable.
2017-03-16 10:00:02 -04:00
David Major
82dee330c1 Bug 1346078: Remove nsAString_internal and just use the nsAString name directly. r=bsmedberg
MozReview-Commit-ID: DWDEDMIVKm7
2017-03-10 15:17:23 +13:00
Paul Yang
c694ea3b95 Bug 1272113: Packaging awsy in build job r=jmaher
MozReview-Commit-ID: 9VhsVIaaWqt
2017-03-11 02:33:19 +08:00
Mike Hommey
a4bd4382c8 Bug 1346381 - Strip executables in the jsshell package. r=mshal
In bug 1335309, FileFinder was made to default to not find executables,
and zip.py was made to use the default instead. Which made sense for
most uses of zip.py, except for the jsshell package.

So we add a flag to make zip.py able to strip executable (which happens
when the FileFinder is made to find them), and use that flag for the
jsshell package only.
2017-03-14 15:22:39 +09:00
suman gupta
9c4413e3ab Bug 1346284 Updated ndk r11c to be installed by mach bootstrap; r=nalexander
MozReview-Commit-ID: KgM9ecZR0fB
2017-03-13 23:47:23 +05:30
Wes Kocher
5f709e25bd Merge inbound to central, a=merge
MozReview-Commit-ID: 62e9XDudUlc
2017-03-08 17:07:55 -08:00
Joel Maher
812cd83fc9 Bug 1344891 - add BUG_COMPONENT to python/* files, r=ted
MozReview-Commit-ID: Kv8icpC7B4x
2017-03-08 11:17:12 -05:00
Chris Manchester
9fda0f591d Bug 1314678 - Use hfs and dmg tools rather than mozinstall to unpack downloaded builds during cross artifact builds. r=mshal
Mozinstall uses hdiutil, which doesn't exist on cross osx-linux builders.

MozReview-Commit-ID: A4KAIFUp4Gj
2017-03-07 10:21:34 -08:00
Andrew Halberstadt
9f06f03c86 Bug 1345109 - Delete 'JS_STANDALONE' from EmptyConfig when generating test metadata, r=mshal
EmptyConfig objects set JS_STANDALONE=1 by default. However, test tasks that need to run without an objdir
need to be behind an "if not CONFIG['JS_STANDALONE']" condition to avoid causing bustage to sm-pkg task (js
packaging). This patch explicitly deletes that default value, only when generating the TestManifestBackend.

Ideally, the js/src packaging should have their own moz.build instead of re-using the root moz.build. But this
is an easier fix in the short term to get the marionette-harness tests working again.

MozReview-Commit-ID: 26lHLY6WlZK
2017-03-07 10:56:22 -05:00
Andrew Halberstadt
87d047232c Bug 1345109 - Ensure |mach python-test| errors out if no tests are found, r=mshal
Because test_objects was a generator, using it in the condition always returned True,
even if no tests were found. But extending test_objects to the manifest, converts it
to a list. So this patch simply moves the 'no tests' check a bit later on.

MozReview-Commit-ID: JpETWD1WQWH
2017-03-07 10:55:07 -05:00
Rob Thijssen
2f05f4e214 bug 1287881 - windows repackage refactored as actions; r=mshal
MozReview-Commit-ID: 2vI6LlMVvLE
2017-02-20 16:11:47 +00:00
Wes Kocher
b7f8ddaa07 Merge m-c to autoland, a=merge
MozReview-Commit-ID: FzykkWPQCrq
2017-03-01 17:48:44 -08:00
Andrew Halberstadt
aac4585624 Bug 1335873 - Convert marionette harness unittests to standard python unittests, r=maja_zf
This formats the marionette-harness python tests to be a regular |mach python-test| suite. Though
we add subsuite=marionette, this is just for automation purposes. The new preferred way to run the
marionette harness tests locally is:
./mach python-test testing/marionette

They will also run if running the full suite.

The mozbase packages.txt file modifies mozlog to use 'setup.py' instead of 'pth'. The reason for
this is that the marionette-harness tests use the pytest_mozlog pytest plugin for formatting
their results (converts pytest format into something resembling the standard tbpl logging format).
In order for this plugin to get picked up however, mozlog's setup.py file needs to be processed.

MozReview-Commit-ID: Ata99evHxbd
2017-02-15 16:38:45 -05:00
Bob Owen
f4857a6163 Bug 1339729: Remove wow_helper from Windows process sandboxing. r=glandium 2017-03-01 10:41:07 +00:00
Mike Hommey
3521edce4a Bug 1341215 - Remove the dependency on the python taskcluster client module for mach artifact. r=chmanchester
This also removes the need for a virtualenv.
2017-02-21 15:32:28 +09:00
Mike Hommey
0221fec13f Bug 1341215 - Remove the dependency on the mozregression module for mach artifact. r=chmanchester
This imports two modules from mozregression in the tree to do so. They
are imported from current trunk on github, rather than the version we
were getting from pypi.

Note we take six from testing/web-platform/tests/tools/six) instead of
moving it to python/six because it's there by coming from a copy of
https://github.com/w3c/wpt-tools, which contains it as a submodule, and
moving it would make updates there harder.
2017-02-21 16:10:54 +09:00
Mike Hommey
982ebcc217 Bug 1341215 - Vendor dlmanager. r=chmanchester
from https://github.com/parkouss/dlmanager

Note this technically should come before the first patch, but mozreview
won't show useful interdiffs if I do that, so I'll reorder the patches
before landing.
2017-02-23 15:30:46 +09:00
Kartikaya Gupta
a3f0f19181 Bug 1336555 - Ensure that cargo-vendor is new enough when running mach vendor rust. r=ted
MozReview-Commit-ID: 3wQ5bA7ZpS5
2017-02-24 13:14:16 -05:00
Carsten "Tomcat" Book
b156024e5f merge mozilla-inbound to mozilla-central a=merge 2017-02-24 11:46:38 +01:00
Kris Maglione
418aec3890 Bug 1341502: Fix automatic regeneration of backend when an included test manifest changes. r=mshal
MozReview-Commit-ID: 1ZQNQpqboz9
2017-02-21 17:31:21 -08:00
Nathan Froyd
1a557cbccb Bug 1302704 - part 6 - enforce identical profiles for gkrust and gkrust-gtest; r=chmanchester
Cargo hashes various compilation settings into the dependency graph for
dependent libraries.  So if the compilation settings for gkrust and
gkrust-gtest are different, their dependencies will likewise be
different.  The setup we've created in the previous patches depends on
the compilation settings being identical, so we should enforce that at
the moz.build level.
2017-02-23 10:35:06 -05:00
Nathan Froyd
a2c19c682a Bug 1302704 - part 3 - propagate information about CARGO_TARGET_DIR from the frontend into the backend; r=chmanchester
Rust libraries can set RUST_LIBRARY_TARGET_DIR so that they can share
compilation artifacts with other libraries.  This setting needs to be
propagated to the backend so it can be communicated to Cargo.
2017-02-23 10:35:07 -05:00
Nathan Froyd
288cc355af Bug 1302704 - part 2 - rename cargo_target_directory; r=chmanchester
We're going to be introducing a value for CARGO_TARGET_DIR in a later
patch, we we should rename this function to not conflict with that
concept.
2017-02-23 10:35:07 -05:00
Nathan Froyd
32c34613b1 Bug 1302704 - part 1 - define CARGO_TARGET_DIR in the backend; r=chmanchester
CARGO_TARGET_DIR is currently hardcoded to the current directory, but
we'd like the ability to choose a value for Rust libraries.
2017-02-23 10:35:07 -05:00
Mike Hommey
316fd0f7d5 Bug 1341207 - Use MachCommandConditions.is_{git,hg} for mach clobber python. r=chmanchester 2017-02-21 16:04:08 +09:00
Mike Hommey
f8e42386c4 Bug 1339240 - Detect git worktrees in MachCommandConditions.is_git. r=chmanchester 2017-02-21 15:53:27 +09:00
Sebastian Hengst
0a6bd77df6 Backed out changeset e4e02bf4f094 (bug 1341502) for failing TestTestManifestBackend.test_test_manifest_sources on Windows. r=backout on a CLOSED TREE 2017-02-23 21:42:37 +01:00
Kris Maglione
173f5d8fdc Bug 1341502: Fix automatic regeneration of backend when an included test manifest changes. r=mshal
MozReview-Commit-ID: 1ZQNQpqboz9
2017-02-21 17:31:21 -08:00
KuoE0
030780d287 Bug 1340379 - Remove hardcoded Homebrew URL of autoconf 2.13 for macOS. r=nalexander
MozReview-Commit-ID: 2QRkVCOFTUL
2017-02-17 11:14:29 +08:00
Wes Kocher
9972b2084a Merge m-c to autoland a=merge
MozReview-Commit-ID: 7m1sarjIoLM
2017-02-17 13:50:13 -08:00
Nathan Froyd
24f24e2833 Bug 1340401 - add back definition of FILESIZE_LIMIT; r=obvious-bustage 2017-02-17 10:18:48 -05:00
Andrew Halberstadt
74619f9fa8 Bug 1340162 - Add task for running mozlint unitttests on Linux (and pull old tests out of make check), r=smacleod
MozReview-Commit-ID: 3XCWMJtQMvZ
2017-02-02 11:08:41 -05:00
Jan Beich
257a1d60fc Bug 1320940 - rustup is N/A on Tier3 platforms, so prefer downstream Rust packages. r=rillian
MozReview-Commit-ID: NsRGdweHuF
2016-11-29 14:27:46 +00:00
Sebastian Hengst
26ea5b9d14 Backed out changeset 3c0a7527608a (bug 1335873) 2017-03-01 17:35:06 +01:00
Andrew Halberstadt
d08b8a2c05 Bug 1335873 - Convert marionette harness unittests to standard python unittests, r=maja_zf
This formats the marionette-harness python tests to be a regular |mach python-test| suite. Though
we add subsuite=marionette, this is just for automation purposes. The new preferred way to run the
marionette harness tests locally is:
./mach python-test testing/marionette

They will also run if running the full suite.

The mozbase packages.txt file modifies mozlog to use 'setup.py' instead of 'pth'. The reason for
this is that the marionette-harness tests use the pytest_mozlog pytest plugin for formatting
their results (converts pytest format into something resembling the standard tbpl logging format).
In order for this plugin to get picked up however, mozlog's setup.py file needs to be processed.

MozReview-Commit-ID: Ata99evHxbd
2017-02-15 16:38:45 -05:00
Ting-Yu Lin
5c8cc6e696 Bug 1341962 - Update ccache stats parser for version 3.3.3. r=glandium
The "unsupported code directive" is added to the 'ccache -s' output in
b6d7cf5502

We need to teach our parser for it.

MozReview-Commit-ID: IrrJv7I7BVa
2017-02-23 11:35:39 +08:00
Iris Hsiao
a6a04a6365 Backed out changeset 2a15e34e2d22 (bug 1341962) for build bustage 2017-03-01 11:54:27 +08:00
Ting-Yu Lin
8598589114 Bug 1341962 - Update ccache stats parser for version 3.3.3. r=glandium
The "unsupported code directive" is added to the 'ccache -s' output in
b6d7cf5502

We need to teach our parser for it.

MozReview-Commit-ID: IrrJv7I7BVa
2017-02-23 11:35:39 +08:00
Mike Shal
ce0cb4746c Bug 1339182 - Remove OSX universal support in the build system; r=glandium
This removes the UNIFY_DIST and UNIFIED_BUILD variables, as well as the
--unify flag from the packager and UnifiedBuildFinder from mozpack. As a
result the STAGEPATH variable is never defined anymore, so its uses can
be removed as well.

test_unify.py is currently the only mozbuild/mozpack test that fails
without running configure first, and there isn't much point in fixing
tests for things that we don't actually use anymore.

MozReview-Commit-ID: F5q1FPW3Did
2017-02-10 16:52:17 -05:00
Mike Shal
2433844258 Bug 1338559 - Use the tier system to recurse for 'make check'; r=glandium
This helps us avoid recursing over every directory when we only need to
run 'make check' in a select few.

MozReview-Commit-ID: BJ3hJBOneIz
2017-02-03 16:47:28 -05:00
Andrew Halberstadt
873ca61ce2 Bug 1003417 - Add ability to run subsuites to |mach python-test|, r=ted
This adds the ability to use manifestparser subsuites to |mach python-test|.
Subsuites are based on the premise of a "default" set that gets run when no
subsuites are explicitly specified. When a test is labelled with a subsuite,
that test is removed from the default set and will only run if that subsuite
is explicitly specified. This will allow us to chunk python unittests out of
'make check' piecemeal. The default set will run in 'make check', and
individual tasks (e.g mozbase), will specify a subsuite explicitly.

The |mach python-test| implementation is slightly different. By default,
subsuites are not considered if developers do not pass in --subsuite. This
means running |mach python-test| without arguments will still run the full set
of tests, and similarly, passing in test paths will *just work*.

If for some reason a developer needs to actually run the default set, a special
"default" subsuite has been create, so they can use
|mach python-test --subsuite default|. This default subsuite is also what 'make
check' will explicitly invoke.

MozReview-Commit-ID: FaHb4nvuoK9
2016-11-17 16:30:33 -05:00
Andrew Halberstadt
af4668e060 Bug 1320194 - Generate all-tests.pkl and related files when resolving tests r=mshal
This replaces the 'run-tests-deps' make target with a python function that will directly
read moz.build files, emit them with TestManifestEmitter, then consume them with
TestManifestBackend. Because the TestResolver is the only place that actually reads the
test metadata files, we can remove this logic from the CommonBackend as well.

MozReview-Commit-ID: DXgMoeH5dKf



MozReview-Commit-ID: HstZ57qkqf2
2017-02-01 09:56:09 -05:00
Andrew Halberstadt
d1ef84c3ff Bug 1320194 - Add ability to specify custom emitter function in TreeMetadataEmitter r=gps
Currently, the only way to emit objects after reading moz.build, is to emit everything. Though, sometimes
it may be desirable to only emit certain types of objects. This adds a new argument that allows consumers
to specify a custom emitter function. This gives them the flexibility to do whatever they want.

This will be used when resolving tests, so only TestManifest objects are emitted.

MozReview-Commit-ID: DPGgNmn2JvE
2017-01-27 11:54:09 -05:00
Andrew Halberstadt
d4d246d256 Bug 1320194 - Fix bug preventing more than two backends in a HybridBackend r=gps
This is a drive by fix that is not relevant to the rest of the commit series.

MozReview-Commit-ID: Bwrb74o3Qh8
2017-01-27 16:31:15 -05:00
Andrew Halberstadt
741670d9c4 Bug 1320194 - Refactor test metadata related backend code into a partial TestManifestBackend r=gps
Currently the CommonBackend is responsible for processing TestManifest objects and using them to generate
the test metadata files (e.g all-tests.pkl et al). This patch pulls that logic out into a partial backend
specifically for test manifests.

This patch is solely a refactoring and shouldn't change any build behaviour. CommonBackend has a
TestManifestBackend instance and calls consume_object directly on it. However, this is just a temporary
measure to avoid checking in a broken commit.

This commit also adds a test for the 'test-defaults.pkl' file which was previously missing.

MozReview-Commit-ID: HOr2QVT8CJ1
2017-01-27 11:47:34 -05:00
Carsten "Tomcat" Book
242fd05a22 merge mozilla-inbound to mozilla-central a=merge 2017-02-15 12:21:44 +01:00
Nathan Froyd
79390906ae Bug 1306078 - part 3 - make mach vendor rust check for overly-large files; r=ted.mielczarek
When vendoring third-party files, we'd like an explicit notice/review
when said files contain a "large file".  This commit adds such checks
for files vendored via `mach vendor rust`.

As we don't yet have a server-side hook in place to prevent large files
from being added, we just have a command-line flag that people are
expected to use, on the honor system, to permit large files to be added
when vendoring.
2017-02-14 16:12:19 -05:00