Граф коммитов

6169 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 0636209ca5 Bug 1645986 - Properly mark generated files required during compile as such. r=firefox-build-system-reviewers,rstewart
Ideally, this kind of manual work wouldn't be required, but the frontend
doesn't provide enough information and while backend could correlate the
information, they currently don't.

Differential Revision: https://phabricator.services.mozilla.com/D80606
2020-06-24 05:07:25 +00:00
Dorel Luca fdb71d7688 Backed out 4 changesets (bug 1645986) for Valgrid failure. CLOSED TREE
Backed out changeset 602ea804234f (bug 1645986)
Backed out changeset c43f9360b0a5 (bug 1645986)
Backed out changeset fe1142397e72 (bug 1645986)
Backed out changeset faf6de9409f9 (bug 1645986)
2020-06-24 07:16:13 +03:00
Mike Hommey 8a86310ac3 Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-24 00:45:25 +00:00
Mike Hommey 94ff33a728 Bug 1645986 - Properly mark generated files required during compile as such. r=firefox-build-system-reviewers,rstewart
Ideally, this kind of manual work wouldn't be required, but the frontend
doesn't provide enough information and while backend could correlate the
information, they currently don't.

Differential Revision: https://phabricator.services.mozilla.com/D80606
2020-06-24 01:03:40 +00:00
Dorel Luca b159956383 Backed out 4 changesets (bug 1645986) for Build bustage
Backed out changeset ac871b2f34dc (bug 1645986)
Backed out changeset 07b14b6a0b91 (bug 1645986)
Backed out changeset fdd319bdbfa7 (bug 1645986)
Backed out changeset ce213e6bbc1f (bug 1645986)
2020-06-24 03:42:47 +03:00
Mike Hommey f6fcdd8d5c Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-23 16:07:26 +00:00
Mike Hommey c54b26945c Bug 1645986 - Properly mark generated files required during compile as such. r=firefox-build-system-reviewers,rstewart
Ideally, this kind of manual work wouldn't be required, but the frontend
doesn't provide enough information and while backend could correlate the
information, they currently don't.

Differential Revision: https://phabricator.services.mozilla.com/D80606
2020-06-23 20:47:06 +00:00
Sylvestre Ledru 56fbafd822 Bug 1647265 - mozlint: when type is 'regex', add the capability to ignore the case r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80477
2020-06-23 21:45:16 +00:00
Mitchell Hentges 7914702f50 Bug 1647865: Bootstrap should stop if run with Python 2 r=rstewart
This uses sys.exit() instead of throwing an exception since:
1. It isn't an error, and bug 1646406 isn't finished yet
2. The output is more straightforward for the user

This verification happens separately from the other python-verification logic, but that's
because I wanted the validation to happen as soon as possible - before the user invests too
much time, and before too much of the script ran with the wrong interpreter.

Differential Revision: https://phabricator.services.mozilla.com/D80726
2020-06-23 21:40:55 +00:00
Mike Hommey f3c4e8c67a Bug 1644371 - Update the cargo version requirement for `mach vendor rust`. r=dmajor
1.38 changed the Cargo.lock format, and the current minimum (1.37) can't
read it, so the minimum version was already wrong.

1.41 has a problem vendoring nom for some reason, that appears to be
fixed in 1.42.

Differential Revision: https://phabricator.services.mozilla.com/D80593
2020-06-23 13:13:36 +00:00
Andi-Bogdan Postelnicu d0f21af448 Bug 1647629 - Make infer static-analysis compatible with python3. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D80633
2020-06-23 11:42:51 +00:00
James Graham 2ade9fa1fd Bug 1644395 - Add wpt print reftests to TC config, r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D79082
2020-06-23 10:00:28 +00:00
Narcis Beleuzu a0c8ce672c Backed out 4 changesets (bug 1644395) for bc failures on browser_all_files_referenced.js . CLOSED TREE
Backed out changeset 582c1dd945ca (bug 1644395)
Backed out changeset 9dbba532a700 (bug 1644395)
Backed out changeset 59e998eb5e59 (bug 1644395)
Backed out changeset 035ddba4a4d9 (bug 1644395)
2020-06-23 00:56:49 +03:00
Andrew Halberstadt 15aaba2531 Bug 1646427 - [vendor] Exclude test and documentation dirs when vendoring Python packages, r=rstewart
This adds a way to exclude certain file patterns when extracting Python
packages in |mach vendor python|. For now I've excluded likely test and doc
dirs, though we may want to expand on the list in the future.

