Commit graph

24669 commits

Author SHA1 Message Date
bors-servo
fac0d17fd6 Auto merge of #16224 - servo:valid-fontface, r=upsuper
Make the parser accept @font-face rules without font-family or src.

Fix #16165.

Also, it turns out that the CSSFontFaceRule IDL specified in the css-fonts spec is not web-compatible. Instead browsers implement a .style attribute like in CSSStyleRule: https://github.com/w3c/csswg-drafts/issues/825

This in turn requires preserving data about which descriptors were set or not (distinguishing unset from set to a value that happens to be the initial value), so this commit also makes every field `Option<_>`.

<!-- 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/16224)
<!-- Reviewable:end -->
2017-04-03 03:53:09 -05:00
bors-servo
5b037a0aa0 Auto merge of #16235 - upsuper:bug1351957, r=heycam
Create URLExtraData for holding base uri, referrer, and principal

This is the Servo side change of [bug 1351957](https://bugzilla.mozilla.org/show_bug.cgi?id=1351957) which has been reviewed on Bugzilla.

<!-- 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/16235)
<!-- Reviewable:end -->
2017-04-02 23:30:56 -05:00
Xidorn Quan
e1fa699d6e Update binding files. 2017-04-03 14:30:35 +10:00
Xidorn Quan
0a97a0df0c Create URLExtraData for holding base uri, referrer, and principal. 2017-04-03 14:30:33 +10:00
bors-servo
a31271b07f Auto merge of #16233 - hiikezoe:timing-function-fix, r=emilio
Set each control points when converting specified keyworded timing fu…

…nction to nsTimingFunction.

Gecko's timing function (nsTimingFunction) needs to be specified
each control points if timing function can be represented as cubic-bezier
function. To avoid scattering control points values (e.g. 0.25, 0.1, ...)
we convert specified value to computed value and then use control points
values of the computed value.

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

This is a PR of  https://bugzilla.mozilla.org/show_bug.cgi?id=1352891

---
<!-- 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
- [x] These changes do not require tests because it's for stylo.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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/16233)
<!-- Reviewable:end -->
2017-04-02 20:12:09 -05:00
Hiroyuki Ikezoe
f36199201c Set each control points when converting specified keyworded timing function to nsTimingFunction.
Gecko's timing function (nsTimingFunction) needs to be specified
each control points if timing function can be represented as cubic-bezier
function. To avoid scattering control points values (e.g. 0.25, 0.1, ...)
we convert specified value to computed value and then use control points
values of the computed value.
2017-04-03 10:11:21 +09:00
bors-servo
eb1865070a Auto merge of #16232 - hiikezoe:justify-content-fix, r=bholley
Fix justify-content values.

<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1352771

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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/16232)
<!-- Reviewable:end -->
2017-04-02 17:47:09 -05:00
Hiroyuki Ikezoe
4fa9090a0e Fix justify-content values. 2017-04-03 07:29:35 +09:00
bors-servo
e45d7e0e2e Auto merge of #16200 - glennw:update-wr-clear-opts, r=emilio
Update WR (various optimizations, gradient improvements).

<!-- 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/16200)
<!-- Reviewable:end -->
2017-04-02 17:05:01 -05:00
Glenn Watson
6dd3bc29e1 Update WR (various optimizations, gradient improvements). 2017-04-03 06:48:27 +10:00
bors-servo
2df6e26fd7 Auto merge of #16230 - nox:ssl, r=jdm
Introduce create_ssl_client

<!-- 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/16230)
<!-- Reviewable:end -->
2017-04-02 09:12:44 -05:00
Anthony Ramine
20e0b6cd56 Introduce create_ssl_client
This lets us reuse the same SSL context for all HTTPS requests.
2017-04-02 15:27:40 +02:00
Anthony Ramine
ecd9ac9b68 Reorder and reorganise imports in net::connector 2017-04-02 14:57:19 +02:00
bors-servo
dc3765e231 Auto merge of #16225 - jdm:revertpooling, r=KiChjang
Disable HTTP connection pooling

The intermittent failures in the nosniff tests appeared once more after #16209 merged, so we should disable this again.

<!-- 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/16225)
<!-- Reviewable:end -->
2017-04-01 17:32:24 -05:00
bors-servo
fb3c52e792 Auto merge of #16226 - bholley:doomed_nac, r=emilio
stylo: Introduce is_native_anonymous and cull style traversal of doomed NAC

Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1352570
2017-04-01 14:34:33 -05:00
Bobby Holley
7e3671fc4c Introduce is_native_anonymous and cull style traversal of doomed native anonymous content.
MozReview-Commit-ID: LqwmavJnqW
2017-04-01 12:33:37 -07:00
bors-servo
e2671459cb Auto merge of #16223 - jdm:xml5everup, r=SimonSapin
Update xml5ever.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #16213

