Commit Graph

3523 Commits

Author SHA1 Message Date
Coroiu Cristina
4854a65d8c Backed out 3 changesets (bug 1368699) for bustage on Android L10n nightlies a=backout
Backed out changeset e16fc8abd345 (bug 1368699)
Backed out changeset 35a5db01b6ae (bug 1368699)
Backed out changeset 7297a1e8c4ff (bug 1368699)
2018-01-31 01:59:23 +02:00
Nick Alexander
e30619cc86 Bug 1368699 - Write .purgecaches sentinels every |mach build|. r=gps
This adds a new `post_build` step to each `BuildBackend`
implementation, and uses it to write .purgecaches after every |mach
build| invocation -- including after |mach build TARGET| invocations.
This approach should be more robust than the existing recursive-Make
based solution, which seems to not write the .purgecaches files in
some situations.

In addition, the recursive-Make solution does not generalize to other
backends, in particular Tup.  It is possible that the Tup backend will
handle writing the .purgecaches sentinel as part of its regular build
process, but discussions with mshal suggest that there's no convenient
way for Tup to write .purgecaches only when something *changes* during
the build.  That is, Tup can achieve the behaviour implemented by this
patch, but it's not easier to do better by not writing .purgecaches
when the caches do not in fact need to be purged.

I elected to bake in the special knowledge of
--enable-application=browser and macOS here since this whole process
is special.  If we need to generalize, we could add a moz.configure
option specifying the purgecaches directories, but it doesn't seem
worth it right now.

The ideal approach would be to determine FINAL_TARGET from the
application directory, but that is determined by DIST_SUBDIR.  In
addition, it's not clear how to present that information to the
post-build step in a build-backend agnostic manner.

This will require tweaking as we migrate the macOS bundle handling to
moz.build, especially in browser/app.  See
https://bugzilla.mozilla.org/show_bug.cgi?id=1223748, which could
improve this significantly.

MozReview-Commit-ID: 63KZy18D23i

--HG--
extra : rebase_source : c5f75192f1b77f08611662f51caa92dcb1ca802f
2018-01-23 19:18:16 -08:00
Nick Alexander
b8d28049fd Bug 1433285: Extract classes*.dex from .ap_ --with-gradle. r=gps,snorp
Right now, we only expect classes.dex, and even --with-gradle we copy
it out of $topobjdir/mobile/android/base.  This commit changes that
for --with-gradle: we only take classes.dex from the given .ap_ file,
and we also handle multiple classesN.dex files (for future multi-dex
support).  The moz.build system stays the same.

This avoids an issue with newer Android-Gradle plugins, where the
classes.dex produced could be either in dex/ or in dexMerger/,
depending on whether any external libraries needed merging.  By
extracting classes.dex from the .ap_ file, we don't need to know what
Gradle build steps actually occur.

The classes.dex in the package-manifest.in has been irrelevant since
Bug 1260241.

MozReview-Commit-ID: FozKwjTcMzU

--HG--
extra : rebase_source : 62b18c7ffe596be73cec4c9565333eac222b018e
2018-01-24 22:09:48 -08:00
Nick Alexander
00bbcb11bb Bug 1429815 - Fix InstallManifest::add_entries_from with non-trivial base. r=gps
There's a bug in InstallManifest::add_entries_from: some of the
manifest entries bake their destination into both the manifest key and
the manifest value, and add_entries_from with a non-empty "base"
parameter to prepend to the destination only updates the manifest key
and not the value.

This bug causes |mach watch| to fail to _read_ the unified manifest
that aggregates all of the build manifests relevant to |mach watch|
that |mach build-backend -b FasterMake| successfully _wrote_, because
the manifest keys are validated against the manifest values written to
disk.

I see no way to address this other than to manually reach into the
manifest values and patch the internal destination parameter, which
this patch does.

MozReview-Commit-ID: FVyRB41NnHa

--HG--
extra : rebase_source : 23eb18ddc0452955539ce2e7a6d7bbfd083c940c
2018-01-18 16:58:07 -08:00
Andrew Halberstadt
3684054b5d Bug 1433974 - Update BUG_COMPONENT for some of the new Testing components, r=jmaher
MozReview-Commit-ID: 7jQnnAhOzEr

