Commit graph

22410 commits

Author SHA1 Message Date
Xidorn Quan
e73bb054c5 Update CSSOM FFI to use string and nsCSSProperty 2016-12-16 18:09:12 +11:00
bors-servo
0bc8415485 Auto merge of #14609 - upsuper:auto-regen-atoms, r=Wafflespeanut
Update atoms when build geckolib with gecko

<!-- Please describe your changes on the following line: -->
This would automatically update the generated atom-related files in-tree before calling cargo to build geckolib. With this change, `./mach build-gecko --with-gecko` should be now the easiest way to update all in-tree bindings.

This isn't really a build-time generating, because it isn't invoked from the build script, but from mach. It isn't done the other way because
1. it doesn't seem to be a common practice for build script to write anything to the src directory
2. real build-time generated atom data wouldn't need to include atoms for multiple platforms, but we still want it so that we can build geckolib independently

cc @heycam

r? @emilio

<!-- 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/14609)
<!-- Reviewable:end -->
2016-12-15 22:05:15 -08:00
Xidorn Quan
3633384f10 Update atoms when build geckolib with gecko 2016-12-16 17:02:25 +11:00
bors-servo
da42fea6b2 Auto merge of #14605 - emilio:crashtest-bug-1323717, r=SimonSapin
style: Avoid ending up with an invalid keyframe when inf or NaN are a…

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

Fixes: https://bugzilla.mozilla.org/show_bug.cgi?id=1323717

r? @SimonSapin

<!-- 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/14605)
<!-- Reviewable:end -->
2016-12-15 17:45:12 -08:00
bors-servo
7fecaa3e84 Auto merge of #14549 - frewsxcv:child-text-content, r=Ms2ger
Implement "child text content" concept; use it where appropriate.

<!-- 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/14549)
<!-- Reviewable:end -->
2016-12-15 16:54:38 -08:00
bors-servo
bde8dce756 Auto merge of #14526 - frewsxcv:cookies, r=jdm
Attempt at refactoring and simplifying 'set cookies' operations on resource thread.

<!-- 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/14526)
<!-- Reviewable:end -->
2016-12-15 15:54:39 -08:00
bors-servo
91a2e7614c Auto merge of #14260 - asajeffrey:constellation-event-loops, r=Ms2ger
Rename ScriptChan in constellation to EventLoop

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

We currently have a type `ScriptChan` in the constellation, which is named after its implementation rather than its semantics. In the spec, the nearest concept seems to be event loop https://html.spec.whatwg.org/multipage/#event-loop.

---
<!-- 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
- [X] These changes do not require tests because renaming.

<!-- 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/14260)
<!-- Reviewable:end -->
2016-12-15 15:02:37 -08:00
Alan Jeffrey
e945e38a2d Renamed ScriptChan in constellation to EventLoop. 2016-12-15 16:58:52 -06:00
Corey Farwell
9073a2f4c6 Implement "child text content" concept; use it where appropriate. 2016-12-15 17:24:13 -05:00
bors-servo
1b2daae453 Auto merge of #14465 - servo:http, r=nox
Make the fetch target non-optional.

<!-- 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/14465)
<!-- Reviewable:end -->
2016-12-15 14:02:42 -08:00
bors-servo
6c952e12df Auto merge of #14599 - heycam:one-shot-clear-cache, r=bholley
stylo: Don't keep around cached style after one-off style resolutions.

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

r? @bholley

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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/14599)
<!-- Reviewable:end -->
2016-12-15 13:10:29 -08:00
Corey Farwell
77d2f9de36 Refactor and simplify 'set cookies' operations on resource thread. 2016-12-15 15:34:04 -05:00
bors-servo
5357f05ff7 Auto merge of #14509 - canaltinova:position, r=Manishearth
Implement background-position-x/y

<!-- Please describe your changes on the following line: -->
This is a WIP PR. Just HorizontalPosition / VerticalPosition implementations are complete. I would like to get early feedbacks about this architecture. Here's some architectural topics to consider:

- I created `HorizontalPosition` and `VerticalPosition` structs for this and used them in `Position` as well. We have decided to split `Keyword` enum, but we need them as unified for `PositionComponent` enum. So I didn't split but I can split it if we prefer to change PositionComponent as well.
- If we prefer Keyword enum like this, we can create a SubPosition(or something like this) instead of HorizontalPosition/VerticalPosition enums since only difference is 2 lines in `parse` functions. We can create a `parse_horizontal` and `parse_vertical` instead and a lot of code duplication can be cleared.
- I couldn't find a good way to use HorizontalPosition/VerticalPosition's parse functions in `Position`'s parse function. It is a bit more complicated. I'm open to suggestions :)
- I don't know much about logical keywords so do I need to do something different? I placed some comments where logical keywords are processing.

Any advice about these?

---
<!-- 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
- [X] These changes fix #14458 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes

<!-- 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/14509)
<!-- Reviewable:end -->
2016-12-15 12:15:06 -08:00
Nazım Can Altınova
ca85221525 Fix unit tests 2016-12-15 23:04:08 +03:00
bors-servo
b1337da114 Auto merge of #14493 - fokinv:stopnotifications, r=jdm
Fixed some typos in stopNotifications test.

<!-- Please describe your changes on the following line: -->
We called the startNotifications() method instead of stopNotifications() in the tests. According to the specification this method should return `InvalidStateError` and not `NetworkError`, so we changed that as well.

---
<!-- 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

<!-- Either: -->
- [x] There are tests for these changes

<!-- 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/14493)
<!-- Reviewable:end -->
2016-12-15 11:18:45 -08:00
bors-servo
1fba5f752e Auto merge of #14604 - impowski:bluetooth_manager_cleanup, r=jdm
Bluetooth manager cleanup

<!-- 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
- [x] These changes fix #14590

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because it's a cleanup

<!-- 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/14604)
<!-- Reviewable:end -->
2016-12-15 08:34:42 -08:00
Artem Biryukov
85119eb4a7
Bluetooth manager cleanup 2016-12-15 19:06:00 +03:00
bors-servo
44af5ea2e4 Auto merge of #14601 - Wafflespeanut:osmesa, r=emilio
Raise warning when OSMesa path is not set

In Ubuntu 14.04, I still get crashes due to non-existence of OsMesa library (#13515). It turned out that sometimes I have paths like `osmesa-src-<hash>` without `out/lib/gallium`. Now, we raise a warning whenever we don't find a proper path.

---
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because it's related to mach.

<!-- 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/14601)
<!-- Reviewable:end -->
2016-12-15 07:42:30 -08:00
Ravi Shankar
000d46490e Warn when OSMesa library path cannot be set 2016-12-15 18:53:14 +05:30
bors-servo
d6788a5048 Auto merge of #13650 - UK992:win32, r=larsbergstrom
Define NATIVE_WIN32_PYTHON environment variable

r? @Wafflespeanut or @larsbergstrom

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- 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/13650)

<!-- Reviewable:end -->
2016-12-15 05:14:16 -08:00
Emilio Cobos Álvarez
fa01716c52
style: Avoid ending up with an invalid keyframe when inf or NaN are at play. 2016-12-15 13:58:51 +01:00
bors-servo
4d165dbf36 Auto merge of #14602 - upsuper:auto-copy-bindgen, r=Wafflespeanut
Auto-update in-tree bindings

Automatically update the in-tree bindings after a successful geckolib build with gecko dist specified.

cc @heycam @emilio

This is very similiar to the patch that @emilio provided yesterday, so I'd ask someone else to review.

r? @bholley

<!-- 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/14602)
<!-- Reviewable:end -->
2016-12-15 03:31:40 -08:00
Xidorn Quan
af487f5730 Auto-update in-tree bindings 2016-12-15 21:33:14 +11:00
bors-servo
04d9ab50eb Auto merge of #14600 - upsuper:parallel-bindgen, r=bholley
Parallelize build-time bindgen

When there is nothing else is being compiled, this cuts the time consumption of running the bindgen part by more than half.

r? @emilio

<!-- 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/14600)
<!-- Reviewable:end -->
2016-12-15 01:51:00 -08:00
Ms2ger
1e0ab08c42 Stop returning the response from fetch(). 2016-12-15 10:50:15 +01:00
Ms2ger
217f44b67a Make the fetch target non-optional. 2016-12-15 10:49:04 +01:00
Ms2ger
6f2606cdee Introduce fetch_with_cors_cache() API for tests. 2016-12-15 10:46:04 +01:00
Ms2ger
306905a631 Use the asynchronous fetching code for fetch_with_context(). 2016-12-15 10:45:40 +01:00
Ms2ger
a5efc01b5f Use the asynchronous fetching code in unit tests.
This is the only code that is used in Servo proper, so it's a more useful
thing to test.
2016-12-15 10:45:15 +01:00
Ms2ger
c03cd45258 Replace fetch_async() by a new fetch() function.
fetch() returns immediately after processing EOF, at the latest, so not
spinning up a thread should not cause noticeable delays. OTOH, it might
reduce the contention for cores, and reduce the overall time needed.
2016-12-15 10:44:00 +01:00
Ms2ger
9d9f048b3b Introduce fetch_with_context() to reduce repetition. 2016-12-15 10:25:58 +01:00
Ms2ger
8d34ef109d Qualify the fetch() calls in unit tests. 2016-12-15 10:25:27 +01:00
Ms2ger
8a4a5c0cb5 Avoid unlocking the response body while it is in an inconsistent state. 2016-12-15 10:12:13 +01:00
bors-servo
be896712ac Auto merge of #14594 - servo:cargoup, r=jdm
Upgrade to cargo 0.16.0-nightly (16f38c1 2016-12-14)

<!-- 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
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

This version includes the new `cargo check`:
https://github.com/rust-lang/cargo/pull/3296

