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 raqote backend for 2D canvas rendering #24201

Merged
merged 4 commits into from Sep 17, 2019
Merged

Conversation

@pylbrecht
Copy link
Contributor

pylbrecht commented Sep 12, 2019


  • ./mach build -d does not report any errors
  • ./mach test-tidy does not report any errors
  • These changes fix (part of) #23431
  • There are tests for these changes

This change is Reviewable

@jdm
Copy link
Member

jdm commented Sep 16, 2019

I think we should merge these changes after squashing the bitshifting commit and rebasing.

@jdm
jdm approved these changes Sep 16, 2019
@jdm jdm assigned jdm and unassigned asajeffrey Sep 16, 2019
@jdm jdm added the S-needs-rebase label Sep 16, 2019
@pylbrecht pylbrecht force-pushed the pylbrecht:raqote branch from f6078b3 to 99149f9 Sep 17, 2019
pylbrecht added 3 commits Sep 12, 2019
rust-azure's ellipse() C++ implementation copy/pasted and kind of ported
to Rust. Obviously needs refactor to turn it into idiomatic Rust.
@pylbrecht pylbrecht force-pushed the pylbrecht:raqote branch from 99149f9 to 2a44994 Sep 17, 2019
@jdm
Copy link
Member

jdm commented Sep 17, 2019

@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

📌 Commit 2a44994 has been approved by jdm

@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

Testing commit 2a44994 with merge 052d3d9...

bors-servo added a commit that referenced this pull request Sep 17, 2019
Implement raqote backend for 2D canvas rendering

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

---
<!-- 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
- [ ] These changes fix (part of) #23431

<!-- Either: -->
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24201)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

💔 Test failed - status-taskcluster

@CYBAI
Copy link
Collaborator

CYBAI commented Sep 17, 2019

Tidy failure in linux and windows

error: attempt to shift left with overflow
  --> components/canvas/raqote_backend.rs:636:27
   |
636|         let color: u32 = (self.color.alpha << 8 * 3 |
   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: `#[deny(exceeding_bitshifts)]` on by default

error: attempt to shift left with overflow
  --> components/canvas/raqote_backend.rs:637:13
   |
637|             self.color.red << 8 * 2 |
   |            ^^^^^^^^^^^^^^^^^^^^^^^

error: attempt to shift left with overflow
  --> components/canvas/raqote_backend.rs:638:13
   |
638|             self.color.green << 8 * 1 |
   |            ^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to 3 previous errors

error: Could not compile `canvas`.
warning: build failed, waiting for other jobs to finish...

the mac one failed with #23290 intermittent

@jdm
Copy link
Member

jdm commented Sep 17, 2019

You'll need to cast those u8 values to u32 before shifting.

@pylbrecht
Copy link
Contributor Author

pylbrecht commented Sep 17, 2019

Thanks, I'm already on it! Building takes some time since the rebase..

@pylbrecht pylbrecht force-pushed the pylbrecht:raqote branch from 2a44994 to 308908e Sep 17, 2019
@jdm
Copy link
Member

jdm commented Sep 17, 2019

@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

📌 Commit 308908e has been approved by jdm

@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

Testing commit 308908e with merge e431a7b...

bors-servo added a commit that referenced this pull request Sep 17, 2019
Implement raqote backend for 2D canvas rendering

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

---
<!-- 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
- [ ] These changes fix (part of) #23431

<!-- Either: -->
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24201)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Sep 17, 2019

☀️ Test successful - linux-rel-css, linux-rel-wpt, status-taskcluster
Approved by: jdm
Pushing e431a7b to master...

@bors-servo bors-servo merged commit 308908e into servo:master Sep 17, 2019
2 of 3 checks passed
2 of 3 checks passed
continuous-integration/appveyor/pr AppVeyor build failed
Details
Taskcluster (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.

None yet

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