<!-- 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/16223)
<!-- Reviewable:end -->
2017-04-01 09:30:39 -05:00
Josh Matthews
30fad4ea9d Revert "Enable HTTP pooling again (fixes #15694)". 2017-04-01 10:26:51 -04:00
Simon Sapin
131b12dc67 Reject @font-face descriptors with value value followed by more stuff. 2017-04-01 14:54:57 +02:00
Simon Sapin
b43e2fb0df Macroize conversion of @font-face values to Gecko types 2017-04-01 14:05:32 +02:00
Simon Sapin
61812d4d9d Make the parser accept @font-face rules without font-family or src.
Fix #16165.

Also, it turns out that the CSSFontFaceRule IDL specified in the
css-fonts spec is not web-compatible.
Instead browsers implement a .style attribute like in CSSStyleRule:
https://github.com/w3c/csswg-drafts/issues/825

This in turn requires preserving data about which descriptors
were set or not (distinguishing unset from set to a value that happens
to be the initial value),
so this commit also makes every field `Option<_>`.
2017-04-01 14:05:32 +02:00
bors-servo
449758ef5d Auto merge of #16096 - stshine:die-modify-style-die, r=emilio
Use Servo-specific pseudo elements for anonymous box and text

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

Use some fake pseudo elements to style servo-specific boxes in servo. Also, Since for nested inline elements non-inheritable properties are properly stored in the inline context of an inline fragment, so get
rid of them on the style using empty pseudo to do cascading.

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

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

<!-- 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/16096)
<!-- Reviewable:end -->
2017-04-01 06:02:08 -05:00
Pu Xingyu
6da65d605b Various cleanups
Remove some hacks in layout, and unused function in style.
2017-04-01 18:49:50 +08:00
Josh Matthews
70a7c6c90a Update xml5ever. 2017-04-01 02:55:40 -04:00
Pu Xingyu
951c050690 Use empty pseudo to cascade only inheritable properties for text
Since for nested inline elements non-inheritable properties are
properly stored in the inline context of an inline fragment, so get
rid of them on the style.
2017-04-01 14:05:11 +08:00
bors-servo
2ebddca592 Auto merge of #16210 - jdm:updatejs, r=Wafflespeanut
Update rust-mozjs to master.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #16152
- [X] There are tests for these changes

<!-- 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/16210)
<!-- Reviewable:end -->
2017-04-01 00:05:56 -05:00
bors-servo
15fc9f3bbf Auto merge of #16219 - servo:jdm-patch-2, r=Wafflespeanut
Fix macOS nightly creation.

Our change to keep around build artifacts broke the macOS nightly generation process, since hdiutil can't cope with the dmg file already existing.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #16218
- [X] These changes do not require tests because I tested manually and we build every night

<!-- 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/16219)
<!-- Reviewable:end -->
2017-03-31 23:28:13 -05:00
Josh Matthews
3dd74bb177 Delete any existing dmg before recreating it. 2017-04-01 00:14:40 -04:00
bors-servo
325713af38 Auto merge of #16209 - nox:net, r=jdm
Enable HTTP pooling again (fixes #15694)

<!-- 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/16209)
<!-- Reviewable:end -->
2017-03-31 17:56:11 -05:00
bors-servo
6484109025 Auto merge of #16211 - fitzgen:little-trace-dump-stuff, r=jdm
Little HTML profile trace dumps related stuff

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

Updates to fix the labels in the rendered traces, and some other tiny stuff.

r? @jdm

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

<!-- 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/16211)
<!-- Reviewable:end -->
2017-03-31 17:11:00 -05:00
Nick Fitzgerald
9ef436cf8e Move trace file opening into TraceDump::new
Moves the responsibility of opening the trace file into TraceDump::new, so that
it doesn't need to be repeated at every call site.
2017-03-31 14:47:29 -07:00
Nick Fitzgerald
f003fdf106 Derive Debug for TraceDump 2017-03-31 14:35:37 -07:00
Nick Fitzgerald
35f94273bb Update components/profile/trace-dump.js to 6f7906
This updates the trace-dump.js file to
6f79066814:

> commit 6f790668140d44a8641e441d3ac0e64364b8c0ca
> Author: Nick Fitzgerald <fitzgen@gmail.com>
> Date:   Fri Mar 31 14:26:31 2017 -0700
>
>     Update for new serde-json data format
>
>     Not sure when this happened, but at some point enum variants without any tuple
>     struct members became simple strings.
2017-03-31 14:32:40 -07:00
Anthony Ramine
1ff2bebdd7 Enable HTTP pooling again (fixes #15694) 2017-03-31 23:09:51 +02:00
Josh Matthews
8cba0dff8b Update rust-mozjs to master. 2017-03-31 14:40:38 -04:00
bors-servo
e264be7dd7 Auto merge of #16203 - servo:rustup, r=nox
Upgrade to rustc 1.18.0-nightly (474f7a91e 2017-03-31)

<!-- 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/16203)
<!-- Reviewable:end -->
2017-03-31 13:06:37 -05:00
bors-servo
82b0d5ad54 Auto merge of #15868 - servo:hyper, r=jdm
Update Hyper and OpenSSL

<!-- 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/15868)
<!-- Reviewable:end -->
2017-03-31 11:46:09 -05:00
bors-servo
bb4ea82b23 Auto merge of #16205 - bzbarsky:fix-pseudo-preshints, r=Manishearth
Presentation hints should not get applied to pseudo-elements.

