Closed Bug 1913477 Opened 3 months ago Closed 3 months ago

[wpt-sync] Sync PR 47640 - Update interpolation between calc-size() values to better preserve percentageness.

Categories

(Core :: CSS Parsing and Computation, task, P4)

task

Tracking

()

RESOLVED FIXED
131 Branch
Tracking Status
firefox131 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Attachments

(8 files)

Sync web-platform-tests PR 47640 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/47640
Details from upstream follow.

David Baron <dbaron@chromium.org> wrote:

Update interpolation between calc-size() values to better preserve percentageness.

This updates the code for interpolation of calc-size() values to match
recent spec changes that correspond to the latest discussions in
https://github.com/w3c/csswg-drafts/issues/10220 .

The idea of these changes is that, before we interpolate values with
different basis, we do stronger canonicalization of the basis (rather
than just un-nesting a basis that is a nested calc-size()). This means
that all \<calc-sum> bases with percentages have their canonical basis be
100% and all other \<calc-sum> bases have their canonical basis be any.
This means that a canonical basis is either a sizing keyword, 100%, or
any.

This stronger canonicalization code means we can remove a separate
substitution pass, since all of the necessary substitution was already
done during canonicalization.

This change also removes some extra checks in
InterpolableLength::CanMergeValues() since
CSSMathExpressionOperation::CreateArithmeticOperationAndSimplifyCalcSize()
also has those checks, and CanMergeValues already needs to call it.

The overall result of these changes should be:

  • better (but still imperfect) preservation of percentageness

  • a small set of cases that no longer interpolate (a calc-size() whose
    basis is a sizing keyword with another whose basis is a \<calc-sum>
    containing percentages)

  • following the spec's rules on always canonicalizing before
    interpolating rather than optimizing it away in some cases, given that
    it is observable (see
    wpt/css/css-values/calc-size/animation/calc-size-interpolation-expansion.html)

Bug: 313072
Change-Id: Ie302c0440b5645afe2b458cdb672d544a836b946
Reviewed-on: https://chromium-review.googlesource.com/5792344
WPT-Export-Revision: efad45eacd19bc6d59f788cace5f086534b48e53

Component: web-platform-tests → CSS Parsing and Computation
Product: Testing → Core
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/5b5e2137d01b [wpt PR 47640] - Update interpolation between calc-size() values to better preserve percentageness., a=testonly https://hg.mozilla.org/integration/autoland/rev/fd5fa428acd5 [wpt PR 47640] - Update wpt metadata, a=testonly
Attached file Notable wpt changes
# CI Results Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 2 tests and 10 subtests ## Status Summary ### Firefox `OK` : 2 `FAIL`: 1276 ### Chrome `OK` : 2 `PASS`: 1058 `FAIL`: 218 ### Safari `OK` : 2 `FAIL`: 1276 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=61fcf44322a6264f94310fc9e4bbee058f0c6c95) [GitHub PR Head](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=f58f6c5a272af12d0023abb810388d98581d18d1&label=pr_base) ## Details (See attachment for full changes)
Test result changes from PR not available.
Status: NEW → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → 131 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: