Commit graph

11403 commits

Author SHA1 Message Date
bors-servo
c7f73ebc29 Auto merge of #6738 - mbrubeck:bootstrap, r=larsbergstrom
Perform argument validation before bootstrapping.

If there's an error in the command-line arguments for `mach build`, we should print it before starting a (potentially) long bootstrap process, not after.

r? @larsbergstrom or @frewsxcv

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6738)
<!-- Reviewable:end -->
2015-07-25 09:32:30 -06:00
Matt Brubeck
4c3a6b839b Perform argument validation before bootstrapping.
If there's an error in the command-line arguments for `mach build`, we should
print it before starting a (potentially) long bootstrap process, not after.
2015-07-25 07:53:53 -07:00
bors-servo
ee07e7110d Auto merge of #6742 - chotchki:accept_int32, r=jdm
Added support for int32 to webdriver.

Fix for issue #6729

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6742)
<!-- Reviewable:end -->
2015-07-25 07:50:26 -06:00
bors-servo
1764267379 Auto merge of #6616 - pcwalton:canvas-webgl-ipc, r=jdm
script: Make most of 2D canvas and WebGL run over IPC.

To actually make the multiprocess communication work, we'll need to
reroute the task creation to the pipeline or the compositor. But this
works as a first step.

r? @jdm

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6616)
<!-- Reviewable:end -->
2015-07-25 01:50:31 -06:00
Patrick Walton
bb99b2f3c8 script: Make most of 2D canvas and WebGL run over IPC.
To actually make the multiprocess communication work, we'll need to
reroute the task creation to the pipeline or the compositor. But this
works as a first step.
2015-07-25 00:50:12 -07:00
bors-servo
886c08c393 Auto merge of #6712 - Ms2ger:traversal, r=pcwalton
Cleanup ParallelPostorderFlowTraversal.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6712)
<!-- Reviewable:end -->
2015-07-24 20:50:55 -06:00
bors-servo
f778e0eecf Auto merge of #6629 - pcwalton:profiler-ipc, r=jdm
profile: Make the time and memory profilers run over IPC.

Uses a couple of extra threads to work around the lack of cross-process
boxed trait objects.

r? @nnethercote

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6629)
<!-- Reviewable:end -->
2015-07-24 18:55:05 -06:00
Christopher Hotchkiss
469453787f Added support for int32 to webdriver. 2015-07-24 20:23:15 -04:00
Patrick Walton
f10c076180 profile: Make the time and memory profilers run over IPC.
Uses the `Router` abstraction inside `ipc-channel` to avoid spawning new
threads.
2015-07-24 17:02:17 -07:00
bors-servo
590cb33bb7 Auto merge of #6679 - mrobinson:surface-cache, r=pcwalton
Have BufferMap store NativeSurfaces and rename to SurfaceMap

We currently store LayerBuffers, because previously NativeSurfaces did
not record their own size. Now we can store NativeSurfaces directly,
which saves a bit of space in the surface cache and allows us to create
LayerBuffers only in the PaintTask.

This also means that instead of sending cached LayerBuffers, the
compositor can just send cached NativeSurfaces to the PaintTask.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6679)
<!-- Reviewable:end -->
2015-07-24 17:59:45 -06:00
bors-servo
ed1b6a3513 Auto merge of #6705 - pcwalton:image-cache-shmem, r=jdm
canvas: Move to shared memory for images and canvas backing stores.

The idea here is to land this before making images and canvas IPC-safe,
because this will shake out bugs relating to the shared memory. There
are currently test timeouts that are preventing multiprocess images and
canvas from landing, and I believe those are due to the inefficiency of
sending large amounts of data in the unoptimized builds we test with. By
moving to shared memory, this should drastically reduce the number of
copies and `serde` serialization.

Under the hood, this uses Mach OOL messages on Mac and temporary
memory-mapped files on Linux.

r? @jdm

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6705)
<!-- Reviewable:end -->
2015-07-24 17:14:59 -06:00
Patrick Walton
626974994a canvas: Move to shared memory for images and canvas backing stores.
The idea here is to land this before making images and canvas IPC-safe,
because this will shake out bugs relating to the shared memory. There
are currently test timeouts that are preventing multiprocess images and
canvas from landing, and I believe those are due to the inefficiency of
sending large amounts of data in the unoptimized builds we test with. By
moving to shared memory, this should drastically reduce the number of
copies and `serde` serialization.

Under the hood, this uses Mach OOL messages on Mac and temporary
memory-mapped files on Linux.
2015-07-24 16:14:24 -07:00
bors-servo
135ef35f6d Auto merge of #6736 - jdm:wptexpectrelease, r=jdm
Disable a test that intermittently crashes in release builds. Update …