Differential Revision: https://phabricator.services.mozilla.com/D80209
2020-06-22 13:20:57 +00:00
James Graham 5706e82bce Bug 1644395 - Add wpt print reftests to TC config, r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D79082
2020-06-22 13:44:13 +00:00
Ricky Stewart eb00073e1a Bug 1646840 - Ensure `mach vendor rust` writes out .cargo/config.in with LF newlines on Windows r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80474
2020-06-22 15:24:12 +00:00
John Paul Adrian Glaubitz 41f3e19379 Bug 1318905 - build: Add riscv64 as target architecture to mozbuild r=glandium
Adds the basic definitions for riscv64 to mozbuild, allowing to build Spidermonkey.

Differential Revision: https://phabricator.services.mozilla.com/D78623
2020-06-18 07:11:09 +00:00
Sylvestre Ledru c5d947b77f Bug 1646421 - flake8 followup, remove the noqa as it breaks the test
Instead, ignore this specific test for this file

Differential Revision: https://phabricator.services.mozilla.com/D80374
2020-06-20 12:21:27 +00:00
Sylvestre Ledru 46af48052b Bug 1646421 - flake8 Fix a bunch of actual errors r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80078
2020-06-20 09:46:45 +00:00
Geoff Brown dbfd31bcb6 Bug 1644876 - Add --enable-fission option to 'mach run'; r=kashav
Differential Revision: https://phabricator.services.mozilla.com/D80298
2020-06-19 16:20:00 +00:00
Mike Hommey 7fc03d8e13 Bug 1600530 - Consider MOZ_OBJDIR from the environment when there is no mozconfig. r=nalexander
We currently only deal with MOZ_OBJDIR in the environment when there is
a mozconfig.

Differential Revision: https://phabricator.services.mozilla.com/D80308
2020-06-19 03:31:11 +00:00
Mike Hommey eab19f0855 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary get a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-18 23:45:41 +00:00
Gregory Mierzwinski 91291fe122 Bug 1646697 - Modify how the multi-commit tasks work. r=mozperftest-reviewers,tarek
This patch adds a `--test-date` option to mozperftest that lets us specify the date that we are testing on. This lets us trigger multi-commit tests on past dates, and also ensures that retriggers of the multi-commit tests use the same day that they were pushed on (giving us reproducibility).

Differential Revision: https://phabricator.services.mozilla.com/D80173
2020-06-18 22:37:35 +00:00
Gregory Mierzwinski b1676248ea Bug 1646368 - Add performance tuning feature to android layer. r=mozperftest-reviewers,tarek
This patch ports the performance tuning functionality from Raptor to mozperftest and adds a small test for it.

Differential Revision: https://phabricator.services.mozilla.com/D80168
2020-06-18 22:37:27 +00:00
Mitchell Hentges f3b96a236f Bug 1645913: show mach command in Sentry breadcrumbs r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80124
2020-06-18 21:31:46 +00:00
Dorel Luca f7cdd7d12e Backed out changeset b707f591bef5 (bug 1643258) for build bustage. CLOSED TREE 2020-06-19 00:26:24 +03:00
Mike Hommey 39efc5bc7b Bug 1646653 - Remove dependencies on xpcom/xpidl/export. r=froydnj
They were necessary some time ago, but:
- there is no js/xpconnect/src/export target anymore,
- accessibility/xpcom/export had a dependency on xpcom/xpidl/export for
  the ply cache files, but they're not used as of bug 1633156.
- the recursive make backend was adding automatic dependencies on
  xpcom/xpidl/export for the ply cache files.

Differential Revision: https://phabricator.services.mozilla.com/D80150
2020-06-18 11:02:46 +00:00
Mike Hommey 9d26424253 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary get a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-18 11:02:43 +00:00
Mitchell Hentges c9ee95076b Bug 1645438: Sentry no longer patches <topobjdir> path r=rstewart
Sentry needs to be able to send data in a minimal environment, and intelligently determining
the "topobjdir" (without leaning on Mach) is tough.

Instead, since the "topobjdir" usually falls under the "topsrcdir", just leaning on <topsrcdir>
patching should be sufficient.

