Automatic update from web-platform-tests
Use To<Dynamic> for rebuild root to make sure we don't crash.
We were able to SetNeedsReattachLayoutTree() on a Text node where none
of the ancestor elements had a LayoutObject and the Document had a <br>
as a documentElement. The reason is that LayoutView does not allow a
LayoutBr child which meant we recomputed styles for the whole subtree,
but no LayoutObjects were created. Setting the text data on the text
node would mark it for re-attachment (in case it didn't have a
LayoutText because it used to be a non-rendered white-space). If it was
in a display:none subtree we wouldn't have reached the text node during
recalc, but because of LayoutView rejecting the LayoutBr, we already had
ComputedStyle all the way.
Bug: 989827
Change-Id: I72ae371466e607baf4caffad9ed634beb2a66bf5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1731112
Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#683135}
--
wpt-commits: ec90c902eeb0612dbce30047ff51414c8b26d603
wpt-pr: 18232
Automatic update from web-platform-tests
Move ChromeAndroid to ExecutorWebDriver (#18186)
Fixes#16056
Docs changes:
* Remove instructions for special setups that are no longer needed.
* Document more existing limitations of the implementation.
--
wpt-commits: ab508a6ecf41df2acec4c09d2b516a550ce41fe9
wpt-pr: 18186
Automatic update from web-platform-tests
Update the expected test metadata format to incude known intermittent statuses
Currently, the `expected` field in the test metadata accepts only one status. This patch adds
the ability to include known intermittent statuses in this metadata.
The existing metadata format is:
```
[test]
[subtest]
expected: PASS
```
This new format, if there is a known intermittent status to record, will be:
```
[test]
[subtest]
expected: [PASS, FAIL]
```
The first status will always be the "expected" status. The following statuses in the list are
"known intermittent" statuses. The statuses are ordered based on `tree.result_values` counts
during `build_tree()`.
Tests have been added to test_update.py to account for the following circumstances:
- an existing metadata file with only one expecte status needs updating with a known intermittent
- a file with an existing known intermittent needs to be updated with an additional status
- an intermittent status is now the expected status, and the expected status is now intermittent
- a new metadata file needs to be created with a known intermittent status
testrunner.py has been updated to exclude tests with a `known_intermittent` status from the
`unexpected_count`.
A test has been added to test_expectedtree.py to ensure the `tree.result_values` is counting
correctly.
Differential Revision: https://phabricator.services.mozilla.com/D37729
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1558954
gecko-commit: fbc5881fd4b6c2d758ba46faf21e045e500f7676
gecko-integration-branch: central
gecko-reviewers: jgraham
--
Remove trailing whitespace
--
Mark all tests as failing on Python 3
--
wpt-commits: 0a82a1b98b191b6ccda29145a55610058f247526, 44c4bb1c694ce507923e5e1ca39534fbdce823d2, e1498d56d927641355db6cd09492489b0a918fc6
wpt-pr: 18230
Automatic update from web-platform-tests
Add stronger test for MathML in SVG foreignObject element. (#18227)
Existing tests only check whether a foreinObject with
requiredExtensions="http://www.w3.org/1998/Math/MathML" is displayed or
selected inside a switch. This commit adds a more advanced test that actually
verifies that some basic math layout happens.
--
wpt-commits: 5cc6d2d3262c32277c68d45993289660162693c3
wpt-pr: 18227
Automatic update from web-platform-tests
Give more content to foreign-container (#18209)
Chromium has behavior different from Firefox. For an empty span in
a div with padding the empty span is positioned at (0, 0). The same
effect is seen for MathML, so add some text content to force
an inline flow.
--
wpt-commits: dbf688e8d16b4483de532ceb29f7de12be12573e
wpt-pr: 18209
Automatic update from web-platform-tests
MathML displaystyle: Test display="inline" and attribute value cases. (#18220)
* MathML displaystyle: Test display="inline" and attribute value cases.
This introduces a new helper function to easily apply transforms to attribute
values and uses it to test different string cases for the displaystyle and
display attribute values. This also add new tests for a math with explicit
display="inline" and a displaystyle attribute and check case-insensitivity
of the display attribute in relations/html5-tree/display-1.html
--
wpt-commits: f63482b40c3a8964913e18b69e9223da65a37be0
wpt-pr: 18220
Automatic update from web-platform-tests
Remove requirement that inline XRWebGLLayers use XR compatible contexts
This was a recent change made to the WebXR spec.
Bug: 976070
Change-Id: Ibdf4e4d7648d14540280594d7079696223a8dc62
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728479
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
Cr-Commit-Position: refs/heads/master@{#683014}
--
wpt-commits: 64b2a5273b0212c67d678fe7b9a45a53c851c360
wpt-pr: 18222
Automatic update from web-platform-tests
Send XRInputSource.profiles data to blink
This gets attached to the XRInputSourceDescription mojo struct
which is sent from XR device processes to blink.
For WMR controllers, use:
["windows-mixed-reality", "touchpad-thumbstick-controller"]
Populating this array for other platforms such as Oculus and OpenVR
will come in later CL(s).
Bug: 979250
Change-Id: I06c6666c4c085f6578630c25059d07faff158bbd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1726903
Commit-Queue: Jacob DeWitt <jacde@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Cr-Commit-Position: refs/heads/master@{#683004}
--
wpt-commits: 586a328d27965889e2852242de909e331abb4364
wpt-pr: 18187
Automatic update from web-platform-tests
[wpt] Smarter discovery of Chrome binaries (#18221)
Previously, the default binary path for Chrome was hard-coded regardless
of the channel, making it cumbersome to test non-stable channels (in
addition to `--channel`, users had to specify `--binary`). With this
change, `./wpt run` tries to find the channel-specific binary in lieu of
the `--binary` argument:
* On Linux, find google-chrome-{stable,beta,unstable} in PATH.
* On Mac, find "Google Chrome{, Canary}.app".
(Compatible with the official Linux and macOS packages)
This change does not affect existing CI setups, because we always
specify `--binary` on CI.
Also update the doc to reflect the change.
--
wpt-commits: 9dfe14e5f7aff39848311f95223427ecebcb27a2
wpt-pr: 18221
Automatic update from web-platform-tests
Remove the compositionDisabled XRWebGLLayer creation flag
The WebXR spec now states that this value is implied based on the mode of the
session the layer was created with.
Bug: 987352
Change-Id: I5f5999822a3504fbc79934ded29310074c454680
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1729799
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
Cr-Commit-Position: refs/heads/master@{#682938}
--
wpt-commits: 7597efa8249acb28734c5ee4773ee7cce83034e5
wpt-pr: 18219
Automatic update from web-platform-tests
[LayoutNG] Discard cache hit result if marked for layout.
(continued from (abandoned) CL:1719269)
During relayout, when we get a cache hit for a node, we still
recalculate overflow (why?). This may cause scrollbars to appear or
disappear, which will mark for layout. If this happens, we need to
discard the cached result and perform regular layout instead.
There *may* be legitimate reasons for adding or removing scrollbars on
a node that doesn't need relayout (although I cannot think of any), but
in this case (the test case), we gain a scrollbar because of some
amazing code in LayoutBlock::ComputeLayoutOverflow(), which adds 1px
hardcodedly, to the overflow rectangle width.
Bug: 919415
Change-Id: Icd49db76065f8ac50ff3616b97c0d05ca0e2b348
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728562
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#682936}
--
wpt-commits: ac3f2f49d5031ad0ab4c168ea39ff00e15aa92af
wpt-pr: 18202
Automatic update from web-platform-tests
Add a promise_test sequencing clarification (#17924)
* Add a promise_test sequencing clarification
I got bitten by a nasty race condition where a failed `promise_rejects` caused teardown logic to run after the next test had already started, interfering with the next test's state. Since this was unexpected, here's a proposed addition to the documentation to make this clearer. Let me know if I'm misunderstanding how this works, or if you think this should be changed in promise_test instead.
(For context, see https://github.com/web-platform-tests/wpt/pull/17898 which contains a fix to a test helper affected by this.)
* Delete sentence as suggested, s/needed/necessary/
* Re-wrap paragraph
* Fix "add_cleanup" link
The code font quote overrode the intended linking
* Add jugglinmike@'s proposed clarification
* Remove trailing whitespace
--
wpt-commits: 40d421b3709bdf2d354df9d1d0d33102cad7804b
wpt-pr: 17924
Automatic update from web-platform-tests
Add --full flag for wpt-update for updating with a full set of results
This has different behaviour from the regular update in a couple of
ways:
* It doesn't try to preserve existing conditionals that didn't match
anything in the results
* It removes subtests that are no longer present in the data set.
As such this is an appropriate mode to use when you have a try push
covering all the possible platforms, or when you are confident there
are no per-platform differences.
As part of this work, the code for updating the conditionals was
refactored to be clearer, and a bunch of tests were added to ensure
that it continues to work correctly.
Differential Revision: https://phabricator.services.mozilla.com/D34735
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1545143
gecko-commit: 3bce3ca779f0084be8cba237f00502b1201daa95
gecko-integration-branch: central
gecko-reviewers: maja_zf
--
Fixup test failures
--
Forward port part of next change to fix tests.
--
wpt-commits: 6552f34bcd296b27768a0497aaba4f3b838fb64c, 19af2ebf71f6ec463893bfaf3ab9d71670b1926a, 43db14bf7dd3e3dfaad9a16b9e4da78d1c1fc49c
wpt-pr: 18211
Automatic update from web-platform-tests
Clear interval when a new syncbase is received
When a receiving a new interval from a syncbase it
is meant to take precedence, we now clear the old
interval so it gets updated with the new time. This
solves some sorting bugs related to syncbases.
A new test has been added "onhover_syncbases.html" which
tests repeted "mouseover" and "mouseout" events.
Bug: 740541
Change-Id: I7a8e3691593a537c4dbc1da3bdbbe09eaf30e500
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1718704
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Commit-Queue: Stephen Chenney <schenney@chromium.org>
Auto-Submit: Edvard Thörnros <edvardt@opera.com>
Cr-Commit-Position: refs/heads/master@{#682841}
--
wpt-commits: 91e90a3a5fbd8161c3c4d9637466c23895752db9
wpt-pr: 18205
Automatic update from web-platform-tests
Make the metadata update generate more compact conditionals
Previously the wpt metadata update code generated rather conservative
conditionals, simply inclusing every possible condition unless all the
tests had the same outcome or similar. This isn't very nice to read
and makes the metadata rather fragile to changes in the configuration.
A better approach is to build a decision tree from the metadata,
choosing the properties to split on using a simple greedy algorithm,
as follows:
* Given a set of test results, associated run_info_properties and
properties that we want to use, partition the test results by each
property we are using in turn.
* For each partition, generate a score for how uniform the results
are in each subset after partition. The score should be good if the
partition results in small numbers of groups with mostly uniform
test results and bad if it results in a large number of groups or
groups with a mix of test results. For this we adopt a metric based
on the Shannon entropy.
* Chose the partition resulting in the best score, and use that as a
condition in the tree.
* Recursively reapply the algorithm to each group that's been
created.
Differential Revision: https://phabricator.services.mozilla.com/D34734
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1469893
gecko-commit: 1fc3a0502508a5043886f9b7de020d82fec674d9
gecko-integration-branch: central
gecko-reviewers: maja_zf
--
Fix test failures
--
wpt-commits: 0ad9ee38976ffc67cee2ebd84de19f870aeffa6b, 2c79f12a5e6a10ba1d4d74dd3753cf97ef61d5c8
wpt-pr: 18204
Automatic update from web-platform-tests
Do correct comparison for rtl tests (#18201)
Previously the comparison was not comparing padding with no padding
specified in rtl case. Fix this by splitting out the direction part.
--
wpt-commits: 1858b9082aa757fc91d3e7030b885ac108f320cf
wpt-pr: 18201
It was added in Firefox 44 and isn't checked
anywhere in the codebase, so we can safely
remove it.
Differential Revision: https://phabricator.services.mozilla.com/D40545
--HG--
extra : moz-landing-system : lando
There are now only two left:
- one for the OSX 10.11 SDK
- one for Visual Studio 2017
Differential Revision: https://phabricator.services.mozilla.com/D40751
MANUAL PUSH: avoid closing autoland while all docker images and
toolchains are rebuilt.
--HG--
rename : browser/config/tooltool-manifests/win32/build-clang-cl.manifest => browser/config/tooltool-manifests/win64/vs2017.manifest
Now that all GCC and related source tarballs extract to paths
independent of their version number, the scripts are all very
look-alike, so they can be consolidated.
Differential Revision: https://phabricator.services.mozilla.com/D40749
Bug 1479533 was proposing to add a similar functionality, but this
iteration avoids actually unpacking anything, and ensures
reproducibility by relying on the reproducible bits from the original
archives: file ordering, flags, etc. (since they are checksummed, those
are never going to change for a given archive).
Another notable difference is that this applies the repack on the fetch
task itself, rather than create a separate task to apply the repack. The
latter has advantages, in that it allows to change the repacking without
redownloading the original file from a third-party server, but in
practice, most changes to the repacking would trigger the download tasks
anyways.
This patch only takes care of changing the archive type (zip->tar), and
the compression type (anything->zstandard).
Differential Revision: https://phabricator.services.mozilla.com/D40740
This also allows toolchain tasks to use aliases via fetches, which they
currently aren't allowed via use_toolchain. There are more toolchains
now than there were when the restriction was added, and it might be
useful to be able to use aliases. The flip side is that there are some
risks involved with aliases, which is why the restriction was there in
the first place. Let's see how things play out.
Differential Revision: https://phabricator.services.mozilla.com/D40713
What this means is that the sources for clang/llvm are downloaded
separately from the toolchain build (which also means we finally only
download a given version of clang once for all platforms).
In turn, this means the build-clang.py script needs to start with an
existing llvm-project tree, and we choose to make build-clang.py expect
that it's run from the llvm-project root directory.
This also means we don't need to download git for the windows toolchain
task.
Differential Revision: https://phabricator.services.mozilla.com/D40402
The new StaticLocalAutoPtr smart pointer has a trivial destructor, so we will
either properly clean up this data or leak it on process shutdown. Either way,
we will not destroy it in a way that the underlying type does not support.
Differential Revision: https://phabricator.services.mozilla.com/D40842
--HG--
extra : moz-landing-system : lando