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

110 Коммитов

Автор SHA1 Сообщение Дата
Geoff Brown da6461365b Bug 1621106 - Bump minor version for mozbase modules depending on mozlog 6.0 and/or mozcrash 2.0; r=wlach
Minor version bumps in preparation for new pypi releases of modules now requiring mozlog 6.0 and/or mozcrash 2.0.

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

--HG--
extra : moz-landing-system : lando
2020-03-10 13:05:13 +00:00
Geoff Brown dc64cf08e6 Bug 1619586 - Major version bump for mozlog and mozcrash; r=bc,marionette-reviewers,perftest-reviewers,jgraham,whimboo
Major version number bump for both mozlog and mozcrash + requirements update.
This is very much like the previous mozlog major bump - see bug 1591384.
This patch does not update testing/web-platform/tests/tools/wptrunner/requirements.txt;
I expect that will be automatically updated by the pyup.io bot once mozlog is re-released.

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

--HG--
extra : moz-landing-system : lando
2020-03-04 00:32:38 +00:00
Ricky Stewart 42b2820e92 Bug 1616989 - mozbuild/frontend/reader.py supports Python 3 r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D63566

--HG--
extra : moz-landing-system : lando
2020-02-27 16:22:26 +00:00
Mihai Alexandru Michis 6455032f2c Backed out 6 changesets (bug 1617303, bug 1617313, bug 1616885, bug 1616920, bug 1616989, bug 1617014) for causing gecko decision task bustages in talos/unittests/python.ini
CLOSED TREE

Backed out changeset 409619387576 (bug 1617313)
Backed out changeset 538f415043e2 (bug 1617303)
Backed out changeset 544cb78b8946 (bug 1617014)
Backed out changeset 0f0bf0824a95 (bug 1616989)
Backed out changeset ec9f0b18c0a7 (bug 1616920)
Backed out changeset a32c3300a011 (bug 1616885)
2020-02-27 18:16:31 +02:00
Ricky Stewart 4b8061d7cf Bug 1616989 - mozbuild/frontend/reader.py supports Python 3 r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D63566

--HG--
extra : moz-landing-system : lando
2020-02-26 00:35:49 +00:00
Geoff Brown 5043f050ec Bug 1604542 - Make test chunking more consistent; r=ahal,jmaher
The issue here is that the sort order of 2 or more elements with the same key
is indeterminate: One run (say, one test chunk) may order them one way and another
run (another test chunk) may order them another. The chunk_by_manifest() filter
relies on sort order in two places, in both cases using list length as the key
for sorting; as equal list lengths are not uncommon, multiple runs can assign
very different lists of tests to the chunks, even though all the inputs are the
same. Extending keys with unique data provides a simple fix.

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

--HG--
extra : moz-landing-system : lando
2020-01-09 19:14:59 +00:00
championshuttler 686ef45b08 Bug 1428705 - Fix the manifest file for manifestparser.r=egao
Differential Revision: https://phabricator.services.mozilla.com/D58690

--HG--
extra : moz-landing-system : lando
2020-01-07 18:50:11 +00:00
Edwin Takahashi fd9fae78a2 Bug 1428705 - use assertEqual in test_manifest.py and add formal python3 compatibility in setup.py for manifestparser r=Callek
Changes:

Change assert from `assertEquals` to `assertEqual` since the former has been technically deprecated as of 2.7.
Add python3 compatibility in `setup.py`.

This should be the last item to bring full python3 compatibility to manifestparser.

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

--HG--
extra : moz-landing-system : lando
2019-12-26 13:28:53 +00:00
Andrew Halberstadt 8ced09349b Bug 1603844 - [manifestparser] Merge 'prefs' from defaults instead of overwriting them, r=gbrown
While the 'prefs' key can only exist in the DEFAULT section of manifests, this
allows parent manifests to propagate their prefs down to included ones.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 17:31:27 +00:00
Andrew Halberstadt d278f4494d Bug 1604360 - [manifestparser] Version bump to 2.0.0, r=egao
Since we made backwards incompatible changes, let's do a major version bump.

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