Differential Revision: https://phabricator.services.mozilla.com/D80122
2020-06-18 13:47:21 +00:00
Sylvestre Ledru 4b7c742212 Bug 1646405 - update the code using pyyaml to use the new path r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80025
2020-06-18 19:40:28 +00:00
Yue Zhang f9a1c0c02d Bug 1640951 - Implement a jsonschema for results coming from transformer merge functions. r=sparky
Differential Revision: https://phabricator.services.mozilla.com/D78622
2020-06-18 16:48:05 +00:00
Ricky Stewart c371fbe069 Bug 1646748 - `mach clobber python` no longer deletes arbitrary untracked files in `python/` r=nalexander
This is a documented feature of `mach clobber python`, which I never noticed until bug 1645889 landed. I think it's fair to say that this is not how one would intuitively expect the command to work given that I'm the "owner" of this `mach` command and I never noticed this quirk until today. :)

`python/` shouldn't contain compiled C extensions or anything and the existing `*.py[cdo]` and `*/__pycache__` clauses should get rid of most, if not all, of the relevant garbage in the directory.

If the original behavior turns out to be desirable, we can add it back in (maybe we can use the `--full` command line option?)

Differential Revision: https://phabricator.services.mozilla.com/D80204
2020-06-18 16:42:51 +00:00
Kagami Sascha Rosylight 0c5130e3a4 Bug 1643192 - Use git log to get base ref r=glandium
Since there are still needs for .base_ref(), this uses git log way to get base commit.

Differential Revision: https://phabricator.services.mozilla.com/D78183
2020-06-18 06:39:55 +00:00
Butkovits Atila 40766bf579 Backed out 2 changesets (bug 1643258) for causing Bug 1646625.
Backed out changeset 4c359d743fb2 (bug 1643258)
Backed out changeset 439eee50f354 (bug 1643258)
2020-06-18 08:56:12 +03:00
Jim Porter c9a16c40ed Bug 1631806 - [part 1] Update perftests to use new API and fix `--proxy` option; r=tarek
This patch fixes the tests in testing/performance/ that hadn't been updated to
the new API, as well as fixing a couple issues with the `--proxy` option:

 * `policy.json` wasn't being logged correctly, since mozlog was treating the
   data as a format string

 * Proxy prefs weren't being set correctly for the profile

Differential Revision: https://phabricator.services.mozilla.com/D79937
2020-06-18 03:59:54 +00:00
Mitchell Hentges bfb8185ee4 Bug 1645445: Perform case-insensitive path-patching in Sentry r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80113
2020-06-17 23:03:33 +00:00
Mitchell Hentges afebc69970 Bug 1646099: Scrub hostname from sentry events r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80112
2020-06-17 22:52:04 +00:00
Gijs Kruitbosch 67234feea3 Bug 1257155 - make mach run create console output by default on windows so dump/printf works in the parent process, r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80095
2020-06-17 22:39:37 +00:00
Mike Hommey f764089a91 Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary gets a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-17 03:16:08 +00:00
Mihai Alexandru Michis 6387c1ed23 Backed out changeset fa227b47dac7 (bug 1631806) for causing awsy failures regarding mitmproxy.
CLOSED TREE
2020-06-18 00:27:47 +03:00
Jim Porter da72965e62 Bug 1631806 - [part 1] Update perftests to use new API and fix `--proxy` option; r=tarek
This patch fixes the tests in testing/performance/ that hadn't been updated to
the new API, as well as fixing a couple issues with the `--proxy` option:

 * `policy.json` wasn't being logged correctly, since mozlog was treating the
   data as a format string

 * Proxy prefs weren't being set correctly for the profile

Differential Revision: https://phabricator.services.mozilla.com/D79937
2020-06-17 09:41:24 +00:00
Mitchell Hentges 58848678dc Bug 1644794: Improve "missing JDK" error message and docs r=rstewart,geckoview-reviewers,agi
Additionally, recommends the installation of AdoptOpenJDK instead of the Oracle JDK.
This required a different "JAVA_HOME" detection mechanism, which is implemented in this revision.

Differential Revision: https://phabricator.services.mozilla.com/D79547
2020-06-17 12:17:48 +00:00
Ricky Stewart 40da5b0814 Bug 1646431 - Fix type error in `mach file-info bugzilla-component` r=nalexander
The `key` function to the `sort` call here was janky, so this produced an error if you tried to invoke this command on a path that doesn't have an owner (`TypeError: '<' not supported between instances of 'TypedTuple' and 'NoneType'`).

