Commit graph

11592 commits

Author SHA1 Message Date
Patrick Walton
9bd8edea4a script: Use Arc::make_unique instead of Arc::get_mut when updating
inline styles.

Transitions make the reasoning in the comment in the relevant sections
not true.
2015-08-02 09:10:17 -07:00
bors-servo
92cbb93684 Auto merge of #6894 - pcwalton:double-precision-timestamps, r=metajack
style: Switch animation timestamps to be doubles instead of floats.

32-bit floats are not enough to hold timestamps since the epoch and
result in jank.

r? @metajack

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6894)
<!-- Reviewable:end -->
2015-08-01 22:01:39 -06:00
bors-servo
b7261a2073 Auto merge of #6714 - boghison:filelist, r=jdm
Implement a FileList



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6714)
<!-- Reviewable:end -->
2015-08-01 20:16:14 -06:00
Patrick Walton
cac01edf80 style: Switch animation timestamps to be doubles instead of floats.
32-bit floats are not enough to hold timestamps since the epoch and
result in jank.
2015-08-01 17:46:39 -07:00
bors-servo
c6b043582b Auto merge of #6741 - servo:fix-setpropertypriority, r=pcwalton
Fix CSSStyleDeclaration::setPropertyPriority and some refactoring

r? @Ms2ger

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6741)
<!-- Reviewable:end -->
2015-08-01 15:00:06 -06:00
Bogdan Cuza
8bc66f97f8 Implement the FileList interface. Fixes #6708 2015-08-01 19:31:20 +02:00
bors-servo
1b06031ccc Auto merge of #6889 - pcwalton:transition-left, r=metajack
style: Fix misdirected animation properties.

left redirected to top, and padding redirected to margin.

r? @mbrubeck (or whoever)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6889)
<!-- Reviewable:end -->
2015-08-01 11:29:01 -06:00
Patrick Walton
ad7bfa2289 style: Fix misdirected animation properties.
left redirected to top, and padding redirected to margin.
2015-08-01 10:23:41 -07:00
bors-servo
effb17b336 Auto merge of #6829 - Wafflespeanut:devtools, r=jdm
Persuading devtools to communicate with the workers; r=jdm

For now, this just gives some purpose to the abandoned receiver and later selects over the two receivers (for #6767). (oh wait, forgot to check the local build - there are still a few errors)...

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6829)
<!-- Reviewable:end -->
2015-08-01 10:04:07 -06:00
Ravi Shankar
79b65402d7 Persuading devtools to communicate with the workers; r=jdm 2015-08-01 21:25:49 +05:30
bors-servo
4de6e699b2 Auto merge of #6882 - notriddle:master, r=jdm
Automate Dromaeo

Closes #6759.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6882)
<!-- Reviewable:end -->
2015-08-01 08:50:14 -06:00
Michael Howell
ac65817d2e Make output results valid Markdown tables. 2015-07-31 21:57:26 -07:00
Michael Howell
a93b4bba6d test-tidy fixes. 2015-07-31 21:49:01 -07:00
Michael Howell
f82f46680e UI cheeze. 2015-07-31 21:24:23 -07:00
Michael Howell
6749bed1f5 Fix it so it actually exits correctly. 2015-07-31 21:24:23 -07:00
Michael Howell
c602af2050 Integrate dromaeo with mach. 2015-07-31 21:24:22 -07:00
Michael Howell
ff217106d3 First try at Dromaeo test runner. 2015-07-31 21:24:21 -07:00
bors-servo
9e96cf2c69 Auto merge of #6881 - metajack:fix-num-jobs, r=jdm
Update deps for NUM_JOBS fixes



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6881)
<!-- Reviewable:end -->
2015-07-31 18:17:57 -06:00
bors-servo
9a2f28ae33 Auto merge of #6839 - dzbarsky:atoms, r=jdm
Use static atoms in HTMLFormElement

