Commit Graph

3067 Commits

Author SHA1 Message Date
Gregory Szorc
80d6e033a7 Bug 1385381 - Detect and expose Python 3 to the build system; r=chmanchester
Various people want to start experimenting with Python 3 in the build
system and in related tools (like mach).

We want to make it easy to find and use an appropriate Python 3
binary.

This commit introduces a generic function for finding a Python 3
binary and resolving its version.

We use the new code in configure to set PYTHON3 and PYTHON3_VERSION
subst entries for later consultation.

We also expose a cached attribute on the base class used by many
mach and build system types to return a Python 3 executable's info.

By default, we only find Python 3.5+. From my experience, Python 3.5
was the first Python 3 where it was reasonable to write code that
supports both Python 2 and 3 (mainly due to the restoration of the
% operator on bytes types). We could probably support Python 3.4
in the build system. But for now I'd like to see if we can get
away with 3.5+.

MozReview-Commit-ID: BlwCJ3kkjY9

--HG--
extra : rebase_source : b00464972183ef1a97a0b5d888520be425717ae7
2017-07-27 21:19:25 -07:00
Chris Manchester
1ed11b889e Bug 1390239 - Accommodate any ordering of "last" revset in artifact builds. r=gps
A recent mercurial update changed the order of revisions returned by the
"last" revset. The expected revisions are still output, so the artifact
code is updated in this change to impose its own order based on the local
revision order to accommodate any output order.

MozReview-Commit-ID: 7Zka0kQtxJO

--HG--
extra : rebase_source : 415077a806053c0452e4f9dec997a0e40934e51d
2017-08-14 13:02:41 -07:00
Zibi Braniecki
aa1cdf93c2 Bug 1365440 - Generate langpacks as webextensions. r=mshal
Introduce a new make command to produce new type of language packs based
on web extensions.

MozReview-Commit-ID: EltYtzT7ZRR

--HG--
extra : rebase_source : 6477be07c747e90992f18d8c7bff93fd48965200
2017-05-30 11:33:59 +02:00
Andrew Halberstadt
411adfbc83 Bug 1387555 - [mozlint] Make use of quickfix when using --edit with vim/nvim, r=dylan
MozReview-Commit-ID: BlJbWVv1CeO

--HG--
extra : rebase_source : 005f72d9f74ccd86ae73a298acde6b0b3fd6a550
2017-08-09 10:03:02 -04:00
Andrew Halberstadt
81abb80919 Bug 1387555 - [mozlint] After using --edit, run lint check again, r=dylan
MozReview-Commit-ID: BlJbWVv1CeO

--HG--
extra : rebase_source : 18720a32c8ea562af1602ce4c32e46173c0ca4fb
2017-08-09 10:02:23 -04:00
Matt Brubeck
503070ad8d Bug 1386371 - Disable LTO by default, but enable in automation. r=froydnj
MozReview-Commit-ID: 2DIY9ex3Mch

--HG--
extra : rebase_source : 61f2f073adabfa7c46c324470a308adab23e7781
2017-08-10 11:38:10 -07:00
Andrew Halberstadt
10f8b7e161 Bug 1379151 - Add --fix and --edit to mozlint, r=standard8
While --fix previously worked with eslint, it is now more official (will show
up in the |mach lint --help|).  ESlint is still the only thing that implements
it, but we can implement it for flake8 using the `autopep8` module.

--edit is a new concept that will open an editor for each failing file to let
you fix the errors manually.  For now it is very naive (just opens the file),
and is only really useful if you have an editor integration for the linter(s).
But in the future I'd like to have editor-specific implementations for this.
For example, with vim, we can use -q to pass in an error file that will start
the editor pre-populated with a list of all errors that can then be easily
jumped to. Other editors may just open up to the line containing the error.

--fix and --edit can be used in conjunction with one another. Doing that means
only errors that can't be fixed automatically will show up in your editor.


MozReview-Commit-ID: 5JJJhMIrMIB

