Bug 249282

Summary: REGRESSION(257672@main): [ Monterey+ ] Enabling OffscreenCanvas in workers broke 7 layout tests
Product: WebKit Reporter: Robert Jenner <jenner>
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, mattwoodrow, simon.fraser, webkit-bot-watchers-bugzilla, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Robert Jenner 2022-12-13 18:26:02 PST
The following 7 tests are constant text failures on Monterey+ 

imported/w3c/web-platform-tests/html/canvas/offscreen/manual/wide-gamut-canvas/2d.color.space.p3.convertToBlobp3.canvas.html
imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.p3.html
imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.p3.worker.html
imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.srgb.html
imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.srgb.worker.html
imported/w3c/web-platform-tests/webcodecs/videoFrame-createImageBitmap.any.worker.html
imported/w3c/web-platform-tests/webcodecs/videoFrame-drawImage.any.worker.html

HISTORY:
https://results.webkit.org/?suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fmanual%2Fwide-gamut-canvas%2F2d.color.space.p3.convertToBlobp3.canvas.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fwide-gamut-canvas%2F2d.color.space.p3.to.p3.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fwide-gamut-canvas%2F2d.color.space.p3.to.p3.worker.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fwide-gamut-canvas%2F2d.color.space.p3.to.srgb.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fcanvas%2Foffscreen%2Fwide-gamut-canvas%2F2d.color.space.p3.to.srgb.worker.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fwebcodecs%2Fvideo-encoder.https.any.worker.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fwebcodecs%2FvideoFrame-createImageBitmap.any.worker.html&test=imported%2Fw3c%2Fweb-platform-tests%2Fwebcodecs%2FvideoFrame-drawImage.any.worker.html


I verified the failures, and bisected to the 257672@main regression point. All of these tests were also modified and/or added at 257672@main.
Comment 1 Robert Jenner 2022-12-13 18:34:11 PST
The results database isn't loading very well so I'm not providing links. But here are the diffs from my local runs:


imported/w3c/web-platform-tests/html/canvas/offscreen/manual/wide-gamut-canvas/2d.color.space.p3.convertToBlobp3.canvas.html:

-FAIL test if toblob returns p3 data from p3 color space canvas Type error
+PASS test if toblob returns p3 data from p3 color space canvas



imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.p3.html:

 test getImageData with display-p3 and uint8 from display p3 uint8 canvas
 
 
-FAIL test getImageData with display-p3 and uint8 from display p3 uint8 canvas Type error
+PASS test getImageData with display-p3 and uint8 from display p3 uint8 canvas
 


imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.p3.worker.html:
 
-FAIL test getImageData with display-p3 and uint8 from display p3 uint8 canvas Type error
+FAIL test getImageData with display-p3 and uint8 from display p3 uint8 canvas Can't find variable: OffscreenCanvas



imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.srgb.html:

 test getImageData with srsb and uint8 from display p3 uint8 canvas
 
 
-FAIL test getImageData with srsb and uint8 from display p3 uint8 canvas Type error
+PASS test getImageData with srsb and uint8 from display p3 uint8 canvas


 
imported/w3c/web-platform-tests/html/canvas/offscreen/wide-gamut-canvas/2d.color.space.p3.to.srgb.worker.html:

-FAIL test getImageData with srsb and uint8 from display p3 uint8 canvas Type error
+FAIL test getImageData with srsb and uint8 from display p3 uint8 canvas Can't find variable: OffscreenCanvas



imported/w3c/web-platform-tests/webcodecs/videoFrame-createImageBitmap.any.worker.html:

-PASS ImageBitmap<->VideoFrame with canvas(48x36 srgb uint8).
-PASS ImageBitmap<->VideoFrame with canvas(480x360 srgb uint8).
-FAIL ImageBitmap<->VideoFrame with canvas(48x36 display-p3 uint8). Type error
-FAIL ImageBitmap<->VideoFrame with canvas(480x360 display-p3 uint8). Type error
-FAIL ImageBitmap<->VideoFrame with canvas(48x36 rec2020 uint8). Type error
-FAIL ImageBitmap<->VideoFrame with canvas(480x360 rec2020 uint8). Type error
+FAIL ImageBitmap<->VideoFrame with canvas(48x36 srgb uint8). Can't find variable: OffscreenCanvas
+FAIL ImageBitmap<->VideoFrame with canvas(480x360 srgb uint8). Can't find variable: OffscreenCanvas
+FAIL ImageBitmap<->VideoFrame with canvas(48x36 display-p3 uint8). Can't find variable: OffscreenCanvas
+FAIL ImageBitmap<->VideoFrame with canvas(480x360 display-p3 uint8). Can't find variable: OffscreenCanvas
+FAIL ImageBitmap<->VideoFrame with canvas(48x36 rec2020 uint8). Can't find variable: OffscreenCanvas
+FAIL ImageBitmap<->VideoFrame with canvas(480x360 rec2020 uint8). Can't find variable: OffscreenCanvas
 PASS createImageBitmap uses frame display size



imported/w3c/web-platform-tests/webcodecs/videoFrame-drawImage.any.worker.html:

@@ -1,10 +1,10 @@
 
-PASS drawImage(VideoFrame) with canvas(48x36 srgb uint8).
-PASS drawImage(VideoFrame) with canvas(480x360 srgb uint8).
-FAIL drawImage(VideoFrame) with canvas(48x36 display-p3 uint8). Type error
-FAIL drawImage(VideoFrame) with canvas(480x360 display-p3 uint8). Type error
-FAIL drawImage(VideoFrame) with canvas(48x36 rec2020 uint8). Type error
-PASS drawImage on a closed VideoFrame throws InvalidStateError.
-PASS drawImage of nested frame works properly
-PASS drawImage with display size != visible size
+FAIL drawImage(VideoFrame) with canvas(48x36 srgb uint8). Can't find variable: OffscreenCanvas
+FAIL drawImage(VideoFrame) with canvas(480x360 srgb uint8). Can't find variable: OffscreenCanvas
+FAIL drawImage(VideoFrame) with canvas(48x36 display-p3 uint8). Can't find variable: OffscreenCanvas
+FAIL drawImage(VideoFrame) with canvas(480x360 display-p3 uint8). Can't find variable: OffscreenCanvas
+FAIL drawImage(VideoFrame) with canvas(48x36 rec2020 uint8). Can't find variable: OffscreenCanvas
+FAIL drawImage on a closed VideoFrame throws InvalidStateError. Can't find variable: OffscreenCanvas
+FAIL drawImage of nested frame works properly Can't find variable: OffscreenCanvas
+FAIL drawImage with display size != visible size Can't find variable: OffscreenCanvas
Comment 2 Radar WebKit Bug Importer 2022-12-13 18:34:53 PST
<rdar://problem/103330985>
Comment 3 Robert Jenner 2022-12-13 18:36:42 PST
I'm going to ask Matt who introduced https://commits.webkit.org/257672@main if these tests just need Monterey and Ventura rebaselines.
Comment 4 Robert Jenner 2022-12-13 18:48:48 PST
Matt indicated this isn't a rebase, and it looks like OffscreenCanvas isn't being enabled. I will mark the expectations for these tests.
Comment 5 EWS 2022-12-13 18:59:12 PST
Committed 257822@main (12ed214ec1f4): <https://commits.webkit.org/257822@main>

Reviewed commits have been landed. Closing PR #7589 and removing active labels.