Commit Graph

709 Commits

Author SHA1 Message Date
Connor Brewster
757c29a90e servo: Merge #15438 - Add ImmutableOrigin to allow for serializing origins (from asajeffrey:url-serializable-origin); r=jdm
<!-- Please describe your changes on the following line: -->

This PR adds a serializable type `ImmutableOrigin` and a non-serializable type `MutableOrigin`. The immutable type represents an origin with `null` domain, and the mutable type represents an origin with a mutable domain. This separation is needed for implementing setting `document.domain`.

---
<!-- 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 #14892.
- [X] These changes do not require tests because it's a refactoring which will enable other features.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 78e8c31a4d1890260dda83f2db85672f693c1e97

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3f155b8a66957ab70878c9287541a2dfc9bbb7ef
2017-02-22 09:46:27 -08:00
Connor Imes
efcc5fdcc9 servo: Merge #15458 - Update heartbeats-simple dependencies for bug fixes (from connorimes:hbs-0.4); r=emilio
<!-- Please describe your changes on the following line: -->

Updates heartbeats-simple dependencies for some bug fixes in native code (primarily for Windows).
Now we create heartbeats as needed so we don't have to maintain a hardcoded list which keeps getting out of sync.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it updates a dependency and performs some code maintenance.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 2bfea912dccd5e76e062143f3d48d2a66118fc59

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2bef9da3e72c3091214b574e4d41b539d861b644
2017-02-22 09:05:37 -08:00
Hiroyuki Ikezoe
e3c3c9bba8 servo: Merge #15683 - Fill missing property in keyframe (from hiikezoe:fill-missing-property-in-keyframe); r=emilio
<!-- Please describe your changes on the following line: -->
This is a PR of https://bugzilla.mozilla.org/show_bug.cgi?id=1340961
All patches has been reviewed by @emilio.

Thanks!

---
<!-- 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: -->
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4f7e422054237c8ba0a8e521a615a6012b90eab4

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 88f25cc970f606ceb4a586cc2aa2273d2b9f48d8
2017-02-22 08:17:18 -08:00
Anthony Ramine
12f49cb702 servo: Merge #15670 - Kill the plugins crate and its clippy support (from nox:die-plugins-die); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 14bbe9d8729dece2d80bb651bca1c2eda13d0429

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e37e34fddb2107725548a4af0b2bb1ba21d5d70e
2017-02-21 05:15:15 -08:00
Huxley
c9fa1b34e6 servo: Merge #15612 - fixed the wrong behavior of border-spacing (from UnICorN21:master); r=canaltinova
fixed the wrong behavior of border-spacing
---
<!-- 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 #15489.

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: d724bffde80fec1698a485698d8743022a1e9d57

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dc82e9b07fe6ec0541c1a4672865c5ca792e5cf2
2017-02-21 01:09:35 -08:00
Nazım Can Altınova
0295a47cae servo: Merge #15662 - Fix parsing methods of column-{gap,width} (from canaltinova:column); r=Manishearth
<!-- Please describe your changes on the following line: -->
They weren't accepting {normal, auto} keywords. Fixed parsing methods of these properties.

---
<!-- 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 #15088 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: f86e71150677adf472ab1d14c47731f47e52220d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 32e118a60b94a3b28f51605a9bd685c80d7a4b69
2017-02-20 10:28:03 -08:00
Michael Nelson
3c2a078ea5 servo: Merge #15516 - Animation longhand serialization should be a list of each animation rather than a list of lists for each longhand (from absoludity:fix-animation-serialization-15398); r=upsuper
Fixes part of #15398 -  serialization should be a list of each animation, rather than a list of lists for each longhand.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes are prework for #15398

- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

Source-Repo: https://github.com/servo/servo
Source-Revision: 978a603190dc7230c95ef9ecaca9dcdb1a78bf4c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3b976017e90e7239ce0a8ce7f434ea127c57df29
2017-02-19 19:41:19 -08:00
Anthony Ramine
b20ac2cefb servo: Merge #15588 - Update serde to 0.9 (from servo:serde); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 7f3a75fa804c0be67f1567ca4a2449cebefa9616

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ee100538644baf6bfc695351c42ab95295d7264f
2017-02-18 12:10:26 -08:00
Anthony Ramine
ba474011c0 servo: Merge #15584 - Move script lints to script_plugins (from nox:plugin); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a099d27f99dadf3f7c26d997e43c1a12e0c5bd0e

--HG--
rename : servo/components/plugins/lints/ban.rs => servo/components/script_plugins/ban.rs
rename : servo/components/plugins/jstraceable.rs => servo/components/script_plugins/jstraceable.rs
rename : servo/components/plugins/lib.rs => servo/components/script_plugins/lib.rs
rename : servo/components/plugins/lints/unrooted_must_root.rs => servo/components/script_plugins/unrooted_must_root.rs
rename : servo/components/plugins/utils.rs => servo/components/script_plugins/utils.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d9f5feb6fec348aa13107d51c21f3a7861c37eee
2017-02-16 10:58:19 -08:00
Anthony Ramine
fb18b1bc80 servo: Merge #15537 - Update ipc-channel to 0.6.3 (from servo:webrender); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 4a0b730cafd09fbd6e5cbc00727caef9b3cae315

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ff60d998ee96372d2dc811e5e73b730801c4f5c9
2017-02-16 03:53:49 -08:00
Anthony Ramine
ebd0059363 servo: Merge #15567 - Replace inheritance_integrity by trait shenanigans (from nox:plugin); r=SimonSapin
Replace inheritance_integrity by trait shenanigans

Source-Repo: https://github.com/servo/servo
Source-Revision: 84a44a401424852bc44ef5e751e84544ed892e70

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9ea9f048cd4b0617f1385b8ee6c3b170956087e1
2017-02-15 20:49:47 -08:00
Anthony Ramine
38f941302b servo: Merge #15559 - Allow disabling LLVM assertions in rustc (fixes #15548) (from servo:rustup); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 4f10a0f2e1ae545649957cc7e305c8cb81312759

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5a783721d549881760dfac0fe76eee89b88eea70
2017-02-15 06:46:22 -08:00
Simon Sapin
f79ed665d6 servo: Merge #15552 - Update cssparser to 0.9 (from servo:cssparserup); r=nox
<!-- 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 _____

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 216a89f7766dd366c4afbeae42cf6e1fb4f67349

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4fda145836ce21afef7e9733c770f937b94a34d2
2017-02-15 03:58:38 -08:00
Anthony Ramine
12517b71f8 servo: Merge #15545 - Kill some more plugins (from nox:plugin); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 9702d6920a7cf6506fa26c042eb4b9f7cd061713

--HG--
rename : servo/components/jstraceable_derive/Cargo.toml => servo/components/deny_public_fields/Cargo.toml
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4ca092326be5bdfb96f4e5dd1595e9248576f6e8
2017-02-15 01:24:39 -08:00
Dawing Cho
d033240c73 servo: Merge #15539 - Add rejection of out-of-range values for single-timing-functions (from AdmiralCoco:reject_outofrange_transition_values); r=emilio
<!-- Please describe your changes on the following line: -->
This PR fixes #15344, checking for the `cubic-bezier p1x/p2x` and `steps` first value after parsing.

There are unit tests that check for parsing of invalid values - I was not sure if there was a more suitable place, so I created a file (name subject to change).

Q: I found this [test suite](https://github.com/servo/servo/blob/master/tests/unit/style/properties/serialization.rs#L592), and noticed that the `p2x` value is out of range, but the test does not fail - is this because there is no check when calling the function itself?

Thanks!

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: f3bacf84f47e12ef50cfd8ddd0aad613fe7e2a05

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3ad1d3dae1772cc5bf6d2f8b289c142597ea7a24
2017-02-14 19:25:49 -08:00
Emilio Cobos Álvarez
2f276aa7e7 servo: Merge #15518 - style: Unbox a bunch of color properties (from emilio:color); r=SimonSapin
This builds on https://github.com/servo/rust-cssparser/pull/118.

Source-Repo: https://github.com/servo/servo
Source-Revision: 357bf3b85a1b548ba012f95a97853b34035c89ab

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : af82ad1d14fefde10323d92f1b7ad75768436aec
2017-02-14 11:43:16 -08:00
Eddie Quan
46751c85a2 servo: Merge #15546 - fixes quote transform: none serialization (from eddiequan:15209_fix_quotes_serialization_transform_none); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Adds a unit test to reproduce faulty behaviour, and serializes "none" correctly when provided an empty list.

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

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 2ea55ae1ad22cadb7e808ce9d538ff25564383f0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 692b382f0ef9bb0ae130b68a612d528d1fb3cb70
2017-02-14 10:41:58 -08:00
Zakor Gyula
67516483ed servo: Merge #15314 - Permissions API and WebBluetooth integration (from szeged:permissions-api); r=jdm
<!-- Please describe your changes on the following line: -->
This implements the [Permissions API](https://w3c.github.io/permissions/) spec.
Also includes the WebBluetooth related implementation for this.

There are some know issues:
- [ ] If the descriptor name is invalid [this](https://gist.github.com/dati91/7a6a0a563d90f49ba5a351e48c5b626b#file-permissionstatusbindings-rs-L323) will throw an error, rather that return it and we could handle it.
- [x] The [environment settings object](https://html.spec.whatwg.org/multipage/webappapis.html#environment-settings-object) is not implemented in servo and the spec rely on it.
- [x] There is a popup in the implementation which prevent us to add wpt test, we should figure out a way to make it work
- [ ] The allowedDevice's allowed_services attribute is not used in our implementation, because we store these in the lower level, not in the dom side.
- [ ] We think the bluetooth revoke function will need some more work, but the problem is the spec needs clarifications on that part.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: a537cf48b18d9bba3453b924a4453f5e19dea4ed

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 50bc944e75966879ab6aca2a6cc229212e733d64
2017-02-14 08:09:22 -08:00
Cameron McCormack
54828ee07e servo: Merge #15538 - Do RestyleHint assertions at runtime so they use build-time bindgen (from heycam:mv-test); r=bholley
Currently these assertions work off the in-tree bindings.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: dda5c3c3229d399672cbd7909d2b34f8985d4f3f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5250087cba110493962b25b43769d9907e0ce3f6
2017-02-13 19:44:12 -08:00
Cameron McCormack
c26c254d4b servo: Merge #15523 - stylo: align RESTYLE_STYLE_ATTRIBUTE value with eRestyle_StyleAttribute (from heycam:rshint-style); r=bholley
This is the Servo-side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1338461, which @bholley reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: b8fcf127df8009791ef37fcf02d72c8ddd7c5998

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6d353c0901666199b6b0904edc2236cf02317710
2017-02-13 00:44:48 -08:00
Alon Levy
ea8e400651 servo: Merge #15514 - fix #15492 (Negative ShapeRadius values should be invalid) (from alon:master); r=emilio
<!-- Please describe your changes on the following line: -->
Address issue #15492 -  Negative value in <shape-radius> should be invalid

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15492 (github issue number if applicable).

- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 45db39cc0406a90273a5a74738fe94943a57b142

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7f14b740cedf26f247f187aaef2df1c5e458fe57
2017-02-12 03:15:36 -08:00
Julien Levesy
e91f010bfa servo: Merge #15454 - use ::parse_non_negative instead of ::parse for background_size property parsing (from jlevesy:bg-size-reject-negative-values); r=SimonSapin
Use  `::parse_non_negative` instead of `::parse` for background_size property parsing

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

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ce7827eadfcceb37e779846926c2b2f72c08dd72

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0e5381479ea5ea3481e80ebf1f0e2623e465eba7
2017-02-09 14:55:14 -08:00
Emilio Cobos Álvarez
db2a064cb8 servo: Merge #15459 - style: Ensure that precomputed pseudo-element declarations are correctly sorted (from emilio:ua-rules); r=SimonSapin
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1337657

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d1836e32bfd1337a3acdf91abb409a399c9f5e3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8cb45c25319dd34e9175931ceab60b33b5685499
2017-02-09 04:20:34 -08:00
Nazım Can Altınova
1020720464 servo: Merge #15411 - Box larger specified values to avoid memmove impact (from canaltinova:property-declaration); r=SimonSapin
<!-- Please describe your changes on the following line: -->
Box larger specified values to avoid memmove impact.

---
<!-- 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 #15322 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 5c609213d68a17f65ae4e64c34d8dc6b66d35784

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b4776afd52e97b8493ef9093c229845c9b8821e5
2017-02-09 02:21:36 -08:00
Alberto Leal
ac749c5123 servo: Merge #15357 - Refactor outline-style to accept "auto" value in addition to border-style values (from dashed:gh-15207); r=Wafflespeanut,emilio
Fixes https://github.com/servo/servo/issues/15207

Refactored as per https://github.com/servo/servo/issues/15207#issuecomment-275171590 .

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

- [x] Correct refactor? I'd appreciate any feedback on this.
- [x] ~~~proper borderstyle value for `outline-style: auto;`?~~~ ~~~(EDIT: deferred to a `FIXME`)~~~ (EDIT2: it is now solid for behaviour parity with firefox)
- [x] squash pending PR review
- [x] mako code review

---
<!-- 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 #15207 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 368af6f8619804244a7d8ba4614f0b4950cfd9f1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e2c20e25b0f8fea6d8da236085f918c1efd8b8ad
2017-02-08 21:10:57 -08:00
Bobby Holley
a9e7b86e87 servo: Merge #15462 - Accumulate parent elements that need selector bits set on the ThreadLocalStyleContext (from bholley:accumulate_selector_flags); r=emilio
Discussion and review in https://bugzilla.mozilla.org/show_bug.cgi?id=1336646

Source-Repo: https://github.com/servo/servo
Source-Revision: cbfd4464270f8690b90b9b96c395523a3a39e2de

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3bfb03915e31cb95db1b247edb24872eb1cfcf5
2017-02-08 19:33:27 -08:00
Bobby Holley
fd99deb665 servo: Merge #15447 - Move rust-selectors into servo/servo (from bholley:in_tree_selectors); r=SimonSapin
See the thread at [1].

[1] https://groups.google.com/d/msg/mozilla.dev.servo/iHykieVC5SM/Z31_n0agBAAJ

Source-Repo: https://github.com/servo/servo
Source-Revision: 8aec1ccdd22145df0ca7bb9456b40b3175fc5992

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b45d7b526718eb826d64906aa7514f1806a074ae
2017-02-08 16:06:06 -08:00
Atheed Thameem
1e16d07cc0 servo: Merge #15360 - Ensured all font-weight keywords are preserved until computed-value time (from atheed:font-weight-keyword); r=emilio
Fixed the serialization of `font-weight` keywords (i.e. `bold`, `normal`, etc.) to ensure that Servo preserves the keyword until computed-value time (just as other major browsers do).

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 287b02e21fa2c81d58b070be36add5e951512679

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 949ec8039bdaa5b396bbf3df53112fc0ee565992
2017-02-08 11:04:29 -08:00
Anthony Ramine
adff1c356b servo: Merge #15440 - Update selectors to 0.17 (from KiChjang:selectors); r=KiChjang
Closes #15434.

Source-Repo: https://github.com/servo/servo
Source-Revision: f7e75fd0012b9a063718f56e5aab093dde40d42f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cff895ff34f92aaae2935c59f76fbb05ad3ee41e
2017-02-07 20:36:59 -08:00
Ms2ger
4264cc8a33 servo: Merge #15424 - Fix some build warnings (from servo:warnings); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: c48a326fb37976ec9e808825c9641602bccefa56

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 77f616e0b846a226174adaba0f6d545bee8288e8
2017-02-07 07:16:22 -08:00
Sam
184b050b27 servo: Merge #15237 - Allow negative values for letter-spacing and word-spacing. Inline Le… (from samuknet:negative-letter-spacing-word-spacing); r=emilio
<!-- Please describe your changes on the following line: -->
Allow negative values when parsing `letter-spacing` and `word-spacing`.  Inline `parse_non_negative` in `Length`.

---
<!-- 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 #15204 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 449147b8df3b81621c54af615eb1adb8589eb83b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5555d123f38aef43237a4cd87256e87d757340b2
2017-02-06 19:29:31 -08:00
Xidorn Quan
93d7f54702 servo: Merge #15298 - Fix two issues of parsing and serialization of mask shorthand (from upsuper:mask-shorthand); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5f0c294caf85e67ff5b04f28b4a4d54930d7d952

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8205fd60c804f502556f304a54f9847d6fa21ad3
2017-02-05 15:30:09 -08:00
mrmiywj
5e7d1db6ab servo: Merge #15383 - add support for mask_position_parse/serial (from mrmiywj:mask_position_parse/serial); r=canaltinova
<!-- 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 #14955  (github issue number if applicable).

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 97cc71b661111d3c0b16b8daeb9aee675c09e237

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 291cee37a388a5ed7029fea0cc9b62e44ba30287
2017-02-04 12:17:44 -08:00
Simon Sapin
7f9604757a servo: Merge #15356 - Add support for more @font-face descriptors (from servo:font-face-descriptors); r=Manishearth
<!-- Please describe your changes on the following line: -->

Part of https://bugzilla.mozilla.org/show_bug.cgi?id=1290237. I’ll add conversions to `nsCSSValue` separately because that requires new C++ functions in the stylo repository.

r? @bholley

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 48f3cc83257554dc09c4489fbfaf2f702a1083f3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e4dfe03f4703302e56c7c1c52ddd5bd9680d48fd
2017-02-03 05:09:30 -08:00
Hiroyuki Ikezoe
075e5578ae servo: Merge #15299 - Create KeyframeAnimation for empty keyframe rules (from hiikezoe:empty-keyframe); r=emilio,pcwalton
<!-- Please describe your changes on the following line: -->
We should create KeyframeAnimation even if css keyframe rule is empty because we should fire css animation events for such CSS animations.
Also we should ignore properties that are annotated with '!important'.  From the spec[1].
 using !important on them is invalid and will cause the property to be ignored

[1] https://drafts.csswg.org/css-animations-1/#keyframes
---
<!-- 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 #15257

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 77f53aae3eee59957521ea76e95bd3e454c4ddd9
2017-01-31 14:42:06 -08:00
Emilio Cobos Álvarez
97b30b2655 servo: Merge #15288 - Refactor more stuff in preparation for special handling for restyling using the style attribute (from emilio:style-attr-restyle); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 166b30484061ae7c58f721ac9082d13c83834fae
2017-01-30 14:54:26 -08:00
Atheed Thameem
a7aecc8674 servo: Merge #15278 - Parsing "0" as Number for line-height and border-image-outset (from atheed:zero-parsing); r=Wafflespeanut
Fixes #15171 by correctly parsing `0` as `0` (rather than as `0px`, as was the case earlier) for the `line-height` and `border-image-outset` CSS properties. Wrote unit tests for both; `./mach test-unit -p style` passes all tests.

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: dfcfc1d2c158edb05ac7d2da3796008947b580df
2017-01-28 22:18:44 -08:00
Matt Brubeck
fc6dd7a765 servo: Merge #15268 - Make text-orientation:sideways-right an alias for sideways in Gecko (from mbrubeck:sideways); r=upsuper
Fixes #15214. r? @upsuper

Source-Repo: https://github.com/servo/servo
Source-Revision: ec12b7665b5cf35b13932a7c17901ffb8e73b5ee
2017-01-28 17:24:47 -08:00
Ravi Shankar
4df106b306 servo: Merge #15115 - Introduce the NoCalcLength (from Wafflespeanut:lop); r=emilio
<!-- Please describe your changes on the following line: -->

I began this for making the `CalcLengthOrPercentage` represent `LengthOrPercentage` (instead of the enum we already have), but only later did I realize that it will make `LengthOrPercentageOrFoo` types fatty (which is the problem we're trying to avoid - #15061) and so, I dropped that attempt. Along the way, I introduced an internal type for `Length`, for representing all its non-calc variants (which are `Copy`). We could still have this type for the `LengthOrPercentageOrFoo` types which don't really need  `Length` since they already have their own variants for calc.

r? @Manishearth @emilio @SimonSapin or anyone interested

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: cd0a6b98f4a9073e9ac98409c2fa917643552181
2017-01-28 14:08:38 -08:00
Alberto Leal
1d19c49ce8 servo: Merge #15226 - Fix text-overflow serialization (from dashed:gh-15208); r=emilio
Fixes https://github.com/servo/servo/issues/15208

- [x] **More tests pending PR review.**
- [x] **Correct placement of unit test**

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

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: d77465b1669b20bf082ff2fd3f0edfbab5732756
2017-01-26 21:41:23 -08:00
Dexter Haslem
7e908a6421 servo: Merge #15225 - fix transform: none serialization (from DexterHaslem:fix-transform-none); r=emilio
<!-- Please describe your changes on the following line: -->

As mentioned I struggled a bit figuring out the unit tests, please let me know if I missed anything or if there is a better way as usual! I will likely give the related implementing the rest of serialization for transform a shot next

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

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1395b728849add4451e176b66ad9bda68c7afcfe
2017-01-26 20:08:08 -08:00
Dexter Haslem
5b93c3d57e servo: Merge #15174 - make -webkit-text-stroke color and width shorthand no longer sensitive to ordering (from DexterHaslem:15165-webkit-text-stroke-sh-ord); r=SimonSapin
<!-- Please describe your changes on the following line: -->
this makes `-webkit-text-stroke` shorthand work with line-width and color in either order.

I added a shorthand parser test to the existing inherited_text test, which wasn't very similar to any of the other tests in there, hope sticking shorthand below the longhand stuff is ok.

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

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 2da1977108daea20cf68068f2960033f3934dfc1
2017-01-24 22:52:08 -08:00
Matt Brubeck
d8119d189f servo: Merge #15164 - Revert several changes that broke tests (from mbrubeck:revert); r=emilio
This is based on #15158 by @aneeshusa, with additional reverts.

This reverts #15064, which is causing many tests not to run, and #15129 and #15155 which landed while tests were not running and may have caused some new failures in iframe tests.

Source-Repo: https://github.com/servo/servo
Source-Revision: 185759f87a8dec88f5f65c49ac9df90b47014b19
2017-01-24 11:14:28 -08:00
Ms2ger
fe440ee348 servo: Merge #15154 - Update rustc to 1.16.0-nightly (7821a9b99 2017-01-23) (from servo:rustup); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 2ff42462154025b1aed97a825e3a171eaa156d9b
2017-01-24 06:11:40 -08:00
Aneesh Agrawal
6a1a989f3d servo: Merge #15064 - Remove -w flag now that WebRender is always used (from aneeshusa:remove-webrender-opt); r=Ms2ger
Also remove the obsolete `--cpu` and `--gpu` renderer flags,
which also are no longer used.

Update tests and wptrunner to not pass these flags.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because the tests are updated to no longer pass these flags

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

Source-Repo: https://github.com/servo/servo
Source-Revision: bb24fd3177cd69931d6a894bfcbb605286cefa1e
2017-01-23 02:05:40 -08:00
Boris Chiou
1bd7c8c532 servo: Merge #15150 - Update selectors to 0.15.1 (from BorisChiou:update_selectors); r=heycam
selectors 0.15.1 supports AFFECTED_BY_ANIMATIONS and
AFFECTED_BY_TRANSITIONS, which are used by stylo animations.

Reference:
https://bugzilla.mozilla.org/show_bug.cgi?id=1317209

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix Bug 1317209
- [X] These changes do not require tests because I only update the version, which only added two StyleRelations flags, and are not used yet

Source-Repo: https://github.com/servo/servo
Source-Revision: 0170138887005215b2b6e194d8765e33ff3a2657
2017-01-22 23:07:30 -08:00
Tawhid Hannan
8d91d8e444 servo: Merge #15146 - Added compiletest to verify TrustedPromise does not implement Clone (from Verlet64:verlet64/no_clone_trusted_promise); r=jdm
As per issue: https://github.com/servo/servo/issues/14500

I have added a test to ensure that TrustedPromise does not implement Clone.

This is my first PR to the project, so feedback in terms of both code and the actual PR would be very welcome.

Thanks,
Verlet64

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 27a7999d5d85c9b1156554f597cb0eea592624e1
2017-01-22 12:31:41 -08:00
Manish Goregaokar
971a8aa41e servo: Merge #15065 - Use Box<CalcLengthOrPercentage> in specified values to avoid bloating inline sizes (from Manishearth:box-calclop); r=heycam
For #15061

CalcLOP is a large struct, and gets used quite often. While #15063 reduces its size a bit,
it will still be much larger than any of the other variants in the `specified::Length*` types,
so it will still bloat sizes, especially for specified values that contain many lengths.

This change boxes it in the length types, so that it just takes one word.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: f010fb58fdb4526a76581ba6536f807f2b2a4955
2017-01-17 11:49:52 -08:00
Ms2ger
560ad3ebfb servo: Merge #15042 - Update regex (from servo:update-regex); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: bb540cab632593841611ad470c87d2093af75158
2017-01-16 05:59:18 -08:00
Manish Goregaokar
f2812e688c servo: Merge #13972 - ImageMaps: Implemented support for parsing coord attribute to a shape… (from shravan-achar:master); r=Manishearth,emilio,jdm
<!-- Please describe your changes on the following line: -->

Image Maps: (Part 1) Implemented support for parsing coord attribute to a shape object.
                       Implemented a hit_test method to see if a point is within the area. Tests for constructors                      and hit_test included

---

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

… object in HTMLAreaElement

Source-Repo: https://github.com/servo/servo
Source-Revision: f6940f686cce249626e4fe32cc0fe5e0dcd40dd6
2017-01-11 12:25:46 -08:00
bd339
d8164c36b4 servo: Merge #14868 - Fix loss of response type information in Fetch API (from bd339:iss14068); r=jdm
<!-- Please describe your changes on the following line: -->
Avoids mapping response types that are distinct according to [the spec](https://fetch.spec.whatwg.org/#concept-response-type) to fewer response types. Also updates test expectations to match that we now pass tests that check the response type.

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: f1c82be0e61df679db25199ac3e7afc4be5d141f
2017-01-09 18:36:38 -08:00
Simon Sapin
59c175b443 servo: Merge #14789 - Support @supports (from Manishearth:supports); r=SimonSapin
fixes #14786

cc @heycam @upsuper
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 50bba770d6073bba6e6e219dbc3687087a864a42
2017-01-09 10:54:38 -08:00
Imanol Fernandez
952fe5d9e8 servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan
<!-- Please describe your changes on the following line: -->

WebVR API Implementation with HTC Vive support on Windows. The current implementations only enables the WebVR support on Windows. In other platforms the API is available on JavaScript but navigator.vr.getDisplays() returns an empty array. This will change when we add support for more VR providers and platforms ;)

Info about the architecture:
https://blog.mozvr.com/webvr-servo-architecture-and-latency-optimizations/
---
<!-- 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: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

Proprietary openvr.dll must be copied next to servo.exe in order to test on HTC Vive (https://github.com/ValveSoftware/openvr/tree/master/bin/win64) I have added some of the official WebVR samples for testing. Switch on your headset and run:

mach run tests/html/webvr/room-scale.html

Source-Repo: https://github.com/servo/servo
Source-Revision: 518ef39cfd429082dd8dc0d5b13e2db637d08a53
2017-01-09 06:39:45 -08:00
Nazım Can Altınova
81472c45ea servo: Merge #14913 - Refactor box longhands (from canaltinova:box-longhands); r=Manishearth
<!-- Please describe your changes on the following line: -->
Converted some longhands into `vector_longhand` to reduce some repeated codes.
Also some of longhands with same `SpecifiedValue` and `computed_value::T` changed. Re-exported SpecifiedValue instead of computed_value::T. Normally a computed_value can't have a parse function.

---
<!-- 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 they're not changing the behavior of the longhands.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d5e021537a18d1e5668c099305cebf754e93007
2017-01-08 06:24:02 -08:00
mrnayak
ad30e3c8d0 servo: Merge #14865 - Implement Subresource Integrity (from mrnayak:sri-fetch); r=jdm
Implemented response validation part of https://w3c.github.io/webappsec-subresource-integrity/.
Implemented step eighteen of the main fetch. If a request has integrity metadata, then following steps are performed
1) Wait for response body
2) If the response does not have a termination reason and response does not match request’s integrity metadata, set response and internalResponse to a network error.

Dependency updated: html5ever-atoms from 0.1.2 to 0.1.3. This will not completely fix #14523, It will implement changes related to response validation. Request validation algorithm implementation needs CSP.

I did not update any WPT-Test. In my local system, I found some assertion issue dependent on the order of execution of test-case. It would be helpful if someone could do "try" build on these changes to get wpt results.

r? @jdm
<!-- 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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: f958dafcaeed643f1232a23f5c2d4f6ba141bfea
2017-01-07 23:14:37 -08:00
Nazım Can Altınova
dae3a40a78 servo: Merge #14899 - Fix serialization of timing-function (from canaltinova:transition-timing); r=Manishearth
<!-- Please describe your changes on the following line: -->
`transition-timing-function` and `animation-timing-function` properties corrected to reflect [the spec](https://drafts.csswg.org/css-transitions/#serializing-a-timing-function). It was converting function keywords to `cubic-bezier` or `steps` functions directly. But we needed to store it to use in the serialization step.

---
<!-- 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 #14822 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 496447a363ca4fc5d6789241ccb0b94134917b9a
2017-01-07 16:50:27 -08:00
Manish Goregaokar
3c11f552db servo: Merge #14893 - Support property aliases (from Manishearth:alias); r=emilio
Aliases now get forwarded to their "original" property name at parse time. CSSOM continues to provide access through alias getters.

We'll need to probably add `${"-webkit-foo -moz-foo" if gecko else ""}` all over the place. Might want to come up with a convenient attibute name for that (`gecko_prefix="mw"`) or something.

r? @heycam or @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: d14158a592faa40fa027540578cd2c680cd8caf4
2017-01-07 13:56:19 -08:00
Emilio Cobos Álvarez
85d19a99d2 servo: Merge #14833 - style: Isolate the soon-to-be style-backend-specific code from the media_query module (from emilio:mq-refactor); r=heycam,bz
The idea here is having (for convenience) different `Expression` and `Device` representations for Gecko.

Both will be implemented in rust, but will use `nsMediaFeatures` as a source of media features instead of the Servo bits.

Does it sound good?

r? @heycam or @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: fdddeb1c9229b6f9bc202cb2df1a3701eec47e05
2017-01-07 05:03:41 -08:00
charlesvdv
6505872a96 servo: Merge #14863 - Allow cli prefs to have numerical value (from charlesvdv:prefs); r=jdm
I'm not sure as I'm new with servo but shouldn't the new function ```parse_opt_prefs``` be in ```prefs.rs``` instead of ```opts.rs``` ?

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

<!-- Either: -->
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 42e28bf7e59e0c7fab7163326d7374d1c4e268d1
2017-01-05 12:09:01 -08:00
Hiroyuki Ikezoe
41946d7274 servo: Merge #14851 - animation-iteration-count property is a number instead of integer (from hiikezoe:float-iteration-count-rebased); r=emilio
<!-- Please describe your changes on the following line: -->
This is a revised PR  for #14732.
@emilio?
---
<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d9bbfa07b5aef22a318808e3796872ee12e665c
2017-01-05 03:44:20 -08:00
Boris Zbarsky
d934174175 servo: Merge #14848 - Stop using global initial styles for stylo; the initial styles need to be per-document (from bzbarsky:initial-styles); r=bholley
<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests on the servo side because behavior is unchanged.  Gecko-side tests probably exist.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 143dfc879e609603839502d61bc064fba96cc80f
2017-01-04 21:01:38 -08:00
Bobby Holley
b830eea173 servo: Merge #14835 - Switch to crates.io for atomic_refcell (from bholley:external_atomic_refcell); r=Manishearth
r? @Manishearth

See #14828 for backstory.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e927ca88bf6622d5a87db75863f76976a1df56c
2017-01-03 19:20:59 -08:00
Bobby Holley
3e7b592e7b servo: Merge #14828 - Reimplement AtomicRefCell with pure atomics (from bholley:faster_atomic_refcell); r=Manishearth
While reviewing @bzbarsky's patches in [1], I started typing out some lore about how mutable AtomicRefCell borrows are actually cheaper than immutable ones, so we should prefer them where possible. But then I decided that this was a really dumb state of affairs and that we should just fix AtomicRefCell instead, and implement a proper AtomicRef{,Mut}::map while we were at it. So here we are.

This PR adds a from-scratch implementation of AtomicRefCell that aims to be 100% sound, even in unrealistic overflow scenarios. We should probably get this on crates.io eventually, but I want to land it landed in-tree first.

With this implementation, each operation (borrow or release) is one atomic instruction, and all borrow/release pairs (mutable or immutable) take 12 ns on my machine, which is what I'd expect. This is a 50% improvement over the previous implementation in the immutable case.

There may be some places where we could get away with Ordering::Release instead of Ordering::AcqRel, but it didn't seem worth it to try to reason it out.

r? @Manishearth

CC @emilio @SimonSapin @heycam @upsuper

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

Source-Repo: https://github.com/servo/servo
Source-Revision: 57b2c2609eb05ab06291137904703565a25a1cca
2017-01-03 12:24:45 -08:00
Matt Brubeck
f536061dca servo: Merge #14800 - Fix an unused variable warning in net_tests (from mbrubeck:warnings); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 30b67a8d7a2435c00177e4731531a2c5fbf54084
2016-12-30 17:28:06 -08:00
Raghav
ebf6723fe2 servo: Merge #14794 - Refactor HSTSList to use HashMap (from mrnayak:hsts-refactor); r=emilio
Refactored HSTSList to use HashMap, where the key of HashMap is the base domain. Every time when we check if a host is secure, we find the base domain of the host and get a vector of HSTS entries associated with the base domain.

While this will not give O(1) look up time, we would have a smaller list to iterate for every lookup. I have added one unit test to validate `HashMap` changes.

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

<!-- Either: -->
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b06f4aec67ff93b1d667a5817084b0952e56664e
2016-12-30 10:33:40 -08:00
Emilio Cobos Álvarez
e33a6984d2 servo: Merge #14739 - style: Cleanup and refactor how media types are represented (from servo:stylo-mq); r=Manishearth
This is necessary for the upcoming work in Stylo, given I plan to make MediaType
different for Servo and Gecko, and the Unknown variant doesn't fit in MediaType
to be fair, the device is never going to have any unknown media type.

Source-Repo: https://github.com/servo/servo
Source-Revision: d3875f6ec52fdb6bbe49719af6bff299c792ae0b
2016-12-30 06:05:43 -08:00
UK992
76bfd8c1e3 servo: Merge #14737 - Package: Various improvements (from UK992:package-prefs); r=Wafflespeanut
Fixes https://github.com/servo/servo/issues/11966
Fixes https://github.com/servo/servo/issues/12707

Also adds simple mechanism to set os specific prefs, by adding  like `os:macosx,os:windows;` before pref name.

Source-Repo: https://github.com/servo/servo
Source-Revision: b5f3d7dd413886037de8f1bc435ede34a98421b3
2016-12-29 10:28:37 -08:00
Raghav
f2c2d3f13a servo: Merge #14716 - Implement HSTS fetch step (from mrnayak:hsts); r=jdm
Implemented step nine of the main fetch. If current URL scheme is 'HTTP' and
current URL's host is domain and if current URL's host matched with Known
HSTS Host Domain Name Matching results in either a superdomain match with
an asserted includeSubDomains directive or a congruent match then we
change request scheme to 'https'. This change has been made in method.rs

A test case to validate this has been added in fetch.rs. For asserting
https scheme, a https localhost was required. For this purpose I have
created a self-signed certificate and refactored fetch-context and
connector.rs to programmatically trust this certificate for running this
test case.

This should fix https://github.com/servo/servo/issues/14363
<!-- 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 #14363

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c7991d596f7453d09c2b2a98eecce72f182a4e24
2016-12-29 00:35:09 -08:00
Nick Price
a0af6e8d8c servo: Merge #14746 - Default is top-to-bottom if unset, not bottom-to-top (from DominoTree:fix-linear-gradient); r=emilio
<!-- Please describe your changes on the following line: -->
Reverse linear gradient direction if not explicitly specified to match expected default behavior

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

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: adb3e12b72a3d11cbe0973321cbe8009c2555c7a
2016-12-28 10:46:53 -08:00
Hiroyuki Ikezoe
ff5e2c7915 servo: Merge #14747 - Interpolate colors with premultiplied alpha (from hiikezoe:color-interpolation2); r=emilio
We need to clamp each interpolated values because some cubic-bezier functions
produce values that are out of range [0, 1].

r? @emilio

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: f9d971771c62f244c338be1cb34e0aa191d64206
2016-12-28 02:06:38 -08:00
Nick Price
ad7fb4b344 servo: Merge #14623 - #14514 Implement port-based blocking (from DominoTree:master); r=emilio
<!-- Please describe your changes on the following line: -->
Add check for bad ports to http_fetch(), return NetworkError::Internal if bad port/schema combination is seen.

Test added

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

<!-- Either: -->
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: de7d73adb0a51627e4aaa568787fe36c22029bd3
2016-12-24 03:41:14 -08:00
Keith Yeung
046ac89730 servo: Merge #14491 - Add domain and path checks for secure cookies eviction (from KiChjang:cookie-checks); r=jdm
Fixes #14477.

Source-Repo: https://github.com/servo/servo
Source-Revision: b13afccb8a4e922f66c77a92914e6505c62ae483
2016-12-23 15:26:46 -08:00
Bobby Holley
408478b137 servo: Merge #14662 - Hoist bloom filter into scoped TLS, and remove a bunch of complexity and unsafety from the style system (from bholley:bloom_tls); r=emilio
With this PR, the only remaining usage of UnsafeNode is the transition stuff, which is servo-only and probably going to be rewritten over the course of stylo. The parallel traversal is now fully typechecked and safe. \o/

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: b35ab98132539d4e6f1fcd4b3307eae40e387861
2016-12-22 12:02:38 -08:00
Ms2ger
195cdbea61 servo: Merge #11672 - Make the dom module private (from Ms2ger:dom); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c0f31e9fdf924e486ca7d0c8f14c4a027f0a5b3
2016-12-22 07:51:48 -08:00
Bobby Holley
8eb98de31a servo: Merge #14642 - Use Scoped TLS in the style system and eliminate UnsafeNode usage in the StyleSharingCandidateCache (from bholley:scoped_tls); r=emilio
See the discussion in https://bugzilla.mozilla.org/show_bug.cgi?id=1323372

@emilio Please review, but don't merge yet until we get the upstream changes into Rayon.

CC @SimonSapin @heycam @upsuper @Manishearth @pcwalton @nikomatsakis

Source-Repo: https://github.com/servo/servo
Source-Revision: 8fd8d6161426af386c0dfd3d13968a409474eb16
2016-12-21 11:11:12 -08:00
Attila Dusnoki
6482812c91 servo: Merge #14657 - Remove unused html bluetooth tests (from dati91:remove_html_tests); r=jdm
<!-- Please describe your changes on the following line: -->
Remove unused html bluetooth tests, because we use wpt based bluetooth tests now.

---
<!-- 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 no functionality changed.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: b67bfb39aee98cba5218e8dfa0fa7019f16a4dae
2016-12-21 05:55:19 -08:00
Simon Sapin
cf8e6df581 servo: Merge #14644 - Ever so slightly less unstable (from servo:ever-so-slightly-less-unstable); r=heycam
<!-- 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 _____

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

Source-Repo: https://github.com/servo/servo
Source-Revision: e13f0017931e7f87cad13a13e3fe4e9bcbb9c554
2016-12-19 22:09:02 -08:00
Emilio Cobos Álvarez
a5eb28d500 servo: Merge #14485 - style: Add a simple rule-tree benchmarks (from servo:rule-tree-bench); r=heycam
<!-- Please describe your changes on the following line: -->

r? @heycam

Numbers on my machine, for the record:

```
test rule_tree::bench::bench_expensive_insersion          ... bench:   7,211,081 ns/iter (+/- 1,933,866)
test rule_tree::bench::bench_expensive_insersion_parallel ... bench:  78,728,097 ns/iter (+/- 11,738,010)
test rule_tree::bench::bench_insertion_basic              ... bench:     665,333 ns/iter (+/- 68,089)
test rule_tree::bench::bench_insertion_basic_parallel     ... bench:   1,587,203 ns/iter (+/- 372,124)
```

Source-Repo: https://github.com/servo/servo
Source-Revision: cb6a870077fc6bca98af688406926832ae3df038

--HG--
rename : servo/components/style/servo/mod.rs => servo/tests/unit/style/rule_tree/mod.rs
2016-12-19 00:47:34 -08:00
Nick Price
5962202a57 servo: Merge #14598 - Fix linear gradient's specified form #13892 (from DominoTree:master); r=canaltinova
<!-- Please describe your changes on the following line: -->
WIP for #13892

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

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d2b98e6f82fe601672dbf435a920ccceffe78dc
2016-12-16 15:11:29 -08:00
Emilio Cobos Álvarez
6609a2b21d servo: Merge #14540 - style: Basic @import support (from servo:at-import); r=SimonSapin,Ms2ger
r? @SimonSapin or @mbrubeck

cc @heycam and @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 38f136175e15acb6472466d141dedb6a253b0330
2016-12-16 09:43:19 -08:00
Ms2ger
21e8d08889 servo: Merge #14465 - Make the fetch target non-optional (from servo:http); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b2daae453e9276977059fd51c9b733e6400f35c
2016-12-15 14:02:42 -08:00
Nazım Can Altınova
291006f0e0 servo: Merge #14509 - Implement background-position-x/y (from canaltinova:position); r=Manishearth
<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 5357f05ff785ee160d6b07de5d0e10aba199e578
2016-12-15 12:15:06 -08:00
Alan Jeffrey
07258edab3 servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck
<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4eb653817f87e5fb47de34356f558eb76ecbca9f

--HG--
rename : servo/components/util/Cargo.toml => servo/components/config/Cargo.toml
rename : servo/components/util/basedir.rs => servo/components/config/basedir.rs
rename : servo/components/util/lib.rs => servo/components/config/lib.rs
rename : servo/components/util/opts.rs => servo/components/config/opts.rs
rename : servo/components/util/prefs.rs => servo/components/config/prefs.rs
rename : servo/components/util/resource_files.rs => servo/components/config/resource_files.rs
rename : servo/components/util/geometry.rs => servo/components/geometry/lib.rs
rename : servo/components/util/remutex.rs => servo/components/remutex/lib.rs
rename : servo/tests/unit/util/lib.rs => servo/tests/unit/servo_config/lib.rs
rename : servo/tests/unit/util/opts.rs => servo/tests/unit/servo_config/opts.rs
rename : servo/tests/unit/util/prefs.rs => servo/tests/unit/servo_config/prefs.rs
rename : servo/tests/unit/util/remutex.rs => servo/tests/unit/servo_remutex/lib.rs
2016-12-14 16:48:42 -08:00
Anthony Ramine
3b06404d3b servo: Merge #14557 - Improve safety or our tracing architecture (from nox:trace); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 87f7b29d65d8a0ad137e38412aef50734b24ea6c
2016-12-12 20:34:51 -08:00
Sumant Manne
be4b6521fe servo: Merge #14498 - Added image-orientation property (from dpyro:image-orientation); r=canaltinova
<!-- Please describe your changes on the following line: -->

Implemented as per the MDN documentation—I could not find a current CSS draft. I am not sure if this is the complete correct metadata for the longhand helper:
```
<%helpers:longhand name="image-orientation”
                   experimental=“True”
                   animatable=“False”>
```
Also I am not sure how to test this and would appreciate help in creating a testing strategy.

---
<!-- 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 #13877.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 37c4051d21f5baacdf843510c8b111202ac2e876
2016-12-10 13:57:14 -08:00
Simon Sapin
b176e4d08e servo: Merge #14535 - Introduce a PropertyId enum and use it instead of strings of property names (from servo:property-id); r=mbrubeck
<!-- Please describe your changes on the following line: -->

* `LonghandId` and `ShorthandId` are C-like enums
* `Atom` is used for the name of custom properties.
* `PropertyDeclarationId` is the identifier for `PropertyDeclaration`,
  after parsing and shorthand expansion. (Longhand or custom property.)
* `PropertyId` represents any CSS property, e.g. in CSSOM.
  (Longhand, shorthand, or custom.)

CC @upsuper

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 6dd4b4822fa788694153ee61a04dd9a5dfb748ec
2016-12-10 01:16:26 -08:00
Raghav
58bf5c565e servo: Merge #14445 - Redesign CookieStorage and Implement Leave Secure Cookie Alone (from mrnayak:netSecurity); r=jdm
CookieStorage has been refactored to use HashMap with the base domain as the key. Values of hashmap are vector of cookies.
CookieStorage now has max_per_host which restricts maximum cookies that can be added per base domain.
Cookie eviction does not take place if max_per_host is not reached.
Cookie eviction logic implemented here does following steps
1) Evict all expired cookies
2) Remove oldest accessed non-secure cookie If any
3) When no non-secure cookie exists, remove oldest accessed secure cookie if new cookie being added is secure. Else ignore new cookie

---
<!-- 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: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b05c27cb58e8d625f4f436b6e9e1f0c29e908f21
2016-12-04 15:30:46 -08:00
Xidorn Quan
770198de7f servo: Merge #14421 - Treat top-level number in calc() invalid (from upsuper:patch-2); r=emilio
<!-- Please describe your changes on the following line: -->
This should probably considered as a temporary fix (for [bug 1321206](https://bugzilla.mozilla.org/show_bug.cgi?id=1321206)), to avoid assertion when trying to serialize calc value with only numbers. Certain properties (e.g. `line-height`) would eventually need to keep numbers inside calc.

---
<!-- 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: -->
- [x] 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. -->

Currently, CalcLengthOrPercentage doesn't actually keep the number value. If we don't treat it invalid, we can end up generating empty `calc()` value when one contains numbers (e.g. `calc(1)`), which would violate assertion elsewhere that `calc` must not be empty.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7c346e0d943fd518031437bcc7d10fee16213ff3
2016-12-02 20:18:05 -08:00
J. Cliff Dyer
94712f0390 servo: Merge #14394 - Convert column-width to use Either (from jcdyer:jcdyer/either-column-width); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

* Converted column-width to use `Either<Length, Auto>`
* Added gecko glue code
* Cleaned up old column-width glue code

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because tests already surround the refactored code.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a913815a4de0f1b66a5fd6dfe1c41105cf38e63e
2016-12-01 23:03:37 -08:00
Thiago Pontes
4990faa77a servo: Merge #14370 - use Either type for UrlOrNone (from thiagopnts:master); r=Wafflespeanut
Use the Either type for UrlOrNone

---
<!-- 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 #14298 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 290ff5c80138c77d65eaada3183dec35c059e38e
2016-12-01 22:03:31 -08:00
Xidorn Quan
fca01e20b5 servo: Merge #14384 - Move Arc<RwLock<_>> out from CssRules tuple (from upsuper:cssrules-struct); r=Manishearth
<!-- Please describe your changes on the following line: -->
Otherwise it would be hard for Gecko to hold `CssRules`.

r? @manishearth

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 39845faf261672b795af59602b45e7ce096b9f33
2016-11-29 03:26:46 -08:00
Simon Sapin
4d50e21cf3 servo: Merge #14395 - Use stylesheet’s base URL and ns prefixes in CSSOM insert/appendRule (from servo:stylesheet-metadata); r=Manishearth
<!-- 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 _____

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 40917e7991ddd0f1fdcf83f0bf637a721f37256a
2016-11-29 01:28:06 -08:00
Anthony Ramine
e20c332d45 servo: Merge #14381 - Move to Cargo workspaces (from servo:workspaces); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7032f6dd5e8a1f8c0602666805d1d10cc84e65

--HG--
rename : servo/ports/servo/Cargo.lock => servo/Cargo.lock
2016-11-28 01:44:40 -08:00
Ravi Shankar
f0120bad7b servo: Merge #14373 - Use the ParserContext along with the Parser (from Wafflespeanut:parse); r=emilio
<!-- Please describe your changes on the following line: -->

This changes the `parse` function's signature to include `ParserContext`, so that we don't introduce another trait just for the sake of the context. Instead, we can safely ignore the context whenever we don't need it.

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

r? @SimonSapin or @emilio or @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 4755cb7586ab4a89f35bbccf8b57c85ed2f428e7
2016-11-26 19:20:10 -08:00
Gregory
dd3f6b0834 servo: Merge #14192 - implement support for the width query (from gterzian:support_equality_constraints); r=emilio
<!-- Please describe your changes on the following line: -->
implement support for the `width` media query

---
<!-- 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 #https://github.com/servo/servo/issues/13670 (github issue number if applicable).

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: bcc76f8a58f2ebe3886d16ff3eebbe68e3debf6c
2016-11-26 04:09:24 -08:00
Xidorn Quan
8b8a950b06 servo: Merge #14335 - Add rerun-if-changed for bindings file (from upsuper:stylo-unit-rerun-build); r=bholley
<!-- Please describe your changes on the following line: -->
check_bindings.py uses bindings.rs as input, so it should be rerun if that file gets changed.

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

check_bindings.py uses bindings.rs as input, so it should be rerun if
that file gets changed.

Source-Repo: https://github.com/servo/servo
Source-Revision: bf92d0a27ff04ce93a9e301d1782ea04d0a9a208
2016-11-25 10:01:16 -08:00
Bobby Holley
62e95664e4 servo: Merge #14300 - stylo: Basic infrastructure for RestyleHint-driven traversal (from bholley:restyle_driven_traversal); r=emilio
Gecko Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=131701

(Don't review yet, will flag on the gecko bug when the time comes)

Source-Repo: https://github.com/servo/servo
Source-Revision: d98abaec20e624aa89a3abddf4cf2a6399951ef1
2016-11-25 09:00:44 -08:00
Bhavya Bansal
d245344de3 servo: Merge #13969 - html form validation initial steps with test html file (from bbansalWolfPack:master); r=jdm
<!-- Please describe your changes on the following line: -->

Added code for initial steps in html form validation.
1. Added methods for trait validatable
2. implemented stub methods for  elements like HTMLInputElement, HTMLButtonElement, etc

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

Source-Repo: https://github.com/servo/servo
Source-Revision: beec035eb0ff6babf48ce836184329e60e795177
2016-11-25 06:49:44 -08:00
Cameron McCormack
7b5d5ddcea servo: Merge #14340 - implement StyleSheet.disabled (from heycam:sheet-disabled); r=Manishearth
<!-- Please describe your changes on the following line: -->

This implements the [CSSOM StyleSheet.disabled](https://drafts.csswg.org/cssom/#dom-stylesheet-disabled) IDL attribute.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c1c3974fb2d8ca60f2837ccd7d2d3b345e440af8
2016-11-24 20:40:24 -08:00
Ms2ger
f15dfb6ad6 servo: Merge #14360 - Remove the legacy networking stack (from servo:fetch); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1321c0704dead3421221cb7581fa261a82603f87
2016-11-24 03:20:05 -08:00