--HG--
extra : moz-landing-system : lando
2019-12-20 15:53:42 +00:00
Andrew Halberstadt e6f858b2fb Bug 1604360 - [manifestparser] Properly merge [DEFAULT] section of manifest with parent defaults r=gbrown
Previously the [DEFAULT] section of a manifest would simply overwrite whatever
values were passed down from the parent. This patch ensures we use
'combine_fields' so things like 'skip-if' and 'support-files' are properly
merged.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 23:54:26 +00:00
Andrew Halberstadt 4c525b8a42 Bug 1604360 - [manifestparser] Convert 'test_read_ini' to the pytest format r=egao
Make it nicer to read and edit.

Depends on D57408

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:19:46 +00:00
Andrew Halberstadt 2f17f15aab Bug 1604360 - [manifestparser] Remove unused 'defaults_only' logic r=egao
This flag is not passed in from anywhere in mozilla-central.

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

--HG--
extra : moz-landing-system : lando
2019-12-17 22:19:28 +00:00
Andrew Halberstadt f360e451f9 Bug 1604360 - [manifestparser] Remove unused 'parent' feature r=egao
There aren't any manifests using '[parent:<manifest>]' in mozilla-central.

Depends on D57406

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

--HG--
extra : moz-landing-system : lando
2019-12-17 18:14:04 +00:00
Andrew Halberstadt 0e2a4f08b4 Bug 1604360 - [manifestparser] Remove unused treatment of 'server-root' key r=egao
This was probably a remnant from Mozmill. I don't see any uses of it in mozilla-central
anywhere (or even comm-central for that matter).

Depends on D57405

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

--HG--
extra : moz-landing-system : lando
2019-12-17 18:13:42 +00:00
Edwin Takahashi dc60cf7e90 Bug 1428705 - fix manifestparser/test_chunking.py for python3 r=ahal,whimboo
Changes:

Fix syntax in the test file to work under python3.

Assorted changes to the code style, and eliminating unnecessary warnings.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:18:55 +00:00
Andrew Halberstadt c64802ef87 Bug 1583353 - [manifestparser] Take 'ancestor_manifest' into account in the pathprefix filter, r=gbrown
Previously, when running |mach mochitest path/to/manifest.ini|, any tests in
manifests that that one includes would not be run.

This fixes that behaviour.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 23:09:54 +00:00
Edwin Takahashi e6e05ff21c Bug 1428705 - fix manifestparser/manifestparser for python3 and enable test_convert_directory.py r=ahal
Changes:

Import the appropriate version of `StringIO` instead of `BytesIO` depending on the version of python, and use it in `manifestparser.py`.

This is required for `test_convert_directory.py` to pass on both python versions. Changes to the test was not required.

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

--HG--
extra : moz-landing-system : lando
2019-12-14 03:10:45 +00:00
Andrew Halberstadt 26e9db86f8 Bug 1583353 - [taskgraph] Implement test chunking in transforms r=gbrown
We've long handled chunks by defining the total number of chunks in our CI
configuration, and then passing that value down into the test harnesses at task
runtime (via the '--this-chunk' and '--total-chunks' parameters).  The test
harness then runs an algorithm to determine which tests should be run in "this"
chunk.

There are several problems with this approach, but by far the biggest is that
we can't use test information in our scheduling algorithms. The information
simply isn't available yet. This patch switches things around such that we
determine which tests go in which tasks during the taskgraph generation. This
means we have perfect information around which tasks are running which tests,
and if e.g a ccov or machine learning algorithm deems a particular test
important, we can make sure to *only* schedule the tasks that contain that
test.

I'm planning to enable this a couple suites at a time so we don't accidentally
stop running tests. This specifically only enables this mode for
'mochitest-media', 'mochitest-browser-chrome' and 'mochitest-devtools-chrome'.
I chose these suites because they are the ones that are already using the
'chunk_by_runtime' algorithm.

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

--HG--
extra : moz-landing-system : lando
2019-12-11 21:10:48 +00:00
Edwin Takahashi a54f1b1dae Bug 1428705 - [manifestparser] Add support for Python 3. r=egao
Differential Revision: https://phabricator.services.mozilla.com/D54113

--HG--
extra : moz-landing-system : lando
2019-12-06 22:25:58 +00:00
Andrew Halberstadt e68e5e2ee6 Bug 1600314 - [manifestparser] Use 'ancestor_manifest' in the 'chunk_by_runtime' filter (if it exists), r=gbrown
Ensures child (aka included) manifests always run in the same chunk as their parent.

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

