[wpt-sync] Sync PR 33285 - Update MathML Operator dictionary
Categories
(Core :: MathML, task, P4)
Tracking
()
Tracking | Status | |
---|---|---|
firefox100 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 33285 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/33285
Details from upstream follow.
Frédéric Wang <fwang@igalia.com> wrote:
Update MathML Operator dictionary
Support for the operator dictionary landed in september 2020 [1] [2].
However, after that initial support more changes were performed on the
specification side by the MathML CG. Now that the dictionary is stable
enough, this CL updates the implementation and tests accordingly.
We take the opportunity that operators.woff is regenerated to fix two
issues: make glyph indices of stretchy parts more stable and ensure
that the font contains glyphs for special combining characters [1].
open_type_math_support_test.cc/stretchy_operator_shaper_test.cc:
Access the glyph indices from their code points in the PUA.mathml_operator_element.cc/mathml_operator_dictionary.h: A new
"Force Default" is introduced for the two operators having both an
infix form with the default values and a different form, so they
don't perform step 4 of [4]. Switch categories K and L.mathml_operator_dictionary.cc: Update operators_2_ascii_chars,
and compact_dictionary from the spec. Also add special case for
the "Force Default" category. Switch categories K and L.mathml_operator_dictionary_test.cc: Regenerate content of
categories and switch categories K and L.character_names.h: Add new names for the operators in the
"Force Default" category.operator-dictionary.json: Regenerate operator dictionary.
operator-dictionary.py/mathfont.py: Store glyphs v0, h0, v1, h1, v2,
h2, v3, h3 at the beginning of the PUA so they can be accessed by
code point values. Ensure existence of glyphs for special combining
characters.misc.py: Use the official repository for unicode.xml rather than the
obsolete development branch for Unicode 14.operator-dictionary-combining-expected.txt: Removed since the test
pass now that glyphs are available for combining characters.Bug: 6606, 1082250, 1057596
Change-Id: I106b1551a910d1292df71b954981e0465ea222c1Reviewed-on: https://chromium-review.googlesource.com/3419439
WPT-Export-Revision: 1f5bb7a8b56445c80576636486397d558961f442
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 1•3 years ago
|
||
Assignee | ||
Comment 2•3 years ago
|
||
CI Results
Ran 0 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 6 tests and 5 subtests
Status Summary
Firefox
OK : 4
PASS: 4
FAIL: 14
Chrome
OK : 4
PASS: 18
Safari
OK : 4
PASS: 12
FAIL: 6
Links
Details
Firefox-only Failures
/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html
font-relative minsize refers to the core operator: FAIL
font-relative maxsize refers to the core operator: FAIL
/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html
minsize < 0 is treated as 0: FAIL
maxsize < minsize is treated as maxsize = minsize: FAIL
minsize < maxsize < 0 is treated as maxsize = minsize = 0: FAIL
target size = 0 is treated as Tascent = Tdescent = minsize/2: FAIL
default minsize/maxsize percentages: FAIL
/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html
stretchy: FAIL
New Tests That Don't Pass
/mathml/presentation-markup/operators/mo-font-relative-lengths-001.html
font-relative minsize refers to the core operator: FAIL (Chrome: PASS, Safari: PASS)
font-relative maxsize refers to the core operator: FAIL (Chrome: PASS, Safari: PASS)
/mathml/presentation-markup/operators/mo-minsize-maxsize-001.html
minsize < 0 is treated as 0: FAIL (Chrome: PASS, Safari: PASS)
maxsize < minsize is treated as maxsize = minsize: FAIL (Chrome: PASS, Safari: PASS)
minsize < maxsize < 0 is treated as maxsize = minsize = 0: FAIL (Chrome: PASS, Safari: PASS)
target size = 0 is treated as Tascent = Tdescent = minsize/2: FAIL (Chrome: PASS, Safari: PASS)
minsize/maxsize percentages are relative to the target size: FAIL (Chrome: PASS, Safari: FAIL)
default minsize/maxsize percentages: FAIL (Chrome: PASS, Safari: PASS)
/mathml/presentation-markup/operators/mo-stretch-properties-001.html
Stretchy vertical line: FAIL (Chrome: PASS, Safari: FAIL)
/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001.html
minsize: FAIL (Chrome: PASS, Safari: FAIL)
maxsize: FAIL (Chrome: PASS, Safari: FAIL)
largeop: FAIL (Chrome: PASS, Safari: FAIL)
symmetric: FAIL (Chrome: PASS, Safari: FAIL)
stretchy: FAIL (Chrome: PASS, Safari: PASS)
Comment 4•3 years ago
|
||
bugherder |
Description
•