…expectations for relevant-mutations.html to account for differences in release builds.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6736)
<!-- Reviewable:end -->
2015-07-24 16:29:05 -06:00
Josh Matthews
65785e2c44 Disable two tests that do not yield reliable output in release builds. 2015-07-24 18:28:43 -04:00
Martin Robinson
1aedead955 Have BufferMap store NativeSurfaces and rename to SurfaceMap
We currently store LayerBuffers, because previously NativeSurfaces did
not record their own size. Now we can store NativeSurfaces directly,
which saves a bit of space in the surface cache and allows us to create
LayerBuffers only in the PaintTask.

This also means that instead of sending cached LayerBuffers, the
compositor can just send cached NativeSurfaces to the PaintTask.
2015-07-24 11:12:39 -07:00
bors-servo
cdcecaef04 Auto merge of #6726 - samfoo:int32-panic, r=Ms2ger
Eval'ing int32's in devtools panic'd

Eval'ing int32 in devconsole panics. Resolves #6725

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6726)
<!-- Reviewable:end -->
2015-07-24 04:10:50 -06:00
Sam Gibson
17e6b08265 Eval'ing int32's in devtools panic'd 2015-07-24 19:52:19 +10:00
bors-servo
3c88d3418c Auto merge of #6720 - mbrubeck:wpt-release, r=pcwalton
Update WPT test expectations for --release builds

r? @pcwalton or @larsbergstrom

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6720)
<!-- Reviewable:end -->
2015-07-24 01:11:48 -06:00
Matt Brubeck
859f99d5e8 Update WPT test expectations for --release builds 2015-07-23 22:57:54 -07:00
bors-servo
d3a36fafd9 Auto merge of #6471 - mbrubeck:bidi, r=pcwalton
Basic support for bidirectional text

This re-orders text according to the Unicode bidirectional layout algorithm, using the [unicode-bidi](https://github.com/mbrubeck/unicode-bidi) crate.  It uses the natural order of the text based on Unicode character properties and the CSS `direction` property.

This does not yet support the CSS `unicode-bidi` property or the HTML `dir` attribute, but these should be straightforward to add.

r? @pcwalton.  Also depends on servo/unicode-bidi#4.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6471)
<!-- Reviewable:end -->
2015-07-23 21:20:49 -06:00
Matt Brubeck
dfac8ce4a1 Basic support for bidirectional text 2015-07-23 20:05:55 -07:00
bors-servo
b386d7ae44 Auto merge of #6718 - akiss77:aarch64-support, r=jdm
Add aarch64-unknown-linux-gnu support

* Adding dependencies
* Replacing `i8` with `libc::c_char` to build properly on platforms
  where char is unsigned.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6718)
<!-- Reviewable:end -->
2015-07-23 17:17:18 -06:00
Akos Kiss
fa86ea4f6f Add aarch64-unknown-linux-gnu support
* Adding dependencies
* Replacing `i8` with `libc::c_char` to build properly on platforms
  where char is unsigned.
2015-07-23 22:52:17 +00:00
bors-servo
e32068d17b Auto merge of #6716 - farodin91:filereader, r=jdm
Implement FileReader.{readAsText,readAsDataUrl}. Fixes #6172



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6716)
<!-- Reviewable:end -->
2015-07-23 14:37:00 -06:00
farodin91
27e760e28d Implement FileReader.{readAsText,readAsDataUrl}. Fixes #6172 2015-07-23 22:33:51 +02:00
bors-servo
f44d75e5b2 Auto merge of #6715 - Ms2ger:layoutelement, r=jdm
Implement more methods on LayoutJS.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6715)
<!-- Reviewable:end -->
2015-07-23 12:40:52 -06:00
Ms2ger
487eef88e3 Move the state getters to LayoutElementHelpers. 2015-07-23 20:30:59 +02:00
Ms2ger
849eb7837a Move the flag getters to LayoutNodeHelpers. 2015-07-23 20:13:06 +02:00
Ms2ger
32ee62b4c8 Remove unused RawLayoutNodeHelpers::type_id_for_layout. 2015-07-23 19:54:12 +02:00
bors-servo
658c3d05ae Auto merge of #6683 - tschneidereit:dompoint, r=Ms2ger
Implement DOMPoint and DOMPointReadOnly



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6683)
<!-- Reviewable:end -->
2015-07-23 11:38:14 -06:00
Ms2ger
14fbfa6aea Remove unused implementation of ParallelPostorderFlowTraversal for BubbleISizes. 2015-07-23 19:30:43 +02:00
Ms2ger
a18dea6578 Pass the SharedLayoutContext to FlowTraversalFunctions directly. 2015-07-23 19:30:26 +02:00
Ms2ger
17a9f8507e Remove the unused proxy argument to ParallelPostorderFlowTraversal::run_parallel. 2015-07-23 19:29:58 +02:00
Till Schneidereit
b692187ca2 Implement DOMPoint and DOMPointReadOnly
Passes some but not all WPT tests. One failure is caused by an issue in codegen for the `DOMPointInit` dictionary, the others by outdated tests: Gecko implements an old version of the spec that overloaded the `DOMPoint` constructor to optionally take an object as the first argument, and made `DOMPointReadOnly` non-constructible.
2015-07-23 19:09:36 +02:00
bors-servo
5d857c5d0c Auto merge of #6700 - servo:selectors, r=Ms2ger
Update rust-selectors