--HG--
extra : rebase_source : af1c9dca779c6089b5cc062eea81ef9945133d48
2018-01-29 12:57:54 -05:00
Andrew Halberstadt
a8b5fc493f Bug 1433912 - [lint] Only run codespell linter on python/mozlint and tools/lint for now, r=sylvestre
This is a bustage fix that needs to get out quickly. Once landed we can take
the time to enable it on more directories, or preferably change it to a
blacklist.

MozReview-Commit-ID: Gbf7q2L0tg3

--HG--
extra : rebase_source : a58ae64c655b24e686710a663d4538b4cfe020f7
2018-01-29 10:25:54 -05:00
Sylvestre Ledru
61536137bd Bug 1432892 - Comment the npm package dependency until Debian brings it back r=standard8
MozReview-Commit-ID: BeWtC943jw7

--HG--
extra : rebase_source : 5bb8b3315674b5c63e22c8ebbb486bc04b6267ed
2018-01-26 13:53:19 +01:00
Jan Beich
9f9d8720a3 Bug 1433395 - FreeBSD bootstrap: install LLVM as Mesa dependency. r=froydnj
Firefox generally supports the same range of LLVM versions as Mesa.
Instead of regularly updating it just pull Mesa drivers which will
be required by WebRender, anyway.

MozReview-Commit-ID: DiK4TD9tWe0

--HG--
extra : rebase_source : 5dd9c8c46ae79deee8f2fd887b27fddbc30fc22d
2018-01-25 10:27:51 +00:00
Chris Manchester
94906d6110 Bug 1432643 - Store gn gen output in the objdir per project. r=nalexander
MozReview-Commit-ID: 5yPGlwqfhho

--HG--
extra : rebase_source : 16b82d0d17347ec891089eefb5b9bfa07634a53b
2018-01-23 14:55:11 -08:00
Botond Ballo
de0cdedea7 Bug 1432919 - Configure generated eclipse projects to remove trailing whitespace in edited lines. r=jwatt
MozReview-Commit-ID: 6naw8sbWqKT

--HG--
extra : rebase_source : 435e24fd33e51fcf84ac8ad64a63c59a7827907b
2018-01-24 19:03:33 -05:00
Andrew Halberstadt
529aad2e2c Bug 1430825 - [mozlint] Split work up by paths instead of by linters, r=standard8
The initial motivation for this patch, was to prevent command lines that are
too long on Windows. To that end, there is a cap to the number of paths that
can be run per job. For now that cap is set to 50. This will allow for an
average path length of 160 characters, which should be sufficient with room to
spare.

But another big benefit of this patch is that we are running more things in
parallel. Previously, mozlint ran each linter in its own subprocess, but that's
it. If running eslint is 90% of the work, it'll still only get a single
process. This means we are wasting cores as soon as the other linters are
finished.

This patch chunks the number of specified paths such that there will be N*L
jobs where 'N' is the number of cores and 'L' is the number of linters.  This
means even when there's a dominant linter, we'll be making better use of our
resources. This isn't perfect of course, as some paths might contain a small
number of files, and some will contain a very large number of files.  But it's
a start

A limitation to this approach is that if there are fewer paths specified than
there are cores, we won't schedule enough jobs per linter to use those extra
cores. One idea might be to expand specified directories and individually list
all the paths under the directory. But this has some hairy edge cases that
would be tough to catch. Doing this in a non-hacky way would also require a
medium scale refactor.

So I propose further parallelization efforts be destined for follow-ups.

MozReview-Commit-ID: JRRu13AFaii

--HG--
extra : rebase_source : 242fb71fe0af8bd2a981bd10a7216bb897fe00ac
2018-01-16 16:01:20 -05:00
Jan Beich
d3df765835 Bug 1433036 - OpenBSD bootstrap: node-devel package doesn't exist. r=froydnj,gaston
lang/node aka node package is what actually installs node and npm executables.
https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/node/pkg/PLIST?rev=HEAD

MozReview-Commit-ID: H9lZGcHmEuR

--HG--
extra : rebase_source : 31a6259c3c6890f77f3f65054c21a13af2d3aff2
2018-01-25 07:05:22 +00:00
Jan Beich
0a1567442d Bug 1433036 - FreeBSD bootstrap: add npm for linting after bug 1433036. r=froydnj
Downstream npm package already depends node package, no need to
specify it explicitly. Also, node package refers to the latest NodeJS
but npm package can be built against an older version.

MozReview-Commit-ID: KeuSFEKeStw