--HG--
extra : rebase_source : 2f78a77a91133d7fcc5620ecd5caa500decbce1b
2017-08-10 09:21:17 -04:00
Sebastian Hengst
aedd2b0e08 Backed out changeset d24be9fbef98 (bug 1379151) for breaking Windows builds. r=backout on a CLOSED TREE 2017-08-10 16:55:11 +02:00
Andrew Halberstadt
eb06963c9e Bug 1379151 - Add --fix and --edit to mozlint, r=standard8
While --fix previously worked with eslint, it is now more official (will show
up in the |mach lint --help|).  ESlint is still the only thing that implements
it, but we can implement it for flake8 using the `autopep8` module.

--edit is a new concept that will open an editor for each failing file to let
you fix the errors manually.  For now it is very naive (just opens the file),
and is only really useful if you have an editor integration for the linter(s).
But in the future I'd like to have editor-specific implementations for this.
For example, with vim, we can use -q to pass in an error file that will start
the editor pre-populated with a list of all errors that can then be easily
jumped to. Other editors may just open up to the line containing the error.

--fix and --edit can be used in conjunction with one another. Doing that means
only errors that can't be fixed automatically will show up in your editor.


MozReview-Commit-ID: 5JJJhMIrMIB

--HG--
extra : rebase_source : 889c825dcde5e950e35bc64539b299988f82ac68
2017-08-10 09:21:17 -04:00
Justin Wood
f66ff278ca Bug 1387862 - Lint python/mozlint yaml files. r=ahal
We should have CI Lint YAML files in the tree.

MozReview-Commit-ID: IMOKGhxKFJW

--HG--
extra : rebase_source : 8c695dcb3a81b6683bc76ba663feeacb3126691e
2017-08-06 13:43:04 -04:00
Sebastian Hengst
ca07202265 Backed out changeset 103073e92350 (bug 1387862) 2017-08-10 14:29:48 +02:00
Justin Wood
582030b224 Bug 1387862 - Lint python/mozlint yaml files. r=ahal
We should have CI Lint YAML files in the tree.

MozReview-Commit-ID: IMOKGhxKFJW

--HG--
extra : rebase_source : a2e47f5c5517e999fe21bac4f86491611bd0cece
2017-08-06 13:43:04 -04:00
Ryan VanderMeulen
24396489e3 Backed out 7 changesets (bug 1387862) for yaml linting failures.
Backed out changeset 63f87f6db7d6 (bug 1387862)
Backed out changeset a85b7e7d9f24 (bug 1387862)
Backed out changeset 3713ea9672e8 (bug 1387862)
Backed out changeset 22c1094e387f (bug 1387862)
Backed out changeset e0bfb35b0eec (bug 1387862)
Backed out changeset 5bb5dc7655ec (bug 1387862)
Backed out changeset cc4c01794114 (bug 1387862)
2017-08-09 21:31:30 -04:00
Justin Wood
906fda8397 Bug 1387862 - Lint python/mozlint yaml files. r=ahal
We should have CI Lint YAML files in the tree.

MozReview-Commit-ID: IMOKGhxKFJW

--HG--
extra : rebase_source : 0ef71f24141a531833d48f2a305183dd808f00f5
2017-08-06 13:43:04 -04:00
Zibi Braniecki
0c7d3529d7 Bug 1333980 - Introduce L10nRegistry.jsm. r=mossop
This patch introduces a new registry for localization resources to replace
ChromeRegistry. It uses asynchronous I/O and iterators to generate
permutations of possible sources of language resources for use in the new
Localization API.

In the initial form the API handles packages resources and has API for
interacting with the AddonsManager which will report language packs.

MozReview-Commit-ID: LfERDYMROh

--HG--
extra : rebase_source : 68a664c2c59a82b4dfcae66542c315a00ddae565
2017-06-02 10:36:08 +02:00
Jonas Finnemann Jensen
25d89ec12e Bug 1387307 - Add FailedCommandError to mach r=gps
MozReview-Commit-ID: 8brtYHruEi4
***
Fix ups mach error

MozReview-Commit-ID: 5mqQNqZqLzc

