Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9a175a3150a000b32e5f2a5d60fbf4fb728e310c
      
https://github.com/WebKit/WebKit/commit/9a175a3150a000b32e5f2a5d60fbf4fb728e310c
  Author: Ahmad Saleem <[email protected]>
  Date:   2026-05-11 (Mon, 11 May 2026)

  Changed paths:
    M LayoutTests/TestExpectations
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-largeop-004-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-largeop-006-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-001-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-002-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-003-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-004-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-005-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-006-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-001-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-002-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-003-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-004-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-005-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-006-expected.txt
    M LayoutTests/mathml/presentation/non-bmp-operators-spacing-expected.html
    M LayoutTests/mathml/presentation/non-bmp-operators-spacing.html
    M LayoutTests/mathml/presentation/non-bmp-operators-stretching-expected.html
    M LayoutTests/mathml/presentation/non-bmp-operators-stretching.html
    R 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004-expected.txt
    R 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006-expected.txt
    M LayoutTests/platform/glib/mathml/presentation/bug159513-expected.txt
    M Source/WebCore/mathml/MathMLOperatorDictionary.cpp

  Log Message:
  -----------
  [MathML] Update operator dictionary to fix WPT stretchy, symmetric, largeop, 
and movablelimits test failures
https://bugs.webkit.org/show_bug.cgi?id=308410
rdar://170901728

Reviewed by Frédéric Wang Nélar.

This patch aligns WebKit with Gecko / Firefox and Blink / Chromium.

Update MathMLOperatorDictionary.cpp to align with the W3C 
operator-dictionary.json
from web-platform-tests.

Changes:

  - Add Stretchy flag to operators missing it (arrows, triangles, etc.)
  - Add Symmetric flag to U+2980 (TRIPLE VERTICAL BAR DELIMITER)
  - Add new stretchy operators in the 0x2B range (triangle-headed arrows)
  - Add missing prefix forms with LargeOp/MovableLimits for U+2A1D (JOIN)
    and U+2A1E (LARGE LEFT TRIANGLE OPERATOR)
  - Add new Prefix/Postfix fence entries for U+2999, U+29D8-U+29DB
  - Add Postfix stretchy forms for U+1EEF0 / U+1EEF1
  - Fix entry ordering for U+5E (^) and U+5F (_) where Infix must precede
    Postfix for binary search to work correctly
  - Update dictionarySize to 1151 to match actual entry count

NOTE: Adding the Symmetric flag to U+2016 (DOUBLE VERTICAL LINE) is deferred.
It would make symmetric-001/006 chunk 1 pass for \xe2\x80\x96, but regresses
stretchy-mover-3 due to a WebKit-specific issue where an <mover> base with
stretchy=\"true\" inappropriately extends to symmetric extent around the math
axis. So this needs more investigation and follow-up fix.

* Source/WebCore/mathml/MathMLOperatorDictionary.cpp:

> Progressions:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-largeop-004-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-largeop-006-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-001-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-002-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-003-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-004-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-005-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-stretchy-006-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-002-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-003-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-004-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-005-expected.txt:

> Partial Progressions (chunk 1 for \xe2\x80\x96 still fails pending U+2016 
> Symmetric follow-up):
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-001-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-symmetric-006-expected.txt:

> Rebaseline:
* LayoutTests/platform/glib/mathml/presentation/bug159513-expected.txt: 
U+5E/U+5F Postfix now resolves correctly after reorder, shifting positions 
slightly.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-004-expected.txt:
 Removed.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/operator-dictionary-movablelimits-006-expected.txt:
 Removed.

> Updated:
- non-bmp-operators-spacing-expected.html -- Postfix U+1EEF0/U+1EEF1 now
  expect lspace=\"0em\" rspace=\"0em\" (matching the new dictionary entries)
  instead of default thickmathspace.
- non-bmp-operators-stretching-expected.html -- Postfix U+1EEF0/U+1EEF1 now
  expect stretchy=\"true\" lspace=\"0em\" rspace=\"0em\" instead of 
stretchy=\"false\"
  with thickmathspace.

* LayoutTests/mathml/presentation/non-bmp-operators-spacing-expected.html:
* LayoutTests/mathml/presentation/non-bmp-operators-spacing.html:
* LayoutTests/mathml/presentation/non-bmp-operators-stretching-expected.html:
* LayoutTests/mathml/presentation/non-bmp-operators-stretching.html:

> Test Expectation:
* LayoutTests/TestExpectations: operator-dictionary-arabic-002.html: fails in 
all browsers (Firefox, Chrome, and WebKit), marked ImageOnlyFailure pending 
further investigation.

Canonical link: https://commits.webkit.org/312993@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to