Servo side of https://bugzilla.mozilla.org/show_bug.cgi?id=1352464

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

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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/16205)
<!-- Reviewable:end -->
2017-03-31 11:05:50 -05:00
Boris Zbarsky
a58b19e7d3 Presentation hints should not get applied to pseudo-elements.
Servo side of https://bugzilla.mozilla.org/show_bug.cgi?id=1352464
2017-03-31 12:03:07 -04:00
bors-servo
3f83628fa9 Auto merge of #13713 - TheKK:fix_a_tag_referrer_policy_test, r=jdm
Fix referrer policy tests for a-tag

This RP tries to fix referrer policy test for <a> which was introduced in #12493 (sorry for my silly mistake). But the fact that Servo lakes of some functionalities make these tests a little tricky to do.

The desired solution for tests for <a> is to:
1. create a document which is running test harness
2. append an `<iframe>` to its parent document and give it a name
3. append and `<a>` to its parent document and set its `target` as `<iframe>`'s name
4. each referrer policy attribute (eg. HTTP header, <meta>) would contribute to `<a>` directly
5. we call `click()` on `<a>` and when the test was done, we call `postMessage()` inside `<iframe>` to notify its parent document

And target feature for `<a>` and cross origin `postMessage()` is still on its way. My solution is:
1. create a document which is running test harness
2. append an `<iframe>` to its parent document
3. append and `<a>` into `<iframe>`
4. we call `click()` on `<a>` and `<iframe>` navigate to `<a>`'s href

Current solution does not work for some cases:
- HTTP header, it only apply to test harness html document but `<a>` inside `<iframe>`
- cross origin detection, we navigate `<iframe>` rather than its parent document, which make test expectation wrong

One workaround in my mind is to load our test harness html document **inside** `<iframe>` under sandbox, so the test won't run again and we get `<meta>` and HTTP header as we expect. But this would break some consistency in `common.js` and make thing more complex.

---

Sorry for the long description. But I'd like to hear more thought before I actually make things dirty, and find the most proper solution for this.

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

<!-- Reviewable:end -->
2017-03-31 09:46:02 -05:00
ddh
e527c9a991 Update Hyper and OpenSSL 2017-03-31 16:32:21 +02:00
Anthony Ramine
f66cae3f96 Revert "Introduce create_ssl_context"
This reverts commit 7a4632bfa2.
2017-03-31 16:19:00 +02:00
Anthony Ramine
857958f516 Revert "Store SSL context in ResourceGroup"
This reverts commit 02b2aa159a.
2017-03-31 16:18:59 +02:00
Anthony Ramine
19a2516e10 Disable wss support
None of the existing websocket libraries are currently able to cope
with openssl 0.9 and be featureful, so we are disabling wss for now
to land openssl 0.9.
2017-03-31 16:18:47 +02:00
bors-servo
e69bc2e0d3 Auto merge of #16204 - emilio:unify-note-descendants, r=emilio
stylo: Relax assertion that doesn't hold in layout/style/test/test_pseudoelement_state.html

It deserves more investigation, we should probably clear NAC data on
ServoRestyleManager::ClearServoDataFromSubtree, but not worth to keep the tree
orange meanwhile.
2017-03-31 09:05:32 -05:00
Emilio Cobos Álvarez
cdbb2c5d0d
stylo: Relax assertion that doesn't hold in layout/style/test/test_pseudoelement_state.html
It deserves more investigation, we should probably clear NAC data on
ServoRestyleManager::ClearServoDataFromSubtree, but not worth to keep the tree
orange meanwhile.
2017-03-31 16:03:09 +02:00
Ying-Ruei Liang(KK)
0edab51f05
Clean and fix referrer policy wpt for a-tag
Signed-off-by: Ying-Ruei Liang(KK) <thumbd03803@gmail.com>
2017-03-31 21:31:54 +08:00
Simon Sapin
de01c59891 Upgrade to rustc 1.18.0-nightly (474f7a91e 2017-03-31) 2017-03-31 15:09:04 +02:00
bors-servo
955d3a8b87 Auto merge of #16201 - Manishearth:text-emph-pos, r=emilio
stylo: Handle text-emphasis-position pres attrs

Somehow slipped through the cracks.

try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=e1d349e847b528be3d61ad2ebf374a791800cfbb

<!-- 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/16201)
<!-- Reviewable:end -->
2017-03-31 06:01:06 -05:00
bors-servo
a70e4ac5b2 Auto merge of #16202 - BorisChiou:stylo/animation/initial_computed_keyframes, r=emilio
stylo: Bug 1352067 - Initialize StyleAnimationValue with zeros.

AnimationValue::mGecko and AnimationValue::mServo are mutually
exclusive, so we have to make sure mGecko.IsNull() returns reasonable
value, or we will got assertions. Hence, we should initialize it during
constructing StyleAnimationValue from Servo side.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix Bug 1352067.
- [X] These changes do not require tests because there are enough tests in Gecko

<!-- 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/16202)
<!-- Reviewable:end -->
2017-03-31 05:20:26 -05:00