Differential Revision: https://phabricator.services.mozilla.com/D80043
2020-06-17 17:16:06 +00:00
Ricky Stewart ce17cf368b Bug 1645179 - Squash remaining dead code after removal of IMPACTED_TESTS r=ahal,froydnj
There is some remaining code in central originating from bug 1184405, which sought to associate source files with their "affected" test files. That ended up not panning out, and bug 1644228 removed a lot of that code, but left some remnants in the `Files` object which are still referenced in a couple different places. I'm deleting all of that code in `context.py` plus everything that references it for the following reasons:

1. Right now, `Files.{test_files,test_tags,test_flavors}` do get populated, but only ever with "default" values -- namely `moz.build` files that are above the files in question in the directory hierarchy. This is a heuristic that doesn't actually have anything to do with mapping source files to their corresponding test files, which is misleading.

2. Those attributes are accessed in two places. The first is in the `mach file-info dep-tests` command. This command isn't referenced anywhere else in tree and I don't have any evidence anyone ever uses it. Even if they do, I would claim that doing so is a mistake (because the results of the command aren't meaningful and are just populated by the "defaults" described above), and that person's workflow should be migrated to something else that *is* meaningful.

3. The second place where this metadata is accessed is in `testing/mozbase/moztest/moztest/resolve.py`; that method is invoked in `tools/tryselect/selectors/syntax.py`, but only if you pass `--detect-paths` to `mach try syntax`. This is [entirely broken](https://bugzilla.mozilla.org/show_bug.cgi?id=1614614), and even if we made an effort to fix it, it wouldn't do anything resembling what the documentation of `--detect-paths` suggests it would do (again, because the data isn't populated meaningfully). So I'm deleting the command line option entirely.

Differential Revision: https://phabricator.services.mozilla.com/D79711
2020-06-17 13:30:49 +00:00
Razvan Maries 1d39accaeb Backed out changeset 5c7f4c2de55b (bug 1643258) for build bustages. CLOSED TREE 2020-06-17 01:53:05 +03:00
Mike Hommey 80bcbff51e Bug 1643258 - Avoid the use of the __cxa_thread_atexit_impl symbol. r=froydnj
When linking a weak symbol in an object against a library where the
symbol is provided with a version, the final binary gets a weak versioned
symbol reference.

It turns out weak versioned symbols still make the dynamic linker need
the symbol version, even if all symbols needed with that version are
weak.

Practically speaking, that means with bug 1634204, we now end up with
a weak versioned symbol reference to __cxa_thread_atexit_impl with
version GLIBC_2.18, and glibcs without the symbol can't fulfil that
version, even though the weak symbol is the only thing we need from that
version.

This means the check_binary changes in bug 1634204 are too
relaxed, so we revert them (although we keep the easier to read
conditions in check_dep_versions).

We also introduce a hack in stdc++compat.cpp (although it's not
technically entirely about libstdc++ compat) so that we avoid the weak
symbol reference while keeping the intended baseline for libstdc++ and
glibc.

Differential Revision: https://phabricator.services.mozilla.com/D79773
2020-06-16 20:44:48 +00:00
Ricky Stewart e4a96c3b64 Bug 1646127 - Remove `mach empty-makefiles` r=froydnj
This command, which dates from 7 years ago, depends on `pymake` which requires Python 2, but it runs in Python 3 as of bug 1632354. It's also not generally useful and appears to just be a thing for debugging/build system development, but evidently no one regularly uses it for that purpose because it fails unconditionally now. If something like this turns out to be useful then it can be resurrected, either depending on a py3-compatible version of `pymake` (see bug 1646112) or some other library.

Differential Revision: https://phabricator.services.mozilla.com/D79879
2020-06-16 19:05:40 +00:00
Andy Grover 4e154c0811 Bug 1645813 - Re-add qlog to BSD-2-Clause list r=tjr
Looks like this change got lost when the vendor stuff was refactored?

Differential Revision: https://phabricator.services.mozilla.com/D79759
2020-06-16 05:40:04 +00:00
Ricky Stewart 24cbfbeddc Bug 1645889 - `mach clobber` clobbers Python files as well as objdir files r=nalexander
With the ongoing artifact issues, I find myself asking people to run `mach clobber python` quite frequently. Very often, those people come back and tell me that they tried to `mach clobber` and it didn't work, which is of course no surprise to me because `mach clobber` and `mach clobber python` do different things; so I have to repeat myself and we waste time going through the cycle multiple times for no reason.

It's not crazy to assume that `mach clobber` will do as much as, or more, work than `mach clobber python`, so this change should bring the actual functionality of the code in sync with what people tend to assume. People tend to instinctively `mach clobber` when something has gone wrong locally and since `mach clobber python` does actually fix a set of local issues that `mach clobber` does not, this could also result in fewer bugs being reported in the long run. This is technically a back-incompatible change, but unlike a clobber of the `objdir` which can require you to do an expensive full rebuild, nobody's going to miss their `.pyc` files being deleted.

Differential Revision: https://phabricator.services.mozilla.com/D79733
2020-06-16 15:24:57 +00:00
Kagami Sascha Rosylight e9e26d8b3a Bug 1643072 - Enable symlink for non-JS files on Windows r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D78090
2020-06-15 22:22:50 +00:00
Tom Prince d798fcb16b Bug 1643842: Allow tests to be in en-US directory for artifact builds; r=nalexander
The android shippable builds have the test artifacts in a en-US directory,
since the builds are multi-l10n builds.

Differential Revision: https://phabricator.services.mozilla.com/D79551
2020-06-15 19:49:31 +00:00
Tom Prince 37a7cfb054 Bug 1643842: Use shippable builds for artifact builds; r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D78621
2020-06-15 19:49:30 +00:00
Geoff Brown e1d05bdc1d Bug 1644228 - Remove support for IMPACTED_TESTS; r=remote-protocol-reviewers,firefox-build-system-reviewers,rstewart,whimboo
IMPACTED_TESTS was added in bug 1184405, but is under-utilized in current moz.build
annotations; also bug 1516847 removed use of IMPACTED_TESTS in 'mach test'. This
patch removes remaining support for IMPACTED_TESTS.

Differential Revision: https://phabricator.services.mozilla.com/D79141
2020-06-12 08:04:08 +00:00
Mitchell Hentges bc40ce6513 Bug 1645228: Support topdir in test _populate_context mock r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79380
2020-06-12 20:09:41 +00:00
Mitchell Hentges d92816473f Bug 1645047: Recommend adding cinnabar to path if not exists r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79393
2020-06-12 19:43:38 +00:00
Gijs Kruitbosch caf43f579b Bug 1645165 - fix header labels in migration dialog, r=MattN,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D79383
2020-06-12 12:25:47 +00:00
Simon Fraser 65cbd9e05b Bug 1643625 Clear up references to MAR_OLD_FORMAT in packaging tools r=nthomas
I think we don't need these checks any more.

Differential Revision: https://phabricator.services.mozilla.com/D78480
2020-06-11 22:23:10 +00:00
Mitchell Hentges 1f5b9307c3 Bug 1636251: Patch Sentry events to ensure a raw username isn't sent to Sentry r=rstewart
To avoid sending identifying information, common absolute paths are patched with placeholder values. For example, devs
may place their Firefox repository within their home dir, so absolute paths are doctored to be prefixed with
"<topsrcdir"> instead.

Additionally, any paths including the user's home directory are patched to instead be a relate path from "~".

Differential Revision: https://phabricator.services.mozilla.com/D78962
2020-06-11 21:35:05 +00:00
Mitchell Hentges 5b5e1ea7b9 Bug 1636251: report |./mach| errors with Sentry r=rstewart
These errors are reported to the "mach" project here:
https://sentry.prod.mozaws.net/operations/mach/

Should only report exceptions caused by a failure in `mach` or its subcommands. Build/test/etc failures
should not be sent to Sentry.

Depends on D74737

Differential Revision: https://phabricator.services.mozilla.com/D74738
2020-06-11 20:38:04 +00:00
Ricky Stewart 8a4a1e11fd Bug 1645097 - Hand over ownership of the mach commands in python/mozbuild/mozbuild/code-analysis to Firefox Build System :: Source Code Analysis r=andi
Differential Revision: https://phabricator.services.mozilla.com/D79309
2020-06-11 16:19:19 +00:00
Andi-Bogdan Postelnicu cda84762fb Bug 1638985 - Convert 'mach static-analysis' to run with Python 3. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D79306
2020-06-11 15:54:29 +00:00
Dorel Luca 27321e1f00 Backed out 3 changesets (bug 1636251) for phyton failures in python/mach/mach/test/test_conditions.py. CLOSED TREE
Backed out changeset a033282e742d (bug 1636251)
Backed out changeset ce8cb6373f88 (bug 1636251)
Backed out changeset ae78c0a50575 (bug 1636251)
2020-06-11 19:49:44 +03:00
Mitchell Hentges 2b514aa148 Bug 1636251: Patch Sentry events to ensure a raw username isn't sent to Sentry r=rstewart
To avoid sending identifying information, common absolute paths are patched with placeholder values. For example, devs
may place their Firefox repository within their home dir, so absolute paths are doctored to be prefixed with
"<topsrcdir"> instead.

Additionally, any paths including the user's home directory are patched to instead be a relate path from "~".

Differential Revision: https://phabricator.services.mozilla.com/D78962
2020-06-10 19:50:57 +00:00
Mitchell Hentges 47c53b361d Bug 1636251: report |./mach| errors with Sentry r=rstewart
These errors are reported to the "mach" project here:
https://sentry.prod.mozaws.net/operations/mach/

Should only report exceptions caused by a failure in `mach` or its subcommands. Build/test/etc failures
should not be sent to Sentry.

Depends on D74737

Differential Revision: https://phabricator.services.mozilla.com/D74738
2020-06-10 19:50:55 +00:00
Tarek Ziadé 6ccb7d2797 Bug 1644912 - remove python.ini r=sparky
We're using a custom test runner.

Differential Revision: https://phabricator.services.mozilla.com/D79247
2020-06-11 12:19:59 +00:00
Gregory Mierzwinski 83d3f92844 Bug 1644993 - Add a non-standard prefix field to mozperftest data. r=mozperftest-reviewers,tarek
This patch adds a prefix field to the mozperftest perfherder data. This is a non-standard data field so the performance-artifact-schema.json file isn't modified to include it.

Differential Revision: https://phabricator.services.mozilla.com/D79296
2020-06-11 14:38:53 +00:00
Gregory Mierzwinski 9a6913c3d3 Bug 1644706 - Make a multi-commit test for app-link in CI. r=mozperftest-reviewers,tarek
This patch adds a new method to test multiple Fenix builds within one test run.

Depends on D78926

Differential Revision: https://phabricator.services.mozilla.com/D79107
2020-06-10 22:10:35 +00:00
Tarek Ziadé afbe6e3cff Bug 1644437 - add --test-iterations r=sparky
Adds a new option to allow running the whole test several times,
and a `before_iterations` hook

Differential Revision: https://phabricator.services.mozilla.com/D78926
2020-06-10 22:11:05 +00:00
Tarek Ziadé a677101fc4 Bug 1644368 - improved scriptinfo r=sparky
Move scriptinfo to where it belongs and clean it

Differential Revision: https://phabricator.services.mozilla.com/D78870
2020-06-10 22:44:19 +00:00
Bogdan Tara 633c636ab1 Backed out 3 changesets (bug 1644706, bug 1644437, bug 1644368) for python related bustage CLOSED TREE
Backed out changeset 2a6645398c5a (bug 1644706)
Backed out changeset e695f5748e04 (bug 1644437)
Backed out changeset d615591507b9 (bug 1644368)
2020-06-11 01:04:33 +03:00
Gregory Mierzwinski 8d81e0549f Bug 1644706 - Make a multi-commit test for app-link in CI. r=mozperftest-reviewers,tarek
This patch adds a new method to test multiple Fenix builds within one test run.

Depends on D78926

Differential Revision: https://phabricator.services.mozilla.com/D79107
2020-06-10 21:18:57 +00:00
Tarek Ziadé b3c9f0eacc Bug 1644437 - add --test-iterations r=sparky
Adds a new option to allow running the whole test several times,
and a `before_iterations` hook

Differential Revision: https://phabricator.services.mozilla.com/D78926
2020-06-10 21:44:37 +00:00
Tarek Ziadé 9fe5ec323a Bug 1644368 - improved scriptinfo r=sparky
Move scriptinfo to where it belongs and clean it

Differential Revision: https://phabricator.services.mozilla.com/D78870
2020-06-10 20:57:06 +00:00
Mitchell Hentges 0bc6909185 Bug 1621960: Change |mach python| default from Python 2 to Python 3 r=rstewart
Depends on D77967

Differential Revision: https://phabricator.services.mozilla.com/D78181
2020-06-10 16:10:08 +00:00
Tom Ritter 20f5f16991 Bug 1637845 - Add debug logging to the Update Actions r=glob CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D77691
2020-06-10 14:50:24 +00:00
Tom Ritter ccd8f7d35a Bug 1637845 - Implement --check-for-update, controlling the output carefully for scripted use r=glob
Differential Revision: https://phabricator.services.mozilla.com/D76614
2020-06-10 14:49:49 +00:00
Tom Ritter 33e15a98a5 Bug 1637845 - Remove the old implementations of dav1d and aom vendoring and clean up the mach command r=glob
Differential Revision: https://phabricator.services.mozilla.com/D76506
2020-06-10 14:49:09 +00:00
Tom Ritter ab5dabc9cb Bug 1637845 - Allow ./mach command --help to print out the help for both sub-commands and command arguments r=ahal
It is possible to have both a default command (with positional arguments) and
sub-commands (with arguments) in mach. If the subcommand exists, it
is dispatched to; if it doesn't the default command is called the positional
argument filled in.

However, when you run ./mach command --help, it will detect the subcommands
and only print out their help section.  If the default command has arguments,
they were not printed out.  Now they are.

Small papercuts in this patch are that the Default Command Arguments are
printed after the subcommands and that subcommand help without default
arguments have an extra newline after them. Both of these seem small
enough that the refactoring necessary to abate them is undesirable.

Differential Revision: https://phabricator.services.mozilla.com/D76505
2020-06-10 14:48:35 +00:00
Tom Ritter bb590e176b Bug 1637845 - Add support for github and googlesource as hosting repositories r=glob
Differential Revision: https://phabricator.services.mozilla.com/D76430
2020-06-10 14:47:23 +00:00
Tom Ritter d792cb4ba0 Bug 1637845 - Add a delete-path action to the update-actions r=glob
Differential Revision: https://phabricator.services.mozilla.com/D76429
2020-06-10 14:46:42 +00:00
Tom Ritter ce91a401a8 Bug 1637845 - Add/change support for running scripts to the moz.yaml schema r=glob
Here we unify the 'run_after' section with 'file-updates' just naming
them 'update-actions'.  This will allow a simpler schema and a clearer
picture of the order of actions that are taken.

Differential Revision: https://phabricator.services.mozilla.com/D76428
2020-06-10 14:46:03 +00:00
Tom Ritter e63a07584b Bug 1637845 - Re-implement mach vendor r=glob
This copies the steps of dav1d but tries to make them generic
for future libraries.

Differential Revision: https://phabricator.services.mozilla.com/D75699
2020-06-08 15:04:24 -05:00
Tom Ritter 8d623e85fe Bug 1637845 - Rename VerifyError to MozYamlVerifyError r=glob
This is more descriptive for where this error is coming from.

Differential Revision: https://phabricator.services.mozilla.com/D75698

Depends on D75697
2020-06-10 14:43:33 +00:00
Tom Ritter 606d1b6c0e Bug 1637845 - Extend the file-updates schema to support a copy-file action r)glob
Additionally, raise voluptuous.Invalid errors so the message provided in
the Exception is shown to the user on error.

Differential Revision: https://phabricator.services.mozilla.com/D75697

Depends on D75696
2020-06-10 14:42:55 +00:00
Tom Ritter 4d9b87747c Bug 1637845 - Add 'file-updates' to the moz.yaml schema r=glob
This section is for expressing actions that occur after extracting
the files, before vendoring is completed. While we support running
scripts (or at least, we will...) this section can be used for simple
actions that don't need scripts.

Also, add the dav1d excluded files.

Differential Revision: https://phabricator.services.mozilla.com/D75696

Depends on D75695
2020-06-10 14:42:13 +00:00
Tom Ritter 7c4c1b39f3 Bug 1637845 - Add source-hosting to the schema and vendoring section r=glob
This will tell us how to interact with the upstream repository.

Differential Revision: https://phabricator.services.mozilla.com/D75695

Depends on D75694
2020-06-10 14:41:34 +00:00
Tom Ritter 4b30cdd0dd Bug 1637845 - Add 'license-file' to origin, remove 'revision' from vendoring, add 'vendor-directory' r=glob
Add license-file to allow one to specify a special file the
project's license is in.

Add 'vendor-directory' to allow vendoring the files into a
separate directory (e.g. under third_party.) Remove a contradictory
comment.

Remove 'revision' from 'vendoring'.  This doesn't make sense to me:
'vendoring' is about how to update the library. In a future iteration
we may wish to restrict updates to a branch; but specifying a revision
is specifically about _not_ updating. It appears the intent of revision
was to identify what revision was currently in-tree; but that information
should live in the 'origin' section.

Differential Revision: https://phabricator.services.mozilla.com/D75694

Depends on D75896
2020-06-10 14:40:51 +00:00
Tom Ritter 680ca25e0e Bug 1637845 - Apply 'black' to the vendor subdirectory r=glob
Differential Revision: https://phabricator.services.mozilla.com/D75896

Depends on D75693
2020-06-10 14:40:02 +00:00
Tom Ritter 47fe961b00 Bug 1637845 - Move all mach vendor files to a subdirectory r=glob
Differential Revision: https://phabricator.services.mozilla.com/D75693
2020-06-10 14:38:57 +00:00
Mitchell Hentges 0fcab2f5a1 Bug 1643317: |mach bootstrap --help| uses file ref to explain --app-choice r=rstewart
Previously, python import syntax was used to refer users to the definition of the --application-choice arguments.
However, it isn't straightforward to the uninitiated, especially since it doesn't work in searchfox.

Instead, by providing a file reference, it should be more accessible.

Differential Revision: https://phabricator.services.mozilla.com/D79003
2020-06-10 16:27:24 +00:00
Tarek Ziadé 9458a80c0f Bug 1644586 - remove get_nested_values r=sparky
unused

Differential Revision: https://phabricator.services.mozilla.com/D78988
2020-06-10 15:03:19 +00:00
Mitchell Hentges 0cd86be789 Bug 1643298: |mach bootstrap --no-system-changes| should still output mozconfig r=rstewart,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D78997
2020-06-09 23:19:48 +00:00
Mike Hommey 70653120cb Bug 1622963 - Require python 3.6 for the build system. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D77754
2020-06-09 21:22:32 +00:00
Nathan Froyd 79abcc46c2 Bug 1642032 - part 2 - install non-wildcard absolute FINAL_TARGET_FILES during misc; r=nalexander
Such files are, at least as of this writing, only libraries, and we can
get by with installing them later.  This change will also avoid having
them added to the dependent libraries list.

Differential Revision: https://phabricator.services.mozilla.com/D78618
2020-06-09 20:23:29 +00:00
Nathan Froyd 4f464e2b63 Bug 1642032 - part 1 - factor out install targets for final target files; r=nalexander
We're going to reuse this machinery in a subsequent patch.  I think this
change, by virtue of moving all the output to a single place, also makes
things clearer.

Differential Revision: https://phabricator.services.mozilla.com/D78617
2020-06-09 20:23:24 +00:00
Noemi Erli 9017f973e3 Backed out 4 changesets (bug 1621960) for causing Android bustages CLOSED TREE
Backed out changeset f36a95234a5f (bug 1621960)
Backed out changeset 0e4661c9061d (bug 1621960)
Backed out changeset 3e2cbe4dd777 (bug 1621960)
Backed out changeset d7eb101e5df7 (bug 1621960)
2020-06-09 20:59:26 +03:00
Mitchell Hentges 4006a0890c Bug 1621960: Change |mach python| default from Python 2 to Python 3 r=rstewart
Depends on D77967

Differential Revision: https://phabricator.services.mozilla.com/D78181
2020-06-09 16:44:51 +00:00
Rail Aliiev 1d64d26488 Bug 1642868 - Update verify tests check ja-JP-mac on all platforms now r=nthomas
Differential Revision: https://phabricator.services.mozilla.com/D78844
2020-06-09 15:23:18 +00:00
Razvan Maries ef73a88351 Backed out changeset 37a5223eda5f (bug 1643625) for Rpk bustages. CLOSED TREE 2020-06-09 18:30:01 +03:00
Simon Fraser 1422db5e20 Bug 1643625 Clear up references to MAR_OLD_FORMAT in packaging tools r=nthomas
I think we don't need these checks any more.

Differential Revision: https://phabricator.services.mozilla.com/D78480
2020-06-09 11:53:26 +00:00