--HG--
extra : rebase_source : ac3ab14519f4edd8bcb5b77cad64eeaed16d2751
2018-01-25 07:02:44 +00:00
Ralph Giles
0f7ccae18e Bug 1430934 - mozboot: Update to rust 1.23.0. r=nalexander
Have `./mach boostrap` update users to at least rust 1.23.0,
which is the current stable release.

MozReview-Commit-ID: 7ukx7shu07e

--HG--
extra : rebase_source : 82ea7fd65901f0e9e00e961d157cf113d82b1d4e
2018-01-16 15:07:14 -08:00
Kartikaya Gupta
d4c9e4740d Bug 1432223 - Add an --all-crates option to mach cargo check, to check all the crates. r=froydnj
MozReview-Commit-ID: 2nst2ctsI6s

--HG--
extra : rebase_source : 92212248ae645098b0bd75254d9ba5075c076a90
2018-01-22 12:46:29 -05:00
Gabriele Svelto
2981b63774 Bug 1432954 - Make |mach bootstrap| use the latest version of Oracle's JDK when bootstrapping Fennec on Gentoo; r=nalexander
MozReview-Commit-ID: 40xYQqpMy9O

--HG--
extra : rebase_source : 84b3f8832b5f393a25357354d94ec94c9d7e53ed
2018-01-24 22:56:36 +01:00
Cosmin Sabou
7e6e71746a Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-01-25 00:04:12 +02:00
Chris Manchester
83f62e19ad Bug 1431229 - Populate IPDLCollection from the emitter rather than the common backend. r=mshal
MozReview-Commit-ID: LSRypNDr7G8

--HG--
extra : rebase_source : 64c805abd9899ea5edb2681b7c497ed5ae3d5539
2018-01-24 13:55:06 -08:00
Chris Manchester
8eb10b3d45 Bug 1431229 - Populate WebIDLCollection from the emitter rather than the common backend. r=mshal
MozReview-Commit-ID: JVaoPF53rhY

--HG--
extra : rebase_source : 91fb470d5e1cc616a19a839542f499aa58dbfd4d
2018-01-24 13:55:06 -08:00
Chris Manchester
dc3756ba9d Bug 1431879 - Use sorted iterators when generating moz.build files from gn to make the output deterministic. r=froydnj
MozReview-Commit-ID: BrijC37ErCP

--HG--
extra : rebase_source : a96a4aaadc6f6ee75a0de534cad8a9e87a9f4dbb
2018-01-23 19:33:08 -08:00
Marco Castelluccio
47b9708b4a Bug 1431349 - Add additional tests for UrlFinder and chrome_map preprocessor info generation. r=chmanchester
--HG--
extra : rebase_source : 838a6b114e433f9179a1e3294ab53d730b672073
2018-01-23 16:00:58 +01:00
Marco Castelluccio
99049e0dcd Bug 1431349 - Fix lcov rewriter tests with the new LcovFileRewriter and UrlFinder constructors. r=chmanchester
--HG--
extra : rebase_source : 27ef8000d97152c6b27f35b9ec1a065dc0c27088
2018-01-19 11:02:05 +01:00
Marco Castelluccio
8ee287cc7c Bug 1431349 - Store some information about build configuration in chrome-map.json, so that the lcov rewriter doesn't need to import buildconfig. r=chmanchester
--HG--
extra : rebase_source : b84ea5953a64b367cb31c253a30842e698118e81
2018-01-18 12:52:48 +01:00
Marco Castelluccio
6ae73dfbcf Bug 1431723 - Actually use URL overrides in the LCOV rewriter. r=chmanchester
--HG--
extra : rebase_source : cb31f4f193a7fcda9db6c6be7376c01554013c87
2018-01-19 12:46:43 +01:00
Marco Castelluccio
a69b08ec8f Bug 1402539 - Ignore query parameters when rewriting URLs. r=chmanchester
--HG--
extra : rebase_source : 3f1c8c38955b370d36410da1254fc80a19ef932f
2018-01-23 16:00:47 +01:00
Marco Castelluccio
8073360e69 Bug 1402539 - Update test_lcov_rewrite to use new generate_pp_info function. r=chmanchester
--HG--
extra : rebase_source : 870e007546e5a958d964f8c4054db77e54408c8c
2018-01-19 10:51:21 +01:00
Marco Castelluccio
7930ff0189 Bug 1402539 - Parse install manifest when generating the chrome-map file. r=chmanchester
--HG--
extra : rebase_source : 0f519d15470c88f792a93366e5481e76ff4d96f0
2018-01-18 13:36:28 +01:00
Marco Castelluccio
6b44872a27 Bug 1402539 - Don't check for the existence of the files, check if they are in the install info. r=chmanchester
--HG--
extra : rebase_source : 03d823fee0a286b8c17f380f9b15584d920f74c4
2018-01-18 11:51:48 +01:00
Marco Castelluccio
16f4891262 Bug 1402539 - Store relative paths in the chrome-map.json file. r=chmanchester
--HG--
extra : rebase_source : 5b8237855bcbfcd0a46cbb792123b1343f074052
2018-01-18 11:17:31 +01:00
Marco Castelluccio
a12e141983 Bug 1402539 - Generate preprocessor information for lcov rewriting at build time. r=chmanchester
--HG--
extra : rebase_source : bad1d80838a930bd66aa88394065f9ea955ab237
2018-01-18 11:12:28 +01:00
Nika Layzell
a8351a819f Bug 1293362 - Part 5: Allow implementing xpcom interfaces from rust code with a custom derive, r=froydnj
MozReview-Commit-ID: 90Yv3H40jZW
2018-01-23 17:27:28 -05:00
Nika Layzell
c33284aec0 Bug 1293362 - Part 4: Generate runtime bindings for calling xpcom methods from rust, r=froydnj
MozReview-Commit-ID: K37KyHkKsSl
2018-01-23 17:27:26 -05:00
Kartikaya Gupta
a2063aef65 Bug 1432222 - Actually default cargo check to gkrust when invoked without any crate arguments. r=froydnj
MozReview-Commit-ID: JIgippNiBP