--HG--
extra : rebase_source : 4fb587e8eb9441f2857c8960c8f6b9ce841c6e55
2017-08-08 12:10:10 -07:00
Wes Kocher
223f322400 Merge m-c to autoland a=merge
MozReview-Commit-ID: 2qLtb79Nlhs
2017-08-08 15:26:30 -07:00
Wes Kocher
a27358fe6a Backed out changeset 3cb5dfb73fa3 (bug 1333980) for browser_all_files_referenced.js failures a=backout
MozReview-Commit-ID: 8dZ1lcv6p9V
2017-08-08 13:52:23 -07:00
Dyex
db4f4de93a Bug 1369710 - [mozlint] Ensure that a valid path is entered. r=ahal
MozReview-Commit-ID: 6HOE9hmOkCx

--HG--
extra : rebase_source : 584a4391b832e794dc084254e9203b3a65c89419
2017-08-08 19:20:31 +05:30
Carsten "Tomcat" Book
0f16d437cc merge mozilla-inbound to mozilla-central a=merge 2017-08-08 13:18:14 +02:00
Zibi Braniecki
c41553945d Bug 1333980 - Introduce L10nRegistry.jsm. r=mossop
This patch introduces a new registry for localization resources to replace
ChromeRegistry. It uses asynchronous I/O and iterators to generate
permutations of possible sources of language resources for use in the new
Localization API.

In the initial form the API handles packages resources and has API for
interacting with the AddonsManager which will report language packs.

MozReview-Commit-ID: LfERDYMROh

--HG--
extra : rebase_source : a6e5b790142e5afb1ce750478190e5ad87012f8d
2017-06-02 10:36:08 +02:00
Justin Wood
4a6556fa3c Bug 1387830 - Make ./mach lint able to output available linters. r=ahal
MozReview-Commit-ID: 2hRtfzohwTR

--HG--
extra : rebase_source : 18275b1015f19b98461ebb849555a02fed335462
2017-08-06 09:41:05 -04:00
Kartikaya Gupta
8b8a999a38 Bug 1388423 - Get full rust backtraces everywhere. r=jmaher
MozReview-Commit-ID: 2Mfrpupz7As

--HG--
extra : rebase_source : 9b612430360fe46162f433f13667664188ceac55
2017-08-08 12:34:55 -04:00
Wes Kocher
0854f5772d Backed out changeset 393b0727cba4 (bug 1387830) for flake8 failures a=backout
MozReview-Commit-ID: IOTenjMeVmt
2017-08-08 09:19:39 -07:00
Justin Wood
5381aa19f5 Bug 1387830 - Make ./mach lint able to output available linters. r=ahal
MozReview-Commit-ID: 2hRtfzohwTR

--HG--
extra : rebase_source : 7658b23e5456377bca9d20b5be93b40ca3c65ecc
2017-08-06 09:41:05 -04:00
Andrew Halberstadt
efd355d4d2 Bug 1306122 - [mozlint] Create a compact formatter that mimics the eslint 'compact' format, r=armenzg
MozReview-Commit-ID: 5JJJhMIrMIB

--HG--
extra : rebase_source : 2c8388e20005f7cc67c31fd631e96def452e5416
2017-08-04 10:53:43 -04:00
Bill Gianopoulos
0c72dc997b Bug 1278341 - Move choices closer to prompt in mach bootstrap. r=nalexander 2017-08-06 08:15:50 -04:00
Carsten "Tomcat" Book
546b19363f Backed out changeset 514cf1f55c6f (bug 1380639) 2017-08-07 13:23:35 +02:00
Masatoshi Kimura
8b713b2b0f Bug 1375125 - Stop using nsILocalFile in the tree. r=froydnj
This mechanically replaces nsILocalFile with nsIFile in
*.js, *.jsm, *.sjs, *.html, *.xul, *.xml, and *.py.

MozReview-Commit-ID: 4ecl3RZhOwC