Update for https://github.com/servo/rust-selectors/pull/37

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6700)
<!-- Reviewable:end -->
2015-07-23 10:55:37 -06:00
Simon Sapin
055a1c5cee Update rust-selectors
Update for https://github.com/servo/rust-selectors/pull/37
2015-07-23 18:53:57 +02:00
bors-servo
0d7744b198 Auto merge of #6707 - pcwalton:more-fds, r=larsbergstrom
script: Increase our file descriptor limit on Linux.

We've had problems with this before, and I think it's starting to cause
problems again.

See PRs #6629 and #6616; my current theory is that this is the problem.

r? @larsbergstrom

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6707)
<!-- Reviewable:end -->
2015-07-23 06:18:35 -06:00
bors-servo
c24d37dfcc Auto merge of #6706 - Ms2ger:ctor, r=jdm
Move the WebSocket constructor logic out of WebSocket::new.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6706)
<!-- Reviewable:end -->
2015-07-23 01:44:20 -06:00
Patrick Walton
2c21c942da script: Increase our file descriptor limit on Linux.
We've had problems with this before, and I think it's starting to cause
problems again.
2015-07-23 00:17:58 -07:00
Ms2ger
6329dec31f Move the WebSocket constructor logic out of WebSocket::new. 2015-07-23 09:00:34 +02:00
bors-servo
ff86e0094c Auto merge of #6691 - glennw:mouse-which, r=jdm
Implement mouseevent.which (needed for enyojs sampler).



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6691)
<!-- Reviewable:end -->
2015-07-22 21:53:00 -06:00
bors-servo
37a1e22515 Auto merge of #6698 - Ms2ger:layoutelement, r=jdm
Implement some methods on LayoutJS<Element>.

Part of my long-term plan to stop exposing `unsafe_get()` outside the script crate.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6698)
<!-- Reviewable:end -->
2015-07-22 21:10:04 -06:00
Glenn Watson
d2600e66fb Address review comments 2015-07-23 09:13:09 +10:00
bors-servo
5dba6d5b01 Auto merge of #6667 - notriddle:master, r=Ms2ger
Optimize `Node.normalize()`.

Do not copy the discarded node's text data, borrow it.

Closes #6658.

p.s. What's the `let text_node = text_node.clone();` for? I removed it because it doesn't seem to be necessary, but I'd like to be sure.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6667)
<!-- Reviewable:end -->
2015-07-22 15:13:43 -06:00
bors-servo
6fd31867ba Auto merge of #6635 - Ms2ger:ws-task, r=jdm
Spawn a thread for WebSocket messages.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6635)
<!-- Reviewable:end -->
2015-07-22 14:26:21 -06:00
bors-servo
11a3423c29 Auto merge of #6693 - notriddle:tidy-webidl, r=jdm
Tidy finds WebIDLs with no spec.

Closes #6689

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6693)
<!-- Reviewable:end -->
2015-07-22 13:44:12 -06:00
Ms2ger
32ddd356b8 Spawn a thread for WebSocket messages. 2015-07-22 20:29:32 +02:00
Ms2ger
91849cb603 Set the WebSocket's Sender from the ConnectionEstablishedTask.
This needs to happen off a task because we won't be able to access the
WebSocket object directly once this code moves to a background thread.

There is no behaviour change, because we make sure that self.ready_state is
not Connecting in Send().
2015-07-22 20:28:17 +02:00
Ms2ger
78df6e8d3e Remove the receiver field from WebSocket.
The receiver will be used from another thread than the WebSocket object in
the future.
2015-07-22 20:28:15 +02:00
Ms2ger
56c660d4de Split up WebSocketTaskHandler.
There's no real reason to have internal dynamic dispatch inside a trait
object.
2015-07-22 20:28:13 +02:00