--HG--
extra : rebase_source : 256682c3664ac14ddb7a7cf5cf0089e8612ac022
2018-01-22 12:40:28 -05:00
Mike Hommey
a9e5e80cfd Bug 1431193 - Use taskgraph.parameters.load_parameters_file in mach artifact toolchain. r=dustin
Back when the mach artifact toolchain code was written, there was no
official way to get a default set of parameters for taskgraph
generation. As of bug 1401199, that is not true anymore, so we can now
use that instead of manually set parameters and hope that doesn't break,
which happened with bug 1430823. This change should make things more
future proof.

This also reverts the changes from changeset 3a8491857651, which fixed
the same issue in a slightly different way.

--HG--
extra : rebase_source : 188446bf254551b9e7b98d51735e3026b835e76d
2018-01-18 16:24:19 +09:00
Dorel Luca
a066bff27d Merge mozilla-inbound to mozilla-central r=merge a=merge 2018-01-18 11:43:47 +02:00
Mike Hommey
dbd4c4810a Bug 1428608 - Forbid / or !/ in LOCAL_INCLUDES. r=froydnj
And remove the two cases that currently set that, without actually using
it. The webrtc gtest one never relied on it, and the gfx one was added
in bug 1427668 for a single header, and the corresponding #includes were
changed in bug 1428678.

--HG--
extra : rebase_source : ebb3aed6ff8e3438d4a2f011725cf1a15986fee6
2018-01-17 17:10:20 +09:00
Gregory Szorc
e9cbe9727b Bug 1431226 - Reference proper function and allow loading hgrc; r=nalexander
This fixes a regression in 195e88aab631 (bug 1429094).

When I reviewed that changeset, I didn't realize there were callers
of the renamed function outside the file.

The other caller (changed in this commit) needs to interact with the
repository. This may require loading extensions. So we can no longer
unconditionally disable the loading of hgrc. We add an argument to
control the loading of hgrc to support this.

MozReview-Commit-ID: 8AkPhvtC1VH