--HG--
extra : rebase_source : 412880ea27766118c38498d021331a3df6bccc70
2017-08-04 17:49:22 +09:00
Jared Wein
b3ac3a75e8 Bug 1388100 - Log filenames of else mismatches in the preprocessor. r=gps
MozReview-Commit-ID: H7yiwtwv0qI

--HG--
extra : rebase_source : c4d5bbdea4a5fa2ddbdfda29b131ed05618ec379
2017-08-07 13:00:21 -04:00
Sebastian Kaspari
b05b8a9729 Bug 1380639 - Add contraint-layout and constraint-layer-solver dependencies. r=mcomella
MozReview-Commit-ID: AbZLlwdDHRV

--HG--
extra : rebase_source : d4538afeca26349512f8453db4782be2bce28ee0
2017-07-25 10:12:38 +02:00
Wes Kocher
db7d003ae0 Merge m-c to autoland a=merge CLOSED TREE
MozReview-Commit-ID: Ko3lhAvzMJN
2017-08-03 18:22:09 -07:00
Marco Castelluccio
c4a3a89783 Bug 1386997 - Log both URL and source file when we can't find a mapped file. r=chmanchester
--HG--
extra : rebase_source : 7bad85c2aaebea9916ca0670bea53d6fb864bff8
2017-08-03 11:44:14 +02:00
Wes Kocher
851b59bdbe Merge m-c to inbound a=merge
MozReview-Commit-ID: 1p4eNdfSz9p
2017-08-02 17:46:32 -07:00
Marco Castelluccio
d5ac42f969 Bug 1381972 - Only fully parse records belonging to preprocessed files, as we only need to rewrite those. r=chmanchester
--HG--
extra : rebase_source : d9f03e90c8aa6a44f282c04a192447b6a3f76a28
2017-08-03 00:02:14 +02:00
Mike Hommey
5d7fc58c7b Bug 1386149 - Add mach artifact toolchain support for toolchain aliases. r=gps
--HG--
extra : rebase_source : 0f0f2a2fc15f01a7a08b79225c614dd7586037b9
2017-08-01 14:58:14 +09:00
Robert Strong
8644543020 Bug 1385780 - Update mar file generation scripts for lzma. r=bhearsum, r=rail, a=app_update_lzma
Update scripts to support both lzma and bzip2
Update unused python script to support lzma. This also adds python 3.0 support to the script while still supporting pythin 2.7
Update test scripts to support lzma
2017-07-31 10:34:22 -07:00
Gregory Szorc
5dd371e131 Bug 1376306 - Update tests to reflect new Java version requirement; r=me
f497b6194e9f bumped the minimum Java version requirement in configure
from 1.7 to 1.8. It forgot to update tests that were pinning the
Java version at 1.7. The tests then failed.

We bump the versions in tests to restore order.

CLOSED TREE

MozReview-Commit-ID: 1zm5L1QQy7a

--HG--
extra : rebase_source : 8868224b5a1a8ffbb633b638df9485760f84fd8a
extra : amend_source : 3faa435ab5478c62aefb3dc18de19256ce0d906e
2017-07-28 17:40:00 -07:00
Nick Alexander
82017ffc19 Bug 1384241 - Add |mach watch|: pywatchman based incremental |mach build faster| shell. r=gps
There's a natural follow-on that I haven't time to explore right now:
I want the faster make backend to also write a "unified chrome
manifest" that maps outputs
(browser/chrome/browser/content/browser/ext-utils.js) to chrome:// or
resource:// URLs (chrome://content/browser/ext-utils.js or similar).

MozReview-Commit-ID: LDQmm8KD57I

--HG--
extra : rebase_source : 13dbeac2fbfa78741be3718fd5305a8ae0d698a8
extra : source : 2af5df7741147769a51da78770c308b370a0cded
2017-07-26 20:34:09 -07:00
Nick Alexander
e2b0d989a6 Bug 1384241 - Pre: Extract acdefines() helper function. r=gps
MozReview-Commit-ID: 6TstvuluvH3