<!-- 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/14594)
<!-- Reviewable:end -->
2016-12-15 00:06:01 -08:00
Xidorn Quan
cbfe1832c5 Parallelize build-time bindgen 2016-12-15 18:25:08 +11:00
bors-servo
139c111091 Auto merge of #14597 - gterzian:fix_scroll_transactions, r=mbrubeck
FIX for Implement scroll transactions

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

Follow up on https://github.com/servo/servo/pull/14470

@mbrubeck @KiChjang @glennw I just found out in the context of https://github.com/servo/webrender/pull/600 I forgot to add a case for the very first scroll event, or else the scrolling on that PR, in a non-Mac OS environment, will only start after an 80ms pause following the initial scroll event...

Sorry this slipped through my initial testing...

---
<!-- 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 #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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/14597)
<!-- Reviewable:end -->
2016-12-14 22:58:55 -08:00
Cameron McCormack
64db84d4c5 stylo: Don't keep around cached style after one-off style resolutions. 2016-12-15 14:46:09 +08:00
bors-servo
d03039757c Auto merge of #14588 - servo:log-font-face, r=jdm
Add logging to font-face loading.

<!-- 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/14588)
<!-- Reviewable:end -->
2016-12-14 21:29:10 -08:00
bors-servo
fde9ac1768 Auto merge of #14586 - deror1869107:Remove-ResponseAction, r=jdm
Remove-ResponseAction

<!-- Please describe your changes on the following line: -->
Remove the old Enum ResponseAction and use net_traits::FetchResponseMsg instead.

---
<!-- 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
- [X] These changes fix #13717 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because @KiChjang said so.

<!-- 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/14586)
<!-- Reviewable:end -->
2016-12-14 20:34:01 -08:00
bors-servo
535563be31 Auto merge of #14581 - bholley:dont_traverse_xbl, r=heycam
stylo: Avoid traversing children of XBL-bound elements during initial styling

Corresponding Gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1294572

CC @heycam @emilio

<!-- 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/14581)
<!-- Reviewable:end -->
2016-12-14 19:41:12 -08:00
bors-servo
bffac0f55e Auto merge of #14412 - glennw:update-wr-clip-2, r=pcwalton
Update WR + gleam (nested clip stack, scroll locations).

<!-- 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/14412)
<!-- Reviewable:end -->
2016-12-14 18:46:25 -08:00
Glenn Watson
f517d03364 Update WR (typed units, glyph cache, various features). 2016-12-15 12:11:51 +10:00
bors-servo
49133d1f49 Auto merge of #14580 - heycam:bindings-update-11, r=emilio
stylo: regenerate bindings

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

This corresponds to https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=10ac81fb6185037648c6694889aa030d28a5e8a5.

There's probably no meaningful change here, but there's a lot of churn since I just changed locally to using clang-3.9.  r? @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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/14580)
<!-- Reviewable:end -->
2016-12-14 17:40:55 -08:00
bors-servo
4eb653817f Auto merge of #14592 - asajeffrey:util-goodbye, r=mbrubeck
Remove the util crate

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

This PR removes the `util` crate.

* Replaced the `spawn_named` and `clamp` functions by appropriate uses of `std:🧵:Builder::spawn`, `std::cmp::min` and `std::cmp::max`.
* Moved `opts`, `prefs` and `resource_files` into a new `config` crate.
* Moved `remutex` and `geometry` into their own crates.

---
<!-- 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
- [X] These changes do not require tests because they are refactorings

<!-- 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/14592)
<!-- Reviewable:end -->
2016-12-14 16:48:42 -08:00
Alan Jeffrey
9be4fd56ce Removed util. 2016-12-14 18:04:37 -06:00
bors-servo
6ee175bf70 Auto merge of #14567 - szeged:represented-attributes, r=jdm
Check if represented attributes are cached

<!-- Please describe your changes on the following line: -->
Improve existing cache checks in `/bluetooth/lib.rs`, and update Step comments in `script/dom` corresponding to this.

---
<!-- 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
- [x] There are tests for these changes OR

<!-- 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/14567)
<!-- Reviewable:end -->
2016-12-14 15:29:43 -08:00
Gregory
48e3ecf71c also send Start phase on receiving first scroll event 2016-12-15 00:06:34 +01:00
Nazım Can Altınova
ed806efade Make background-position a shorthand instead of a longhand 2016-12-15 01:36:30 +03:00
Nazım Can Altınova
b302642592 Implement background-position-x/y 2016-12-15 01:36:27 +03:00
bors-servo
eb1bd59682 Auto merge of #14552 - szeged:advertising_event, r=jdm
Replace AdvertisingData with AdvertisingEvent

<!-- Please describe your changes on the following line: -->
The spec changed AdvertisingData to an event. The low level support is still missing.

---
<!-- 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

<!-- Either: -->
- [X] There are tests for these changes

<!-- 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/14552)
<!-- Reviewable:end -->
2016-12-14 13:53:51 -08:00