Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` #25752

Merged

Conversation

@mmatyas
Copy link
Contributor

mmatyas commented Feb 13, 2020

Adds support for using the WebGL2 enums MAX_COLOR_ATTACHMENTS and MAX_DRAW_BUFFERS with GetParameter.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

cc @jdm @zakorgy


  • ./mach build -d does not report any errors
  • ./mach test-tidy does not report any errors
  • There are tests for these changes
@highfive
Copy link

highfive commented Feb 13, 2020

Heads up! This PR modifies the following files:

  • @asajeffrey: components/script/dom/webgl2renderingcontext.rs
  • @jgraham: tests/wpt/webgl/meta/conformance2/renderbuffers/framebuffer-test.html.ini, tests/wpt/webgl/meta/conformance2/rendering/draw-buffers.html.ini, tests/wpt/webgl/meta/conformance2/state/gl-object-get-calls.html.ini
  • @KiChjang: components/script/dom/webgl2renderingcontext.rs
@jdm
Copy link
Member

jdm commented Feb 13, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Feb 13, 2020

📌 Commit b4f373d has been approved by jdm

@highfive highfive assigned jdm and unassigned asajeffrey Feb 13, 2020
@bors-servo
Copy link
Contributor

bors-servo commented Feb 14, 2020

Testing commit b4f373d with merge 70a0a85...

bors-servo added a commit that referenced this pull request Feb 14, 2020
…=jdm

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS`

Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Feb 14, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Feb 14, 2020

1 unexpected results that are NOT known-intermittents:
  â–¶ ERROR [expected TIMEOUT] /_webgl/conformance2/state/gl-object-get-calls.html
  │   → gl.renderbufferStorageMultisample is not a function
  │ 
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:390:6

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #167: gl.getProgramParameter(uniformBlockProgram, gl.ACTIVE_UNIFORM_BLOCKS) should be 1 (of type number). Was null (of type object).
  │   → assert_true: gl.getProgramParameter(uniformBlockProgram, gl.ACTIVE_UNIFORM_BLOCKS) should be 1 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:341:3

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #43: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL) should be 0 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #106: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL) should be 0 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:160:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #89: getError expected: NO_ERROR. Was INVALID_ENUM : 
  │   → assert_true: getError expected: NO_ERROR. Was INVALID_ENUM :  expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ glErrorShouldBeImpl@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1679:5
  │ glErrorShouldBe@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1653:10
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:140:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #92: gl.checkFramebufferStatus(gl.FRAMEBUFFER) should be 36053. Was 36061.
  │   → assert_true: gl.checkFramebufferStatus(gl.FRAMEBUFFER) should be 36053. Was 36061. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:404:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:151:3

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #86: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid parameter enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid parameter enum: NO_ERROR expected true got false
  │ FAIL [expected PASS] WebGL test #148: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid parameter enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid parameter enum: NO_ERROR expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ testInvalidArgument@http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:51:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:275:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #72: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:253:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #85: getError expected: NO_ERROR. Was INVALID_OPERATION : 
  │   → assert_true: getError expected: NO_ERROR. Was INVALID_OPERATION :  expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ glErrorShouldBeImpl@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1679:5
  │ glErrorShouldBe@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1653:10
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:269:11

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #173: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_HEIGHT) should be 2. Was 0.
  │   → assert_true: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_HEIGHT) should be 2. Was 0. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:404:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:375:1

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #64: getError expected: INVALID_OPERATION. Was INVALID_ENUM : after evaluating: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE)
  │   → assert_true: getError expected: INVALID_OPERATION. Was INVALID_ENUM : after evaluating: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE) expected true got false
  │ FAIL [expected PASS] WebGL test #127: getError expected: INVALID_OPERATION. Was INVALID_ENUM : after evaluating: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE)
  │   → assert_true: getError expected: INVALID_OPERATION. Was INVALID_ENUM : after evaluating: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE) expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ glErrorShouldBeImpl@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1679:5
  │ glErrorShouldBe@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1653:10
  │ shouldGenerateGLError@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1623:12
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:185:9

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #182: successfullyParsed should be true (of type boolean). Was undefined (of type undefined).
  │   → assert_true: successfullyParsed should be true (of type boolean). Was undefined (of type undefined). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  │ shouldBeTrue@http://web-platform.test:8000/_webgl/js/js-test-pre.js:432:29
  â”” @http://web-platform.test:8000/_webgl/js/js-test-post.js:24:1

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #135: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.STENCIL, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 0 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:255:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #87: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid target enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid target enum: NO_ERROR expected true got false
  │ FAIL [expected PASS] WebGL test #149: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid target enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid target enum: NO_ERROR expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ testInvalidArgument@http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:51:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:283:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #71: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #134: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:251:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #175: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_DEPTH_SIZE) should be non-zero. Was 0
  │   → assert_true: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_DEPTH_SIZE) should be non-zero. Was 0 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBeNonZero@http://web-platform.test:8000/_webgl/js/js-test-pre.js:495:5
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:379:1

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #41: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 5890 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 5890 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #104: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 5890 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 5890 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:155:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #88: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid attachment enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid attachment enum: NO_ERROR expected true got false
  │ FAIL [expected PASS] WebGL test #150: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid attachment enum: NO_ERROR
  │   → assert_true: getFramebufferAttachmentParameter did not generate INVALID_ENUM for invalid attachment enum: NO_ERROR expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ testInvalidArgument@http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:51:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:291:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #57: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLRenderbuffer]. Was null.
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLRenderbuffer]. Was null. expected true got false
  │ FAIL [expected PASS] WebGL test #120: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLRenderbuffer]. Was null.
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.DEPTH_STENCIL_ATTACHMENT, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLRenderbuffer]. Was null. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:404:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:178:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #91: getError expected: NO_ERROR. Was INVALID_ENUM : 
  │   → assert_true: getError expected: NO_ERROR. Was INVALID_ENUM :  expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ glErrorShouldBeImpl@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1679:5
  │ glErrorShouldBe@http://web-platform.test:8000/_webgl/js/webgl-test-utils.js:1653:10
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:147:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #40: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 0, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 0, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #51: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #103: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 0, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 0, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #114: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER) should be 0 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:169:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #44: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE) should be 0 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #107: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE) should be 0 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE) should be 0 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:161:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #70: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.BACK, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.BACK, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object). expected true got false
  │ FAIL [expected PASS] WebGL test #133: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.BACK, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object).
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.BACK, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE) should be 33304 (of type number). Was null (of type object). expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:406:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:250:5

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #42: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLTexture]. Was null.
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLTexture]. Was null. expected true got false
  │ FAIL [expected PASS] WebGL test #105: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLTexture]. Was null.
  │   → assert_true: gl.getFramebufferAttachmentParameter(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0 + 7, gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME) should be [object WebGLTexture]. Was null. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:404:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:159:7

  â–¶ Unexpected subtest result in /_webgl/conformance2/state/gl-object-get-calls.html:
  │ FAIL [expected PASS] WebGL test #172: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_WIDTH) should be 2. Was 0.
  │   → assert_true: gl.getRenderbufferParameter(gl.RENDERBUFFER, gl.RENDERBUFFER_WIDTH) should be 2. Was 0. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/_webgl/js/js-test-pre.js:123:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:2024:25
  │ test@http://web-platform.test:8000/resources/testharness.js:548:30
  │ reportTestResultsToHarness@http://web-platform.test:8000/_webgl/js/js-test-pre.js:122:7
  │ testFailed@http://web-platform.test:8000/_webgl/js/js-test-pre.js:249:5
  │ shouldBe@http://web-platform.test:8000/_webgl/js/js-test-pre.js:404:9
  â”” @http://web-platform.test:8000/_webgl/js/tests/gl-object-get-calls.js:374:1
Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and
`MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2
@mmatyas mmatyas force-pushed the szeged:mmatyas__webgl_fns_framebuf_glparams branch from b4f373d to 8334858 Feb 14, 2020
@mmatyas
Copy link
Contributor Author

mmatyas commented Feb 14, 2020

Ah sorry, that one test likes to time out. Updated.

@mmatyas mmatyas mentioned this pull request Feb 14, 2020
3 of 3 tasks complete
@jdm
Copy link
Member

jdm commented Feb 14, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Feb 14, 2020

📌 Commit 8334858 has been approved by jdm

@bors-servo
Copy link
Contributor

bors-servo commented Feb 15, 2020

Testing commit 8334858 with merge dd1921c...

bors-servo added a commit that referenced this pull request Feb 15, 2020
…=jdm

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS`

Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Feb 15, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Feb 18, 2020