Need to update to new string-cache first, which I think requires a rustup?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6839)
<!-- Reviewable:end -->
2015-07-31 17:07:36 -06:00
David Zbarsky
d5f8cb3330 Use static atoms in HTMLFormElement 2015-07-31 19:05:51 -04:00
Jack Moffitt
df964131cd Update deps for NUM_JOBS fixes 2015-07-31 17:04:56 -06:00
bors-servo
2eb122f394 Auto merge of #6586 - pcwalton:resource-task-ipc, r=jdm
script: Make the resource task communication use IPC channels.

This change makes Servo use serialized messages over IPC channels for resource loading. The goal is to make it easier to make Servo multiprocess in the future. This patch does not make Servo multiprocess now; there are many other channels that need to be changed to IPC before that can happen. It does introduce a dependency on https://github.com/serde-rs/serde and https://github.com/pcwalton/ipc-channel for the first time.

At the moment, `ipc-channel` uses JSON for serialization. This is because serde does not yet have official support for bincode. When serde gains support for bincode, I'll switch to that. For now, however, the JSON encoding and decoding will constitute a significant performance regression in resource loading.

To avoid having to send boxed `AsyncResponseTarget` trait objects across process boundaries, this series of commits changes `AsyncResponseTarget` to wrap a sender only. It is then the client's responsibility to spawn a thread to proxy calls from that sender to the consumer of the resource data. This only had to be done in a few places. In the future, we may want to collapse those threads into one per process to reduce overhead. (It is impossible to continue to use `AsyncResponseTarget` as a boxed trait object across processes, regardless of how much work is done on `ipc-channel`. Vtables are fundamentally incompatible with IPC across mutually untrusting processes.)

In general, I was pretty pleased with how this turned out. The main changes are adding serialization functionality to various objects that `serde` does not know how to serialize natively—the most complicated being Hyper objects—and reworking `AsyncResponseTarget`. The overall structure of the code is unchanged, and other than `AsyncResponseTarget` no functionality was lost in moving to serialization and IPC.

r? @jdm

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6586)
<!-- Reviewable:end -->
2015-07-31 16:06:36 -06:00
Patrick Walton
61e3a9545e script: Fix test failures. 2015-07-31 15:03:39 -07:00
bors-servo
a54404c921 Auto merge of #6876 - metajack:slice_chars-layout, r=pcwalton
Use local slice_chars

StrExt::slice_chars is deprecated and will be removed in Rust. This
lifts the implementation from Rust libstd and puts it in util::str.

This fixes a bunch of deprecation warnings in Servo.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6876)
<!-- Reviewable:end -->
2015-07-31 12:54:49 -06:00
Patrick Walton
024c4df912 script: Fix merge fallout. 2015-07-31 11:28:09 -07:00
Patrick Walton
2aa5174246 script: Make the resource task communication use IPC channels. 2015-07-31 11:28:09 -07:00
Patrick Walton
44d13f7fd4 net: Use a thread for each AsyncResponseTarget to avoid having to send
trait objects across process boundaries.
2015-07-31 11:27:49 -07:00
Patrick Walton
9c9d7dc93b net: Make most of the resource task messages serializable. 2015-07-31 11:27:49 -07:00
Jack Moffitt
dae1a398a4 Use local slice_chars
StrExt::slice_chars is deprecated and will be removed in Rust. This
lifts the implementation from Rust libstd and puts it in util::str.

This fixes a bunch of deprecation warnings in Servo.
2015-07-31 12:23:13 -06:00
bors-servo
7e77285745 Auto merge of #6869 - servo:unstable-h5e, r=metajack
Update rust-selectors and enable unstable features.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6869)
<!-- Reviewable:end -->
2015-07-31 10:47:49 -06:00
bors-servo
c4480b5d03 Auto merge of #6795 - pcwalton:display-list-e10s-fixes, r=glennw
Send display lists over IPC in multiprocess mode.

This patch set introduces the `--multiprocess` (`-M`) switch. Right now, all it does it cause display lists to be serialized, but eventually it will cause actual processes to be spawned.

