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

Use xi-unicode for line breaking #10913

Merged
merged 1 commit into from
May 1, 2016
Merged

Conversation

mbrubeck
Copy link
Contributor

@mbrubeck mbrubeck commented Apr 29, 2016

This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace. xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck#2 for some discussion on an earlier draft of this code. This PR implements the "search backward to find trailing whitespace" solution discussed there.

r? @pcwalton


This change is Reviewable

@highfive
Copy link

warning Warning warning

  • These commits modify gfx code, but no tests are modified. Please consider adding a test!

@highfive highfive added the S-awaiting-review There is new code that needs to be reviewed. label Apr 29, 2016
@mbrubeck mbrubeck added A-layout/text and removed S-awaiting-review There is new code that needs to be reviewed. labels Apr 29, 2016
@mbrubeck
Copy link
Contributor Author

@bors-servo try

@bors-servo
Copy link
Contributor

⌛ Trying commit 689d592 with merge be56789...

bors-servo pushed a commit that referenced this pull request Apr 29, 2016
Use xi-unicode for line breaking

This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace.  xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck#2 for some discussion on an earlier draft of this code.  This PR implements the "search backward to find trailing whitespace" solution discussed there.

Note: I'll need to update test expectations after a "try" run.

r? @pcwalton

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

💔 Test failed - linux-dev

@highfive highfive added the S-tests-failed The changes caused existing tests to fail. label Apr 29, 2016
@nox nox added S-fails-tidy `./mach test-tidy` reported errors. and removed S-tests-failed The changes caused existing tests to fail. labels Apr 29, 2016
@nox
Copy link
Contributor

nox commented Apr 29, 2016

./components/gfx/text/text_run.rs:206: missing space after ,

@highfive highfive added the S-awaiting-review There is new code that needs to be reviewed. label Apr 29, 2016
@mbrubeck
Copy link
Contributor Author

./components/gfx/text/text_run.rs:206: missing space after ,

Fixed.

@pcwalton
Copy link
Contributor

Nice! Looks great.

@pcwalton
Copy link
Contributor

@bors-servo: r+

@bors-servo
Copy link
Contributor

📌 Commit 5834659 has been approved by pcwalton

@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. labels Apr 29, 2016
@jdm jdm removed the S-fails-tidy `./mach test-tidy` reported errors. label Apr 29, 2016
@bors-servo
Copy link
Contributor

⌛ Testing commit 5834659 with merge ce77706...

bors-servo pushed a commit that referenced this pull request Apr 30, 2016
Use xi-unicode for line breaking

This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace.  xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck#2 for some discussion on an earlier draft of this code.  This PR implements the "search backward to find trailing whitespace" solution discussed there.

r? @pcwalton

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

💔 Test failed - mac-rel-css

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Apr 30, 2016
@highfive
Copy link

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-001.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-002.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-003.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-004.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-005.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-006.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-007.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-008.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-009.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-010.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-011.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-012.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-013.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-014.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-015.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-016.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-017.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-018.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-019.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-020.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-021.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-022.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-023.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-024.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-025.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-027.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-028.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-029.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-030.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-032.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-034.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-036.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-038.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-039.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-040.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-042.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-043.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-044.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-045.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-046.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-047.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-048.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-049.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-051.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-052.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-054.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-056.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-057.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-058.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-060.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-230.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-232.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-234.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-236.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-238.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-239.htm

  ▶ </span><span class="stdout">PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-240.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-242.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-243.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-244.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-245.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-246.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-247.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-248.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-249.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-251.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-252.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-254.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-256.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-257.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-258.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-302.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-303.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-304.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-306.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-308.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-309.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-310.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-311.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-312.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-313.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-314.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-315.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-316.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-317.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-319.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-320.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-322.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-324.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-325.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-326.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-404.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-406.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-408.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-409.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-410.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-411.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-412.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-413.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-414.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-415.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-416.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-417.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-419.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-420.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-422.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-424.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-425.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-426.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-001.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-002.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-003.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-007.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-008.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-010.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-011.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-012.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-021.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-022.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-038.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-040.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-043.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-045.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-047.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-061.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-063.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-064.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-101.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-104.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-105.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-106.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-107.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-108.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-109.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-114.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-115.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-116.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-117.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-126.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-127.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-143.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-144.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-146.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-147.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-148.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-149.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-150.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-151.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-152.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-153.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-167.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-168.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-169.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-171.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-170.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-206.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-207.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-208.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-209.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-210.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-211.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-214.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-215.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-216.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-221.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-222.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-223.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-224.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-225.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-226.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-250.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-251.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-252.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-253.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-254.ht</span><span class="stdout">m

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-255.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-256.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-257.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-258.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-259.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-260.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-261.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-262.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-263.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-264.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-265.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-266.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-267.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-268.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-opclns-269.htm

  ▶ PASS [expected FAIL] /css-text-3_dev/html/word-break-normal-bo-000.htm

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-002.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-003.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-005.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-004.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-006.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-007.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-008.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-009.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-010.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-011.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-012.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-015.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-018.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-017.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-019.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-026.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-030.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-031.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-025.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-032.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-033.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-034.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-035.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-036.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-037.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-039.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-038.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-040.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-041.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-042.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-043.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-044.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-046.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-045.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-047.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-048.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-061.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-060.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-066.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-067.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-091.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-108.htm:
  └ PASS [expected FAIL]  

  ▶ Unexpected subtest result in /css-text-3_dev/html/css3-text-line-break-baspglwj-111.htm:
  └ PASS [expected FAIL]  

