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
Build flavors are defined in 'python/mozbuild/mozbuild/testing.py'.
This change is needed by D52729 but it's also a good way to tell which suites
are integrated into the TestManifestBackend in the build system. So I'm landing
it here instead.
Depends on D53030
Differential Revision: https://phabricator.services.mozilla.com/D53698
--HG--
extra : moz-landing-system : lando
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
Changes:
- rename `test.py` to a more descriptive `test_moznetwork.py` and change associated names in the manifest
- added `r` specifier to strings as per PEP warning
- bump version to 1.0.0 pending release to pypi
Differential Revision: https://phabricator.services.mozilla.com/D52107
--HG--
extra : moz-landing-system : lando
This moves the parts of toolkit/library/rust/shared/lib.rs related to
panic hooking to a new mozglue subdirectory, which will be used for
things that can be statically linked to e.g. libxul, rather than in
a "shared library".
The panic hook is disabled when building spidermonkey via the mozjs_sys
crate.
Differential Revision: https://phabricator.services.mozilla.com/D52793
--HG--
extra : moz-landing-system : lando
This moves the parts of toolkit/library/rust/shared/lib.rs related to
panic hooking to a new mozglue subdirectory, which will be used for
things that can be statically linked to e.g. libxul, rather than in
a "shared library".
The panic hook is disabled when building spidermonkey via the mozjs_sys
crate.
Differential Revision: https://phabricator.services.mozilla.com/D52793
--HG--
extra : moz-landing-system : lando
This moves the parts of toolkit/library/rust/shared/lib.rs related to
panic hooking to a new mozglue subdirectory, which will be used for
things that can be statically linked to e.g. libxul, rather than in
a "shared library".
The panic hook is disabled when building spidermonkey via the mozjs_sys
crate.
Differential Revision: https://phabricator.services.mozilla.com/D52793
--HG--
extra : moz-landing-system : lando
Simplified and streamlined the logic in the Linux side of things, to address 1595147.
Only attempt to import and use either `platform` or `distro`, not both.
Perform sanitization of the output string since `distro.linux_distribution()` has a slightly different output than the `platform` equivalent.
Minor version bump to 1.2.1 denoting a bugfix for release to pypi.
Differential Revision: https://phabricator.services.mozilla.com/D52440
--HG--
extra : moz-landing-system : lando
While not strictly necessary for this series, this patch allows:
./mach test path/to/manifest.ini
Which will be especially useful to have now that we are switching to running
tasks by manifest.
Depends on D52241
Differential Revision: https://phabricator.services.mozilla.com/D52242
--HG--
rename : testing/mozbase/moztest/tests/data/srcdir/apple/mochitest.ini => testing/mozbase/moztest/tests/data/srcdir/apple/a11y.ini
extra : moz-landing-system : lando
This gives us the ability to retrieve all browser-chrome tests (no flavor) but
not devtools-chrome (have a flavor).
Differential Revision: https://phabricator.services.mozilla.com/D52241
--HG--
extra : moz-landing-system : lando
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
This loader uses 'reader.find_variables_from_ast' to parse all *_MANIFESTS variables from
moz.build files using the abstract syntax tree. This means it will find all such variables
regardless of the current buildconfig.
Differential Revision: https://phabricator.services.mozilla.com/D51834
--HG--
extra : moz-landing-system : lando
Test test data looks like it was pulled from a live all_tests.pkl file. There
are way more path components than necessary.
This simplifies the test paths so they are easy to manipulate/add/inspect. It
will also make it easier to craft a fake "sourcedir" to test the
TestManifestLoader in the next commit such that the data from both matches.
I decided to use a fruit theme for directories because:
1. Using real directories will pollute grep/searchfox/etc queries with junk.
2. Using a 'dirA', 'dirB', 'dirC' scheme is hard to read.
3. Why not?
This change does not functionally modify what is being tested.
Depends on D51832
Differential Revision: https://phabricator.services.mozilla.com/D51833
--HG--
extra : moz-landing-system : lando
When I updated the dependencies and the `mozinfo.py` code I forgot to bump up the version denoting some changes. This will bump up the version from 1.1.0 to 1.2.0 and permit me to upload a new version to pypi.
Differential Revision: https://phabricator.services.mozilla.com/D51898
--HG--
extra : moz-landing-system : lando
I'm making this refactor now because a future commit is going to completely re-write the
test data (so that it matches the data that a future TestManifestLoader is going to use).
With this method, updating the data will be a lot less tedious.
Differential Revision: https://phabricator.services.mozilla.com/D51278
--HG--
extra : moz-landing-system : lando
This patch adds GPU and CPU clock frequencies as well as Watts used to the metrics that are gathered into perfherder from mozpower.
Differential Revision: https://phabricator.services.mozilla.com/D50522
--HG--
extra : moz-landing-system : lando
Other places take care to handle this case, but not running the tooltool
script. Let's fix that.
Differential Revision: https://phabricator.services.mozilla.com/D51266
--HG--
extra : moz-landing-system : lando
This is needed to release a new mozlog with the PRECONDITION_FAILED
test and subtest status for use in web-platform-tests.
Update all in-tree dependencies on mozlog to >=5.0. These were found
with `hg grep 'mozlog.*[0-9]'`.
Only testing/web-platform/tests/tools/wptrunner/requirements.txt
remains on 4.2.0, and it will be updated in upstream wpt after mozlog
5.0 has been released.
Differential Revision: https://phabricator.services.mozilla.com/D50456
--HG--
extra : moz-landing-system : lando
Previously there was a somewhat strange setup where we had both TestResolver
and TestMetadata classes. Both had 'resolve_tests' function and the separation
of concerns between the two were not clear.
With this change, all of the logic that is related to manipulating and
resolving the loaded tests has been moved to the TestResolver class. Also, the
TestMetadata class has been renamed to TestLoader, and it is solely responsible
for loading the metadata (from the build backend).
Future commits will add other types of TestLoaders.
Differential Revision: https://phabricator.services.mozilla.com/D49768
--HG--
extra : moz-landing-system : lando
A minor cleanup. Re-write paths will now automatically be joined to
self.topobjdir.
Depends on D49766
Differential Revision: https://phabricator.services.mozilla.com/D49767
--HG--
extra : moz-landing-system : lando
Similar to the vcs change, the MozbuildObject already has a reader attribute
available. So we can re-use that instead of creating our own.
Depends on D49765
Differential Revision: https://phabricator.services.mozilla.com/D49766
--HG--
extra : moz-landing-system : lando
Encapsulates all the logic around generating and loading the build backend
metadata on the TestMetadata class. Previously the TestResolver would trigger
the generation if necessary, and TestMetadata would load it. Now both
generation and loading happens in TestMetadata.load_tests.
This change also adds some convenience properties to make it easier to query
the loaded data.
Differential Revision: https://phabricator.services.mozilla.com/D49765
--HG--
extra : moz-landing-system : lando
This prevents us from adding the puppeteer tests over and over again. It
follows the wpt example.
Differential Revision: https://phabricator.services.mozilla.com/D49790
--HG--
extra : moz-landing-system : lando
Since TestResolver is a subclass of MozbuildObject, there's no need to create
separate repository object. It already has one.
Depends on D49761
Differential Revision: https://phabricator.services.mozilla.com/D49764
--HG--
extra : moz-landing-system : lando