--HG--
extra : moz-landing-system : lando
2019-12-03 14:23:32 +00:00
Andrew Halberstadt 9e97c79054 Bug 1600314 - [manifestparser] Make 'ancestor_manifest' a relative path, r=gbrown
Also rename the key from 'ancestor-manifest' to 'ancestor_manifest' to be
consistent with other keys.

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

--HG--
extra : moz-landing-system : lando
2019-12-02 21:19:45 +00:00
Mihai Alexandru Michis 3f8e4cc2e1 Backed out 3 changesets (bug 1600314) for causing bc and dt failures regarding manifest filters. CLOSED TREE
Backed out changeset 4c4e74df38bd (bug 1600314)
Backed out changeset 3c4063b93ce7 (bug 1600314)
Backed out changeset d28d71c964c7 (bug 1600314)
2019-12-02 16:44:35 +02:00
Andrew Halberstadt 8c10901652 Bug 1600314 - [manifestparser] Use 'ancestor_manifest' in the 'chunk_by_runtime' filter (if it exists), r=gbrown
Ensures child (aka included) manifests always run in the same chunk as their parent.

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

--HG--
extra : moz-landing-system : lando
2019-12-02 14:24:30 +00:00
Andrew Halberstadt c66002dc20 Bug 1600314 - [manifestparser] Make 'ancestor_manifest' a relative path, r=gbrown
Also rename the key from 'ancestor-manifest' to 'ancestor_manifest' to be
consistent with other keys.

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

--HG--
extra : moz-landing-system : lando
2019-11-29 16:16:09 +00:00
Andrew Halberstadt 434b6657f5 Bug 1583364 - [manifestparser] Fix regression to ChunkByManifest filter, r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D54369

--HG--
extra : moz-landing-system : lando
2019-11-27 14:07:54 +00:00
Andrew Halberstadt c531d1a91a Bug 1583364 - Generate 'manifest-runtimes.json' and update mochitest harness to use it, r=gbrown
As a side-effect this will also update runtime data for all suites using
'--chunk-by-runtime'.

This change simultaneously:

1. Stores runtime data from all suites
2. Stores runtime data from all tests (no more percentile)
3. Stores distinct data for android, unix (osx/linux) and windows
4. Reduces the size of 'testing/runtimes' from 408k -> 168k

The chunks look more balanced from my unscientific glance (especially on Windows).

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

--HG--
extra : moz-landing-system : lando
2019-11-23 05:29:32 +00:00
Cosmin Sabou 4b33ed7836 Backed out 6 changesets (bug 1583364) for making bug 1593402 near permafail.
Backed out changeset b22b8ed60c0c (bug 1583364)
Backed out changeset ed4d544f3db4 (bug 1583364)
Backed out changeset 6ce87f7cc6f8 (bug 1583364)
Backed out changeset fd9f3064ec85 (bug 1583364)
Backed out changeset 20a16191cee2 (bug 1583364)
Backed out changeset 38314b60638c (bug 1583364)

--HG--
rename : testing/runtimes/writeruntimes => testing/runtimes/writeruntimes.py
extra : rebase_source : c4de0a09adfe4a94e45827860da68328ef33da6b
2019-11-23 05:36:20 +02:00
Andrew Halberstadt 5099e76c5d Bug 1583364 - [manifestparser] Fix regression to ChunkByManifest filter. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D54369

--HG--
extra : histedit_source : 6728719847f307627f3ff10535169ee71354b14b
2019-11-22 23:27:21 +02:00
Andrew Halberstadt b483d6326c Bug 1583364 - Generate 'manifest-runtimes.json' and update mochitest harness to use it, r=gbrown
As a side-effect this will also update runtime data for all suites using
'--chunk-by-runtime'.

This change simultaneously:

1. Stores runtime data from all suites
2. Stores runtime data from all tests (no more percentile)
3. Stores distinct data for android, unix (osx/linux) and windows
4. Reduces the size of 'testing/runtimes' from 408k -> 168k

The chunks look more balanced from my unscientific glance (especially on Windows).

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

