Automatic update from web-platform-tests
[css-nesting] Keep parsing after {}-block for rules with invalid selector
When encountering a rule with an invalid selector, we currently recover
by consuming until the next semicolon, which isn't correct. Instead,
we should simply do nothing, and keep parsing right after the {}-block.
The spec used to be less clear about this, but at least at the time
of writing, nothing invokes the skip-until-semicolon behavior except
for rule preludes that look like custom properties.
This CL fixes this issue by adding a `invalid_rule_error` out-param
to ConsumeStyleRule. There are two other things that are worth noting:
- The "consume a qualified rule" algorithm in the spec mentions
a `nested` flag which modifies its behavior. This flag is
actually equivalent to `semicolon_aborts_nested_selector`
in our parser, so I've renamed this.
- During handling of `custom_property_ambiguity`, nested=false case,
we're supposed to consume a block, and do nothing.
This can't be tested using CSSParserImpl's public API, since
failing to consume a block there would just cause the next attempt
at parsing a rule to consume an empty prelude (then the block).
But I don't think we should rely on that, hence I'm using unit
tests to cover that line.
[1] https://drafts.csswg.org/css-syntax/#consume-qualified-rule
Test: external/wpt/css/css-syntax/custom-property-rule-ambiguity.html
Change-Id: I04dc0c3745be5eafe792fd6c40971545274d9794
Fixed: 343979378
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5881815
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Reviewed-by: Steinar H Gunderson <sesse@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1359288}
--
wpt-commits: 8ae822f00cd69c0c5a222e6e797391963dc22c78
wpt-pr: 48322
Automatic update from web-platform-tests
Refactor selectlist tests [3/4]
This is a set of refactors that:
1. re-points existing WPTs and web_tests from <selectlist> to
<select style="appearance:base".
2. renames tests from `-selectlist-` to `-select-`
These are done in batches, to make the review task easier. One CL
will re-point tests (without renaming them) and the next will do
the rename.
These are all in service of removing the <selectlist> prototype.
Bug: 335458492
Change-Id: Iac8e531e0c3354e2637350218e6e4e43002f6747
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5857251
Commit-Queue: Mason Freed <masonf@chromium.org>
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1359131}
--
wpt-commits: b95e357e097f121b70dd853b4897302a46cca67c
wpt-pr: 48291
Automatic update from web-platform-tests
Refactor selectlist tests [1/4]
This is a set of refactors that:
1. re-points existing WPTs and web_tests from <selectlist> to
<select style="appearance:base".
2. renames tests from `-selectlist-` to `-select-`
These are done in batches, to make the review task easier. One CL
will re-point tests (without renaming them) and the next will do
the rename.
These are all in service of removing the <selectlist> prototype.
Bug: 335458492
Change-Id: Ie8dfdc37f1c3a6323d526ca1979d315c111d93f5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5857249
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Commit-Queue: Mason Freed <masonf@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1359127}
--
wpt-commits: 5657c2c31ee22afb0f59da2ae2bb9347737f97a0
wpt-pr: 48212
Automatic update from web-platform-tests
DOM: Implement abortable async iterable Observables
The IteratorRecord#return() function exists as an optional method that
sync and async iterator records can supply [1] [2]. They allow for the
language, or any consumer of an iterable, to signal to the iterable that
the consumer will stop consuming values prematurely (i.e., before
exhaustion).
This method must be invoked when the consumer aborts its subscription
to an Observable that was derived from an iterable. The abort reason is
supplied to the `return()` iterator function for completeness. This CL:
1. Adds tests for sync & async iterables
2. Implements this for async iterables
A follow-up CL will implement this for sync iterables.
The semantics are specified in
https://github.com/WICG/observable/pull/160.
[1]:
https://tc39.es/ecma262/#table-iterator-interface-optional-properties
[2]: https://tc39.es/ecma262/#table-async-iterator-optional
Bug: 40282760
Change-Id: Ie1091b24b233afecdec572feadc129bcc8a2d4d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5854985
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Dominic Farolino <dom@chromium.org>
Reviewed-by: Nate Chapin <japhet@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1359083}
--
wpt-commits: 83154d0455e572de16e84ebee72f56df73d2ceb3
wpt-pr: 48280
Automatic update from web-platform-tests
Implement failure tests cases for the EC import operation (#48243)
This PR implements new tests for the import operation of the
ECDH and ECDSA algorithms, defining failure test cases.
Additionally, it applies some refactoring to the code
already used for OKP keys.
--
wpt-commits: 4f0be15407bc43827edcdda8bc1b30a3875c9447
wpt-pr: 48243
Automatic update from web-platform-tests
Speculativly test :has-slotted() (#47587)
* Speculativly test :has-slotted(), see: https://github.com/w3c/csswg-drafts/pull/10586
* Speculatively test :has-slotted() flattened through multiple slot elements
* Lint
--
wpt-commits: 43f3ba0919b8e4adf07bc9f0620b14d113a1abb6
wpt-pr: 47587
Automatic update from web-platform-tests
[Interop] Deflake pointerevent_click_during_capture.html
The test has been flaking for the auxclick action where the
middle-click drag is probably causing autoscroll in some platforms.
This CL changes the action to use the right mouse button instead, after
suppressing any context menu invocation.
Bug: 40851596
Change-Id: I4e36b3aceb75d5edcbd0c9599ada9f7af9ef7b78
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5873347
Commit-Queue: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: Kevin Ellis <kevers@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358971}
--
wpt-commits: 64995b38727cb66354e204a0bc3ecf68ce91c815
wpt-pr: 48311
Automatic update from web-platform-tests
Test reference target usage via the options argument of attachShadow() (#47914)
* Test reference target usage via the options argument of attachShadow()
* Code review
* Lint
* Code review
* lint
* Uncomment tests
--
wpt-commits: 3f9ec610f6b2083ebad38b650a319fd8b7a7358e
wpt-pr: 47914
Automatic update from web-platform-tests
[anchor] Implement tree-scoped 'all' for anchor-scope
This introduces tree-scoped keywords (not custom idents) for the first
time. To not waste memory, we keep CSSIdentifierValue as a tree-scope-
agnostic value, and instead use the new CSSScopedKeywordValue whenever
a tree-scoped keyword is needed.
Fixed: 368034380
Change-Id: Ib64d1acaf660e2ce6a1357be3cbe8a62e3655978
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5872877
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358734}
--
wpt-commits: 711b84c60a9a83fc7d5cfc587eba9a8a80f779fb
wpt-pr: 48304
Automatic update from web-platform-tests
[wdspec] Add cached stylesheet network tests @import and duplicated stylesheets
The initial Firefox support for network events for cached stylesheets fails in 2 known cases:
- when the stylesheet is loaded via @import (no event emitted)
- when the stylesheet is duplicated in several link tags (too many events emitted)
New tests are added to cover those use cases, which should all be fixed by Bug 1916960 on Firefox side.
All the added tests already pass on Chrome canary.
Differential Revision: https://phabricator.services.mozilla.com/D221685
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1917805
gecko-commit: 26bbaffc60227b5aa78392429c957e8598aaf582
gecko-reviewers: webdriver-reviewers, arai, whimboo
--
Bug 1917805 - [wdspec] Fix order of requests in duplicate cached stylesheet tests
--
wpt-commits: 208ae71fc119cf1fa3bd21e814cee4af70e2b2ab, cbf917ca5b9fbf50d401d10911ab9511a72354c5
wpt-pr: 48275
Automatic update from web-platform-tests
scaleResolutionDownTo WPTs: Add simulcast and invalid resolution tests.
Simulcast was the last major piece of testing missing. With this CL we
should be good to go for shipping this API in a separate CL.
In addition to the new tests, this CL also tweaks some resolutions used
by other tests to avoid odd resolutions. Some encoder implementations
have resolutions alignments (e.g. 15p would become 16p). While not a
problem on Chrome which uses VP8 + libvpx by default, I predict this
would become a problem when the WPTs run on Safari having H264 by
default which would likely trigger resolution alignments so it's best
to use even resolutions when we have no reason not to.
Bug: chromium:363544347
Change-Id: Id1dba2968f3a0ad3e3206d15b117fdd18643ff41
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5878075
Reviewed-by: Harald Alvestrand <hta@chromium.org>
Commit-Queue: Henrik Boström <hbos@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358709}
--
wpt-commits: ce1c71eba0b23c44adc6ccca8ed6ce2d80deb175
wpt-pr: 48286
Automatic update from web-platform-tests
View transitions layered capture
Instead of baking tree-effects into view transition snapshots,
render the snapshot without these effects and add them as CSS to the
::view-transition-group pseudo-element.
This is done by changing the effect order in PaintPropertyTreeBuilder, so that these effects are ancestors of the capture effect. In that way
the effects are not applied inside the capture.
Also had to modify draw_property_utils, to ensure some of the surface
computations don't assume that the view-transition capture would later
be painted into an effect surface.
See design document with detailed conversation and alternatives:
https://docs.google.com/document/d/1jSkIqqlrI4rzZ34cTWC-6TB81cspvHxTcpBD6nDCbE4/edit?tab=t.0#heading=h.tf5nf0fynnc2
Impacted CSS properties:
- opacity
- mask
- clip-path
- filter
The following properties are also affected, will need a follow-up patch to finish this:
- clip
- border-radius (when clipping overflow). This is not entirely set up yet, and will follow up.
Bug: 347947051
Change-Id: I8f24adf0c2be89ff673f111f099eac065fd4bf7f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5789282
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: Noam Rosenthal <nrosenthal@chromium.org>
Reviewed-by: Vladimir Levin <vmpstr@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358591}
--
wpt-commits: 8e164c249d2b93a4234a2710a5e2cc5a16fab499
wpt-pr: 48297
Automatic update from web-platform-tests
webnn: Build infrastructure to support float16 data type
Original design is to serialize all operand to TFLite tensor in a
loop before serializing operations, but this approach is not
suitable for float16 model because some operations (concat, cast and
reshape) support float16 input data type, other operations don't
support float16, the operation kind isn't known when serializing
operand.
The current design is to serialize the input and output operand of
operation while serializing the operation at the same time. For input
operand, insert a TFLite dequantize operator to convert fp16 to fp32
for graph input, constant and intermediate operand if the current
operation doesn't support float16 inference. For output operand,
insert a TFLite cast operator to convert fp32 to fp16 if the operand is
graph output and the current operation doesn't support float16
inference.
Bug: 339654398
Change-Id: Icd03e7a94874bbb1bf915a7485509badf2e59026
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5807389
Reviewed-by: ningxin hu <ningxin.hu@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Commit-Queue: Junwei Fu <junwei.fu@intel.com>
Cr-Commit-Position: refs/heads/main@{#1358484}
--
wpt-commits: 1eb635595956ce40fcc831c399e626e32efd55dc
wpt-pr: 48287
Automatic update from web-platform-tests
[ReferenceTarget] Ensure setting property does invalidation, add tests
Add tree dump tests for ARIA attributes affected by reference
target that can't yet be tested in WPT.
Add WPT validating that ARIA label updates upon DOM mutations and
reference target changes.
Note that aria-owns coverage is omitted since we plan to exclude
it from reference target.
AX-Relnotes: n/a.
Bug: 346835896,353748711
Change-Id: I89f9e0c81d808ac9f1d20035660963d1d09a00aa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5739315
Commit-Queue: Dan Clark <daniec@microsoft.com>
Reviewed-by: Joey Arhar <jarhar@chromium.org>
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358498}
--
wpt-commits: 486ed4dedf8180376126904f8312b0d91b2fc790
wpt-pr: 48299
Automatic update from web-platform-tests
Encoding: impact of GB18030-2022 on GBK
See https://github.com/whatwg/encoding/pull/336 for details.
--
wpt-commits: 1ac8deee082ecfb5d3b6f9c56cf9d1688a2fc218
wpt-pr: 48240
Automatic update from web-platform-tests
Convert compute_pressure_basic web tests to test_driver
The purpose of this change is start using WebDriver. WebDriver commands
for Compute Pressure are defined in
https://www.w3.org/TR/compute-pressure/#automation
Dedicated workers need to manipulate virtual pressure sources, but
testdriver calls can only be made in the embedded window, so the
existing solution of having '.any.js' files with `META:
global=window,dedicatedworker` does not work anymore. The solution is
to use message passing so that workers make the embedder window invoke
the virtual pressure source calls and use WPT's variants concept to run
the same test under multiple configurations. Due to this limitation
'.any.js' files needs to be converted to '.window.js'. README.md has
been updated to include a detailed guide for creating tests.
WebDriver endpoints and virtual pressure sources work in Window and
Dedicated Worker scopes, but not shared worker ones: we store virtual
pressure source information in WebContentsUserData, which does not
integrate well with shared workers.
Bug: 347031400
Change-Id: I3cb482c0a689e84012735acd6bc9d33981a7d2f9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5873130
Reviewed-by: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com>
Commit-Queue: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Auto-Submit: Juha J Vainio <juha.j.vainio@intel.com>
Cr-Commit-Position: refs/heads/main@{#1358424}
--
wpt-commits: 5a2cfec4558912fd7896472593d420054ae967ff
wpt-pr: 48298
Automatic update from web-platform-tests
FSA: Add cleanup for WPT directory_tests
Currently, directory_tests cleanup before hand to be resilient against
other tests not cleaning up properly. But to be more courteous to other
tests, this CL adds cleanup for after the test as well.
Bug: 346991169
Change-Id: Iff4938926e31691aa3417177fe058a64e46eec0d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5871483
Reviewed-by: Christine Hollingsworth <christinesm@chromium.org>
Commit-Queue: Nathan Memmott <memmott@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358394}
--
wpt-commits: 7e330ae3b8518ca373ef7071310c62e7ac1a6918
wpt-pr: 48296
Automatic update from web-platform-tests
Reorganize CSS cascading for higher shadow DOM scopes.
This reorganizes the CSS cascading for shadow DOM scopes above the
element's scope so that we do everything one scope at a time, rather
than dealing separately with UA shadow pseudo element styles and
::part() styles. I'm only aware of one case where this changes
currently-exposed behavior (the cascading of :host::part() selectors
relative to other selectors in the same scope), but it also changes the
implementation to be closer to the way the specifications describe
cascading so that it will extend better to additional features in the
future.
This changes the bucketing approach in RuleSet for a shadow
pseudo-element after ::part() by using the bucket for the innermost
pseudo-element rather than the part bucket. (We should perhaps have
similar changes for ::slotted() as well, but this does not make those.)
These changes are behind the (status:stable) CSSCascadeCorrectScope
flag, in case we need to disable them. Supporting this flag involves a
bit of code duplication: while MatchHigherScopeRules and
MatchPseudoPartRules probably could have been the same function, the
number and complexity of flag conditions probably would have made them
unreadable, so it seemed better to separate them.
This also fixes (without a flag) an interaction in
::slotted()::picker(select) by checking FollowsSlotted as for other
pseudo-elements. (::picker(select) has not yet shipped.) However, this
doesn't actually fix a test of this interaction,
https://crbug.com/366415131 is to follow up on this.
This also (again, without a flag) makes two changes to the bucketing
optimizations in RuleSet for unshipped features:
* bucket ::details-content, which was not previously done
* don't skip bucketing for ::picker(X) where X is not select; instead
rely on matching to fail later
Fixed: 1479329
Bug: 1469418, 356158098, 366415131
Change-Id: I148f8240dbaa20e33bb455c8b65732881767ca3e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5851273
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Auto-Submit: David Baron <dbaron@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358283}
--
wpt-commits: 9310d59399827c437fdaf0d05683cbe6da87fce1
wpt-pr: 48290
Automatic update from web-platform-tests
FLEDGE: WPT verification of B&A component auctions...
...and also various bid fields that are observable from them at
top-level auction level.
Change-Id: I5ad605a8c9c21563f97dbb8155d9805205f73f80
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5872540
Reviewed-by: Russ Hamilton <behamilton@google.com>
Commit-Queue: Maks Orlovich <morlovich@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1358208}
--
wpt-commits: 44e082748ea002d6c8549e8ea282697a2e9b3b5a
wpt-pr: 48289