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

Implement queueMicrotask #25510

Merged
merged 1 commit into from Jan 14, 2020
Merged

Implement queueMicrotask #25510

merged 1 commit into from Jan 14, 2020

Conversation

@pshaughn
Copy link
Member

pshaughn commented Jan 13, 2020

The VoidFunction of a user-queued microtask is identical to a PromiseJobCallback in everything but type name, so implementing this method turned out to be just a matter of attaching a WebIDL frontend to a copy-and-pasted backend. All the remaining queueMicrotask WPT failures are because we don't have shared/service workers.


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

highfive commented Jan 13, 2020

Heads up! This PR modifies the following files:

  • @asajeffrey: components/script/microtask.rs, components/script/dom/globalscope.rs, components/script/dom/workerglobalscope.rs, components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl, components/script/dom/window.rs
  • @KiChjang: components/script/microtask.rs, components/script/dom/globalscope.rs, components/script/dom/workerglobalscope.rs, components/script/dom/webidls/WindowOrWorkerGlobalScope.webidl, components/script/dom/window.rs
Copy link
Member

jdm left a comment

Implementation looks good!

components/script/dom/window.rs Outdated Show resolved Hide resolved
components/script/dom/workerglobalscope.rs Outdated Show resolved Hide resolved
@jdm jdm assigned jdm and unassigned paulrouget Jan 13, 2020
@pshaughn pshaughn force-pushed the pshaughn:queuemicrotask branch from 4cf420b to b01b2d3 Jan 13, 2020
@jdm
Copy link
Member

jdm commented Jan 13, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jan 13, 2020

📌 Commit b01b2d3 has been approved by jdm

@bors-servo
Copy link
Contributor

bors-servo commented Jan 13, 2020

Testing commit b01b2d3 with merge d115dfa...

bors-servo added a commit that referenced this pull request Jan 13, 2020
Implement queueMicrotask

<!-- Please describe your changes on the following line: -->
The VoidFunction of a user-queued microtask is identical to a PromiseJobCallback in everything but type name, so implementing this method turned out to be just a matter of attaching a WebIDL frontend to a copy-and-pasted backend. All the remaining queueMicrotask WPT failures are because we don't have shared/service workers.

---
<!-- 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] These changes fix #21574

<!-- Either: -->
- [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 Jan 13, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Jan 13, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jan 13, 2020

Testing commit b01b2d3 with merge fc67f0f...

bors-servo added a commit that referenced this pull request Jan 13, 2020
Implement queueMicrotask

<!-- Please describe your changes on the following line: -->
The VoidFunction of a user-queued microtask is identical to a PromiseJobCallback in everything but type name, so implementing this method turned out to be just a matter of attaching a WebIDL frontend to a copy-and-pasted backend. All the remaining queueMicrotask WPT failures are because we don't have shared/service workers.

---
<!-- 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] These changes fix #21574

<!-- Either: -->
- [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 Jan 14, 2020

💔 Test failed - status-taskcluster

@jdm
Copy link
Member

jdm commented Jan 14, 2020

@bors-servo
Copy link
Contributor

bors-servo commented Jan 14, 2020

Testing commit b01b2d3 with merge b52ddc5...

bors-servo added a commit that referenced this pull request Jan 14, 2020
Implement queueMicrotask

<!-- Please describe your changes on the following line: -->
The VoidFunction of a user-queued microtask is identical to a PromiseJobCallback in everything but type name, so implementing this method turned out to be just a matter of attaching a WebIDL frontend to a copy-and-pasted backend. All the remaining queueMicrotask WPT failures are because we don't have shared/service workers.

---
<!-- 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] These changes fix #21574

<!-- Either: -->
- [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 Jan 14, 2020

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

@bors-servo bors-servo merged commit b01b2d3 into servo:master Jan 14, 2020
2 checks passed
2 checks passed
Community-TC (pull_request) TaskGroup: success
Details
homu Test successful
Details
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.

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