--HG--
extra : moz-landing-system : lando
2019-11-22 19:23:17 +00:00
Gregory Mierzwinski 9d477bcb3a Bug 1597975 - Fix manifestparser in python 3 r=ahal
This patch fixes a minor issue with manifestparser when it is used in python 3. The problem was that dict.items() returns a generator in python 3 instead of a list.

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

--HG--
extra : moz-landing-system : lando
2019-11-20 20:33:23 +00:00
Andrew Halberstadt a3466c3c3c Bug 1583353 - [manifestparser] Support manifests in the 'pathprefix' filter, r=egao
Allows 'paths' passed into the pathprefix filter to be manifests. Any path that
ends with '.ini' is considered a manifest.

Depends on D51899

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

--HG--
extra : moz-landing-system : lando
2019-11-08 18:58:09 +00:00
Andrew Halberstadt 746c6aaf3a Bug 1583353 - [manifestparser] Convert test_filters.py to the pytest format, r=egao
Differential Revision: https://phabricator.services.mozilla.com/D51899

--HG--
extra : moz-landing-system : lando
2019-11-08 18:58:34 +00:00
Andrew Halberstadt 9a9c5a8311 Bug 1580620 - [mozbase] Make manifestparser fail on duplicate keys even without strict mode r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D45592

--HG--
extra : moz-landing-system : lando
2019-09-13 14:09:19 +00:00
Andrew Halberstadt e1337a729d Bug 1567642 - [mozbase] Fix flake8 under py3 lint errors r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D45243

--HG--
extra : moz-landing-system : lando
2019-09-09 23:55:32 +00:00
Mike Hommey 66d7fe943e Bug 1575420 - Replace MOZ_WIDGET_TOOLKIT value of "gtk3" with "gtk". r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D42765

--HG--
extra : moz-landing-system : lando
2019-08-21 12:25:42 +00:00
Kris Maglione 73e321aadc Bug 1566952: Part 0 - Fix comment processing in multi-line directives. r=ahal
The current comment processing code strips whitespace from a line, calculates
comment offsets based on the unstripped version, and then strips those offsets
from the stripped version. That means that, for multi-line directives, which
typically have two spaces at the front, the offsets are wrong and lines with
comments end up with a trailing "# " that the expression parser doesn't
understand.

This patch fixes the comment parser to correctly use the stripped line for
offset calculations instead.

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

--HG--
extra : rebase_source : 9f19314ccab3fb2fa68642ff0aef978cb5c3e13c
2019-07-17 14:19:59 -07:00
Andrew Halberstadt 3336efcb3f Bug 1473498 - Fixing Py3 compatibility errors reachable from testing/mach_commands.py r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D37762

--HG--
extra : moz-landing-system : lando
2019-07-16 01:21:55 +00:00
Rob Wu 0e858ea76c Bug 1498636 - Separate "include" variables from manifest defaults r=ahal
Test manifests may be included by multiple other manifests, optionally
with additional variables below the `[include:...]` section header.
These additional variables are specific to the manifest that contained
the "include" section, and should not inadvertently be shared with other
manifests that also happen to include this manifest.

To achieve that, store the defaults for included manifests in a (path to
parent manifest, path to included manifest) tuple instead of just the
included manifest.

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

--HG--
extra : moz-landing-system : lando
2019-02-07 15:10:25 +00:00
Csoregi Natalia 20b9fad77e Backed out changeset 4fcae0e31524 (bug 1498636) for multiple browser-chrome failures e.g browser_ext_browserAction_popup_resize.js. CLOSED TREE 2019-02-04 15:27:06 +02:00
Rob Wu 54d525e007 Bug 1498636 - Separate "include" variables from manifest defaults r=ahal
Test manifests may be included by multiple other manifests, optionally
with additional variables below the `[include:...]` section header.
These additional variables are specific to the manifest that contained
the "include" section, and should not inadvertently be shared with other
manifests that also happen to include this manifest.

To achieve that, store the defaults for included manifests in a (path to
parent manifest, path to included manifest) tuple instead of just the
included manifest.

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

--HG--
extra : moz-landing-system : lando
2019-02-04 12:09:54 +00:00
Andrew Halberstadt ce87b08ac4 Bug 1436037 - [python] Create Windows python-test tasks, r=gps
The following python-test paths are being moved out of 'make check' and into their own task:
- python/mozlint
- testing/mozbase
- tools/lint