@bors-servo retry

bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS`

Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

Testing commit 8334858 with merge 7816816...

@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Feb 18, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

Testing commit 8334858 with merge 49cef62...

bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS`

Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Feb 18, 2020

@bors-servo retry

@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

Testing commit 8334858 with merge fe471de...

bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add support for WebGL2 `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS`

Adds support for using the WebGL2 enums `MAX_COLOR_ATTACHMENTS` and `MAX_DRAW_BUFFERS` with `GetParameter`.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
@bors-servo
Copy link
Contributor

bors-servo commented Feb 18, 2020

☀️ Test successful - status-taskcluster
Approved by: jdm
Pushing fe471de to master...

@bors-servo bors-servo merged commit 8334858 into servo:master Feb 18, 2020
2 checks passed
2 checks passed
Community-TC (pull_request) TaskGroup: success
Details
homu Test successful
Details
bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add initial support for WebGL2 read framebuffer

Adds support for binding to the read framebuffer slot and querying its status.

<!-- Please describe your changes on the following line: -->

Depends on #25752

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add initial support for WebGL2 read framebuffer

Adds support for binding to the read framebuffer slot and querying its status.

<!-- Please describe your changes on the following line: -->

Depends on #25752

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add initial support for WebGL2 read framebuffer

Adds support for binding to the read framebuffer slot and querying its status.

<!-- Please describe your changes on the following line: -->

Depends on #25752

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
bors-servo added a commit that referenced this pull request Feb 18, 2020
…=jdm

Add initial support for WebGL2 read framebuffer

Adds support for binding to the read framebuffer slot and querying its status.

<!-- Please describe your changes on the following line: -->

Depends on #25752

cc @jdm @zakorgy

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

5 participants
You can’t perform that action at this time.