--HG--
extra : rebase_source : de26dd98836ec49d0abc93052e84b6a90b3e248f
2017-07-26 19:31:18 -07:00
Brian Grinstead
b151605206 Bug 1172574 - Prevent the default browser check and the about:config warning by default for the scratch_user;r=mossop
MozReview-Commit-ID: KNQyCrZo41O

--HG--
extra : rebase_source : e38e9807c83b285f123e37db7e7e0e7edd8669e8
2017-07-28 15:38:30 -07:00
Brian Grinstead
d22141a17f Bug 1172574 - Allow for setting prefs in mach run for scratch_user;r=gps
Prefs can be set with `./mach run --setpref foo=bar` or in the ~/.mozbuild/machrc file as:

  [runprefs]
  foo=bar

MozReview-Commit-ID: HO3tdFi9ffi

--HG--
extra : rebase_source : 3c2e6f33567448c19defafb656e6cb9f3a729391
2017-07-28 15:38:22 -07:00
Chris Manchester
9fbb588739 Bug 1385391 - Update artifact names for artifact builds to reflect Taskcluster package names on windows. r=nalexander
MozReview-Commit-ID: kC09UUfAsN

--HG--
extra : rebase_source : 0c3eeb1251f7ede7689a140551b09964ec6b80e3
2017-07-28 18:47:23 -07:00
Nick Alexander
883d82aa7d Bug 1255227 - Pre: Use {0} for Python 2.6. r=sebastian
Per https://stackoverflow.com/a/5447119, Python 2.6 doesn't support
anonymous fields (like {}).  This patch uses {0} instead.

MozReview-Commit-ID: 1VgppEkFn0W

--HG--
extra : rebase_source : 80cc860338132c28a22ca0a6c405484feec91136
2017-07-25 14:46:53 -07:00
Swapnesh Kumar Sahoo
363572e058 Bug 1347582 - Use File object to obtain normalized file mode; r=dustin,gps
MozReview-Commit-ID: HeDq4EwAfVS

--HG--
extra : rebase_source : 5336af2c0868bf2d74e890612e349a55ca846b0b
2017-07-26 11:51:37 +05:30
Ted Mielczarek
8bb1b7ab57 bug 1384568 - Write a generated-sources.json. r=gps
Capture the list of generated source files derived from moz.build data
and save it in a generated-sources.json in the objdir so that we can upload
generated source files for use in crash reports and when debugging release
builds.

MozReview-Commit-ID: FrHcyFo0rBF

--HG--
extra : rebase_source : 09a5a38d22430e9a2c8121ddc8d47fabdd3be705
2017-07-26 07:34:38 -04:00
maliu
f4647149e4 Bug 1316462 - Increase minsdk to 16 and remove EOL notification. r=sebastian, r=snorp, r=rnewman
MozReview-Commit-ID: 7o1xqIqVWC6

--HG--
extra : amend_source : acfca8a9899399772a0387f2a3cbba27969d367a
2017-07-27 08:27:08 -04:00
Nick Alexander
8f1ac5b651 Bug 1384400 - Add input to output mappings to mozpack.FileRegistry. r=gps
This is necessary because the existing manifests don't expose full
dependency information.  I needed to avoid the existing dependency
files because those code paths need to know the output destination of
the manifest in order to parse the Make dependency files; trying to
adapt this system is more complicated than just preprocessing each
file to extract dependency information directly.

MozReview-Commit-ID: 5m0SEqmhJMM

--HG--
extra : rebase_source : 1ff6a1a51bc76efa78eb564cd8e572777dace0f6
2017-07-25 12:28:31 -07:00
Alex Gaynor
837b88dc9c Bug 1384224 - Add support for hardlinks to InstallManifest; r=gps
Also removes InstallManifestNoSymlinks which can be more simply expressed by
passing link_policy='copy' to InstallManifest.populate_registry.

MozReview-Commit-ID: Bkjc2hIub4A

--HG--
extra : rebase_source : df05080fef3baf7e6c60ff9a468e71f0b2c67462
2017-07-25 14:06:15 -04:00
Carsten "Tomcat" Book
8a74dfa905 Merge mozilla-central to autoland 2017-07-26 11:18:21 +02:00