The following python-test paths previously did not run on Windows:
- python/mozterm
- testing/marionette
- testing/raptor
- tools/tryselect

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

--HG--
extra : moz-landing-system : lando
2018-12-05 19:20:16 +00:00
Andreea Pavel e3299fd2db Backed out 5 changesets (bug 1498640, bug 1436037, bug 1497660, bug 1505579) for mass failures on a CLOSED TREE
Backed out changeset 914a7a899dd1 (bug 1436037)
Backed out changeset e072757bf691 (bug 1436037)
Backed out changeset b0805a8cf6eb (bug 1505579)
Backed out changeset aa32ba9e6df3 (bug 1498640)
Backed out changeset ce441b8a784c (bug 1497660)
2018-11-15 07:53:41 +02:00
Andrew Halberstadt b03e2aa337 Bug 1436037 - [python] Create Windows python-test tasks, r=gps
The following python-test paths are being moved out of 'make check' and into their own task:
- python/mozlint
- testing/mozbase
- tools/lint

The following python-test paths previously did not run on Windows:
- python/mozterm
- testing/marionette
- testing/raptor
- tools/tryselect

MozReview-Commit-ID: C07FANaYzf7

Depends on D10758

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

--HG--
extra : moz-landing-system : lando
2018-11-15 00:49:45 +00:00
Dave Hunt 696d9f1858 Bug 1388016 - Run mozbase tests against Python 2 and 3; r=ahal
MozReview-Commit-ID: LdmTHHrLZwq

--HG--
extra : rebase_source : e7f21bb73ffc1a322a10eef21b705b14a2077144
2018-06-21 06:26:17 +01:00
Andrew Halberstadt adbe589f59 Bug 1353461 - [manifestparser] Implement a chunk_by_manifest algorithm, r=jmaher
This implements a chunk_by_manifest algorithm. It is similar to chunk_by_slice
in that it tries to make an even number of tests run in each chunk. However,
unlike chunk_by_slice it will guarantee that tests in the same manifest will
all run in the same chunk. This makes it suitable to use with run-by-manifest.

This means the chunks won't be perfect (as manifests are differnet sizes). It
is also prone to more randomization, similar to chunk-by-runtime.

In fact, this algorithm is nearly identical to the chunk-by-runtime one, so it
was refactored out to a base class.

MozReview-Commit-ID: HI2ByxW0i8V

--HG--
extra : rebase_source : e066c034b85222d26bafe6873a80366d5bd9df9e
2018-02-13 15:16:37 -05:00
Andrew Halberstadt f354075c7a Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood
This is a new issue that gets linted with flake8 3.5.0. Basically you should
never use a blank except: statement.

This will catch all exceptions, including KeyboardInterrupt and SystemExit
(which is likely not intended). If a catch all is needed, use
`except: Exception`.  If you *really* mean to also catch KeyboardInterrupt et
al, use `except: BaseException`.

Of course, being specific is often better than a catch all.

MozReview-Commit-ID: FKx80MLO4RN

--HG--
extra : rebase_source : 7c74a7d0d81f2c984b47aff3a0ee3448b791177b
2018-01-31 14:32:08 -05:00
Sylvestre Ledru 4b189b7baf Bug 1278282 - Update of the tests to reflect the removal of the gtk2 r=lsalzman
MozReview-Commit-ID: Htgc44dCEjX

--HG--
extra : rebase_source : 55ce6a6a72c36cbfdbeef08fe58d11f2053dc35f
2018-01-10 08:55:38 +01:00
Tom Prince a45ea20b93 Bug 1413575: Adjust in-tree references to mozbase documentation to point in-tree. r=ahal
MozReview-Commit-ID: rctbByyjTA

--HG--
extra : rebase_source : a682eb6d77b79640ac9ec20e9d64340613bcfed7
2017-11-20 11:43:13 -07:00
Steve Armand fa0b6e7c7e Bug 1397849 - Enable py2 and py3 linter on testing/mozbase. r=ahal
MozReview-Commit-ID: GnaVLhtO4un

--HG--
extra : rebase_source : 8839a423c5db505469b813957649b1605ed5737f
2017-09-25 22:57:18 -04:00