--HG--
extra : rebase_source : b2bf3dcc52ac6bdeb86ea56923b9eaea0771739e
2018-01-17 14:29:13 -08:00
Tiberius Oros
0f3b1d6ace Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-01-18 00:28:57 +02:00
Tiberius Oros
92e228aa49 Merge inbound to mozilla-central. a=merge 2018-01-17 23:48:10 +02:00
Tiberius Oros
25b2d642db Merge autoland to mozilla-central. a=merge 2018-01-17 23:46:17 +02:00
Ryan VanderMeulen
ac18fd5152 Backed out 20 changesets (bug 1411654) for incorrect android:debuggable. r=nalexander, a=RyanVM
Backed out changeset cfad693be918 (bug 1411654)
Backed out changeset 55776829a744 (bug 1411654)
Backed out changeset c5bf85d56fed (bug 1411654)
Backed out changeset c270f97bb0da (bug 1411654)
Backed out changeset fde9bf9c14c3 (bug 1411654)
Backed out changeset 01836fd98c63 (bug 1411654)
Backed out changeset 730a70767743 (bug 1411654)
Backed out changeset 690e265c684c (bug 1411654)
Backed out changeset f918500d9cf5 (bug 1411654)
Backed out changeset cec2b8828cc8 (bug 1411654)
Backed out changeset 76085ddd5ac7 (bug 1411654)
Backed out changeset 2b37201606f5 (bug 1411654)
Backed out changeset d0d513d1c379 (bug 1411654)
Backed out changeset e7b0cc801cf1 (bug 1411654)
Backed out changeset 901b304603d9 (bug 1411654)
Backed out changeset 373c9a71d945 (bug 1411654)
Backed out changeset 3dc3beab95f8 (bug 1411654)
Backed out changeset 22a861db1573 (bug 1411654)
Backed out changeset 0850b319efd4 (bug 1411654)
Backed out changeset d276d3deba05 (bug 1411654)

--HG--
rename : mobile/android/app/src/main/res/values-v17/themes.xml => mobile/android/base/resources/values-v17/themes.xml
2018-01-17 15:55:38 -05:00
Dustin J. Mitchell
74237a9cc3 Bug 1403519: reset SCHEDULES.exclusive if set multiple times; r=gps
MozReview-Commit-ID: Kycd9i5f19P

--HG--
extra : rebase_source : 9d9557f82982f0ef2605645db28adf68289e1cfa
2018-01-16 22:33:08 +00:00
Michael Froman
77619aeb6e Bug 1415922 - "Stylo packages not installed during mach bootstrap if .hgrc file has alias for log set to log -G" [r=gps] 2018-01-11 07:27:00 +02:00
Noemi Erli
1c9bbfbebc Backed out 2 changesets (bug 1403519) for bustage on \python\mozbuild\mozbuild\test\frontend\test_reader.py on a CLOSED TREE
Backed out changeset f53f8adcd578 (bug 1403519)
Backed out changeset 5b293bcd3fc7 (bug 1403519)
2018-01-17 07:23:40 +02:00
Dustin J. Mitchell
9888ac630f Bug 1403519: reset SCHEDULES.exclusive if set multiple times; r=gps
MozReview-Commit-ID: Kycd9i5f19P

--HG--
extra : rebase_source : d20a7b921c138a7ecae9e31c57a509c201eda8cf
2018-01-16 22:33:08 +00:00
Tiberius Oros
aed73bde87 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-01-18 00:31:28 +02:00
Tom Prince
8340a3f686 Bug 1430823: Pass in Parameters to load_kinds in mach artifact toolchain; r=dustin
Differential Revision: https://phabricator.services.mozilla.com/D409

--HG--
extra : rebase_source : 2baae8b64155e52172a6bbe1e4b7a31eb4dc4049
2018-01-17 12:02:42 -07:00
Dustin J. Mitchell
26d48b3202 Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Dustin J. Mitchell
00f03c413e Bug 1403519 - only build docs when necessary r=gps
This marks **/docs/** as exclusively docs, and code that is autodoc'd as
inclusively docs.

That means that a change that purely modifies documentation files will *only*
run `docs` tasks, while a change that modifies autodoc'd source code will
*additionaly* run `docs` tasks.  The tasks do not run by default.

MozReview-Commit-ID: G9tOK0AwtrI

--HG--
extra : rebase_source : 8dd971e5c9b0eb5f47895664a4ea49442f303ecb
extra : source : 0881de9b2b5e36ec37cc866f1d4af109da57a919
2017-10-02 18:22:56 +00:00
Ralph Giles
986d51d49a Bug 1430933 - mozboot: Start with rustup 1.9.0. r=gps
When bootstraping the development environment on a machine without
rustup installed, download and install rustup version 1.9.0,
released 2018 January 4, instead of the older 1.5.0.

This saves a self-upgrade step in the short term and reduces the
chance of lost support failures in the long term.

MozReview-Commit-ID: H8ouRszLMsP

--HG--
extra : rebase_source : 0eacfff2fa3e21e64dbbc998aee91600f5bb5d68
2018-01-16 15:11:51 -08:00