r? @metajack

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6795)
<!-- Reviewable:end -->
2015-07-31 09:43:40 -06:00
Patrick Walton
17ead8716b Update rust-core-text 2015-07-31 08:43:03 -07:00
Patrick Walton
e9ec9289d6 gfx: Instantiate the CTFont corresponding to a Mac font on demand.
This avoids panics in multiprocess mode.
2015-07-31 08:42:30 -07:00
Patrick Walton
1ff7a51f0a compositing: Use an OptionalIpcSender for communication between the
layout and paint tasks.
2015-07-31 08:42:30 -07:00
Patrick Walton
3be5bbbaa3 gfx: Split the paint messages into layout and chrome messages, and make
the layout messages serializable.
2015-07-31 08:42:29 -07:00
Patrick Walton
f041e1aa60 util: Remove the old broken SerializableLinkedList code in favor of
serde's native implementation.
2015-07-31 08:42:29 -07:00
Patrick Walton
ef9fdc6e30 util: Add a multiprocess command-line option and implement
`OptionalIpcSender<T>`.

`OptionalIpcSender<T>`dynamically switches between in-process and
out-of-process communication depending on whether multiprocess mode is
enabled.

The multiprocess command-line switch doesn't actually turn on
multiprocess mode yet, but it does control the behavior of
`OptionalIpcSender<T>`.
2015-07-31 08:42:29 -07:00
Simon Sapin
80867917af Update rust-selectors and enable unstable features. 2015-07-31 17:36:43 +02:00
bors-servo
33bc16fe35 Auto merge of #6868 - servo:unstable-h5e, r=metajack
Update html5ever and enable unstable features.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6868)
<!-- Reviewable:end -->
2015-07-31 08:47:38 -06:00
Simon Sapin
9d4ee559e5 Update html5ever and enable unstable features. 2015-07-31 16:41:08 +02:00
bors-servo
ca9f9226b0 Auto merge of #6853 - akiss77:rand-0_3_9-bump, r=jdm
Bump up rand dependency to 0.3.9

That's the first version with the correct getrandom syscall number
for aarch64-unknown-linux-gnu.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6853)
<!-- Reviewable:end -->
2015-07-31 06:52:58 -06:00
bors-servo
8419b15a34 Auto merge of #6865 - glennw:root-fixes, r=pcwalton
Fix panic when html element has display: table.

Ref #6643

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6865)
<!-- Reviewable:end -->
2015-07-31 02:10:40 -06:00
Akos Kiss
b887445623 Bump up rand dependency to 0.3.9
That's the first version with the correct getrandom syscall number
for aarch64-unknown-linux-gnu.
2015-07-31 08:01:47 +00:00
Glenn Watson
7dbffeed20 Fix panic when html element has display: table. 2015-07-31 16:40:06 +10:00
Simon Sapin
06ba62b012 Remove some PropertyDeclaration cloning. 2015-07-31 08:09:25 +02:00
Simon Sapin
d2bd070dc3 Refactor CSSStyleDeclaration::setProperty to not synthesize a name: value string to parse. 2015-07-31 08:09:24 +02:00
Simon Sapin
e2984349ed Add a test for CSSStyleDeclaration.setPropertyPriority 2015-07-31 08:09:24 +02:00
Simon Sapin
1033886409 Fix CSSStyleDeclaration.setPropertyPriority
Before, it was a complicated no-op. (`parse_style_attribute` expects
input like `a: b; c: d;`, when given just a name it return an empty
vector.)
2015-07-31 08:08:36 +02:00
Simon Sapin
1094ce202c Show Mako template errors on the console 2015-07-31 08:08:36 +02:00
bors-servo
1fc50c6ccf Auto merge of #6863 - pcwalton:null-layer-id, r=glennw
compositing: Don't count the root layer when checking to see when to take the screenshot.

 … as it isn't painted after first layout comes in.

r? @glennw

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6863)
<!-- Reviewable:end -->
2015-07-30 23:58:05 -06:00