@jdm
Copy link
Member

jdm commented Apr 30, 2016

That's a pretty impressive set of results! 👏

bors-servo pushed a commit that referenced this pull request Apr 30, 2016
Use xi-unicode for line breaking

This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace.  xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck#2 for some discussion on an earlier draft of this code.  This PR implements the "search backward to find trailing whitespace" solution discussed there.

r? @pcwalton

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

💔 Test failed - mac-rel-css

@highfive highfive added S-tests-failed The changes caused existing tests to fail. and removed S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. labels Apr 30, 2016
@mbrubeck
Copy link
Contributor Author

@bors-servo retry

  • github connection error

@bors-servo
Copy link
Contributor

⚡ Previous build results for arm32, arm64, linux-dev, mac-dev-unit are reusable. Rebuilding only android, linux-rel, mac-rel-css, mac-rel-wpt, windows...

@bors-servo
Copy link
Contributor

💔 Test failed - mac-rel-css

@highfive highfive added the S-tests-failed The changes caused existing tests to fail. label Apr 30, 2016
@mbrubeck
Copy link
Contributor Author

@bors-servo retry

  • infra

@bors-servo
Copy link
Contributor

⚡ Previous build results for android, arm32, arm64, linux-dev, linux-rel, mac-dev-unit, mac-rel-wpt are reusable. Rebuilding only mac-rel-css, windows...

@bors-servo
Copy link
Contributor

💔 Test failed - mac-rel-css

@highfive
Copy link

  ▶ PASS [expected FAIL] /css-text-3_dev/html/css3-text-line-break-jazh-001.htm

@highfive highfive added the S-tests-failed The changes caused existing tests to fail. label Apr 30, 2016
@highfive highfive added S-awaiting-review There is new code that needs to be reviewed. and removed S-tests-failed The changes caused existing tests to fail. labels May 1, 2016
@mbrubeck
Copy link
Contributor Author

mbrubeck commented May 1, 2016

@bors-servo r=pcwalton

  • missed one

@bors-servo
Copy link
Contributor

📌 Commit 894f639 has been approved by pcwalton

@highfive highfive added S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. and removed S-awaiting-review There is new code that needs to be reviewed. labels May 1, 2016
@bors-servo
Copy link
Contributor

⌛ Testing commit 894f639 with merge fc1e4c8...

bors-servo pushed a commit that referenced this pull request May 1, 2016
Use xi-unicode for line breaking

This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace.  xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck#2 for some discussion on an earlier draft of this code.  This PR implements the "search backward to find trailing whitespace" solution discussed there.

r? @pcwalton

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

☀️ Test successful - android, arm32, arm64, linux-dev, linux-rel, mac-dev-unit, mac-rel-css, mac-rel-wpt, windows

@bors-servo bors-servo merged commit 894f639 into servo:master May 1, 2016
@highfive highfive removed the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label May 1, 2016
@mbrubeck mbrubeck deleted the xi-unicode branch May 11, 2016 03:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants