Fix for issue #6768.
Merge common fields of ReadData and BlobBody to avoid passing redundant information to functions.
Source-Repo: https://github.com/servo/servo
Source-Revision: ac533b146660922d7d4e6f1836f189a63334df65
Fixes#6818. The test still fails because of #6978.
r? @pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: b9f00190e1364fb1b9ab8dc089593910c3e34d41
Fixes jumpiness on many pages; e.g. the WPT results pages.
For some reason, this would not reproduce with an automated test.
r? @mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 94cd76df61c1ea14199c9683603b548377aced3b
…s for frame treese in script tasks.
This underreports by a significant amount, since only Document, Window and CharacterData (ie. text) nodes are fully represented. That being said, every HTML element in the tree is measured, but only counted as a Node. It's easy to improve this, it just requires adding the appropriate HeapSizeOf derives and increasing the granularity of `measure_memory_for_eventtarget`. google.com shows a dom-tree value of 0.24 MB for me at the moment.
r? @nnethercote
Source-Repo: https://github.com/servo/servo
Source-Revision: 84e25befdd97cf74fb00707dbe150d59d980e977
There are some bad module-level doc comments in `flow.rs` which has directly affected [Servo's docs](http://doc.servo.org/layout/flow/index.html) and so, this fixes that. Oh, and #6728 is having a hard time getting closed and so I've also removed the `FIXME` comment related to it.
Source-Repo: https://github.com/servo/servo
Source-Revision: ae3aadd6567e15b5fb4da6c85fc4cdba9fcc2eb2
We use alert() to communicate test results to wptrunner. Unfortunately,
sometimes the alert output is interleaved with other output on stdout,
causing wptrunner to classify the test result as a timeout. I hope this will
avoid that scenario.
Source-Repo: https://github.com/servo/servo
Source-Revision: 86476804cac668133b6964c8f551918163aa66d7
It's not possible to correctly determine during the css cascade whether the container height
is explicitly specified. Additionally, the spec https://drafts.csswg.org/css2/visudet.html#the-height-property says this should affect the *used* height, rather than the computed height.
This significantly improves the layout in #6643.
Source-Repo: https://github.com/servo/servo
Source-Revision: 028707f5cd3263fd1476669207f67d5b9d5d4806
Tying transitions to the DOM node avoids quadratic complexity when
updating them.
Finishing transitions instantly when styles are updated makes our
behavior more correct.
r? @glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: ffe4bd25a495efd672986f090150b165811b6708
Resolves#6703.
Done:
* [x] When STS headers received, add the host to the HSTS list
Todo:
* [ ] Persist the in-memory list so that it's reloaded on the next browser boot
* [ ] Add tests to `http_loader::load` - it's pretty well completely untested right now, but it's a bit gnarly to untangle and without mocking, it's hard to deal with the dependency on making a real network request. Writing a mock request object should be doable for testing, but there's a lot going on in the function right now.
Source-Repo: https://github.com/servo/servo
Source-Revision: f1c26c59f177570a697c420308fb89d9773c7468
Transitions make the reasoning in the comment in the relevant sections
not true.
r? @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 0c6e271cd3d5e2a7f141cae811d92b8fd6370b18
32-bit floats are not enough to hold timestamps since the epoch and
result in jank.
r? @metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: 92cbb9368471d12f0d5492abd7e04b16df549366
left redirected to top, and padding redirected to margin.
r? @mbrubeck (or whoever)
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b06031cccfac2d8625dce95f6acc1bff84dde83
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)...
Source-Repo: https://github.com/servo/servo
Source-Revision: effb17b3368769baaf5247908b26b7f0dd370ea3
Need to update to new string-cache first, which I think requires a rustup?
Source-Repo: https://github.com/servo/servo
Source-Revision: 9a2f28ae33efd5216b0e1933bf186ad2fadba137
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
Source-Repo: https://github.com/servo/servo
Source-Revision: 2eb122f394651232abd683fc576a5c4288bf277f
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.
Source-Repo: https://github.com/servo/servo
Source-Revision: a54404c92180b839d2cf089d9ec9a6afe8bd5ba3
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
Source-Repo: https://github.com/servo/servo
Source-Revision: c4480b5d0309acc7f154166b91992f73a85de57f
That's the first version with the correct getrandom syscall number
for aarch64-unknown-linux-gnu.
Source-Repo: https://github.com/servo/servo
Source-Revision: ca9f9226b092f6f9349aecd53bf0b36fb5b6948e
… as it isn't painted after first layout comes in.
r? @glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 1fc50c6ccf98f3df3f47f5910a456a1fb88b73db