Commit Graph

10178 Commits

Author SHA1 Message Date
Anthony Ramine
8c60b6fc19 servo: Merge #18503 - Simplify WorkerGlobalScope::process_event (from servo:globalism); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 42680374245c149b9bccc3ee5ea65f36d58c6d9e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2b81d5237cbda6fe5f1dae5288276a3af99251e5
2017-09-14 18:17:55 -05:00
Matt Brubeck
a927a3f53f servo: Merge #18466 - Bug 1398957 - Make LRUCache use a linked list to reduce memmoves (from mbrubeck:cache); r=SimonSapin
https://bugzilla.mozilla.org/show_bug.cgi?id=1398957

Source-Repo: https://github.com/servo/servo
Source-Revision: 49f753523ac0f062943923935ff6d1942554d2cc

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9291351e803a33f04c286b134a60b07c203dc694
2017-09-14 16:48:48 -05:00
Emilio Cobos Álvarez
cc8a228ea1 servo: Merge #18502 - style: Unify how servo and Gecko handle UA sheets (from emilio:ua-sheets-unify); r=simonsapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 75e126f139197c447686242082d9e7f61ba92c3f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 849a1ec32e68ff28dea5a5db16c51424c790550e
2017-09-14 15:55:21 -05:00
Markus Stange
1ab17d08e0 servo: Merge #18508 - style: Add system colors from bug 1387594 (from mstange:add-fsbgc-system-colors); r=emilio
<!-- Please describe your changes on the following line: -->

These are the necessary servo changes for https://bugzilla.mozilla.org/show_bug.cgi?id=1387594 .

I'm also re-importing the generated Gecko bindings from my object directory:
 - servo/components/style/gecko/generated/structs_debug.rs
 - servo/components/style/gecko/generated/structs_release.rs

But the number of changes to those files surprises me.

---
<!-- 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 they're tested by compiling mozilla-central once the patches from https://bugzilla.mozilla.org/show_bug.cgi?id=1387594 land - without this patch, Firefox won't compile.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 28b1c3818f81f593e691ded1109cfaab829825ae

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2934de139097f1426e76fe4775a852f67fc9abbe
2017-09-14 14:20:15 -05:00
Josh Matthews
411e869790 servo: Merge #18415 - More codesize reductions for generated code (from jdm:moar-codesize); r=SimonSapin
Bloaty says this shaves off another 20kb from style::properties-based functions. The more limited Debug implementations enable sharing the property name strings between more functions, which saves on code size in the end.

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 29f7df3b4bbbad15ccfc849cc7638c3ca05846c2
2017-09-14 13:01:00 -05:00
Emilio Cobos Álvarez
0dbef207fc servo: Merge #18501 - style: Move DocumentCascadeData::add_stylesheet to CascadeData (from emilio:cascade-data-rebuild); r=nox
More plumbing in preparation for isolating the UA stuff.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bff6f79a1b2250b47d33fd04b2a374591de176d6
2017-09-14 10:49:16 -05:00
Xidorn Quan
e28cda1112 servo: Merge #18498 - Use exhaustive match for cloning keyword value by default for property using enum class (from upsuper:enum-keyword-exhaustive); r=emilio
rather than casting them to `u8` then do inexhaustive match.

I don't see why we couldn't do this.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9dd05136474ff361651f9d5c7c4b114f84736243

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dd4e9497e822911e3a174a4337189a3bcbf30fcb
2017-09-14 06:28:16 -05:00
Emilio Cobos Álvarez
a47c2d6ea7 servo: Merge #18497 - style: Don't cache styles that got a cache hit on the second pass (from emilio:no-cache-if-cached); r=heycam
This avoids doing wasted work, at least in the recascade case, and pretty likely
in the other as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: 988728e9d5c66e6bf2f9e0e03a50a814d0e1f2ab

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 68555686bb062ce696e70ffcbdbd07fe6960a5da
2017-09-14 05:23:09 -05:00
Cameron McCormack
e1fb3d1ec0 servo: Merge #18499 - style: add a TLS-based cache of reset style structs (from heycam:rule-cache); r=emilio
Rule cache

<!-- Please describe your changes on the following line: -->
This adds a TLS-based cache reset styles structs keyed off rule nodes.  Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1367635 by me and 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
- [ ] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 874cb0d9df44e62a78d427f22f234a13227d07f8

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 94d8df7014ae82e639bb93f209eea4605f7d8964
2017-09-14 04:28:50 -05:00
Nicholas Nethercote
8edc300c93 servo: Merge #18495 - Measure PropertyDeclaration more thoroughly (from nnethercote:derive-PropertyDeclaration); r=jdm
This patch replaces the handwritten MallocSizeOf implementation for
PropertyDeclaration with a derived one, which gives much more thorough
measurement.

This requires (a) deriving MallocSizeOf for a *lot* of additional types (most
of which already have `derive(HeapSizeOf)` in Servo builds), and (b)
implementing MallocSizeOf for a few more types in the `malloc_size_of` crate.

These changes would significantly improve the reporting coverage for gmail if
it weren't for the fact that SpecifiedUrl isn't measured due to a lack of
clarity about its fields; that can be fixed as a follow-up once bug 1397971 has
landed.

<!-- 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
- [X] These changes do not require tests because testing is on the Gecko side.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 097cea240fe9b1d96fa4ef5ffa984f09e0bd04f3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c7729e83370ed1c996feb52444739b3e26941b33
2017-09-14 02:10:40 -05:00
Bobby Holley
07f69fd053 servo: Merge #18496 - do a second pass on the style sharing cache after computing the rule node (from bholley:2ndpass); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1397976

Source-Repo: https://github.com/servo/servo
Source-Revision: 298b1363ffd7e830a6ad28424421ead6628ac9b7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 368154dfadc7643768e909e0fdcc28d36442f2de
2017-09-14 00:07:52 -05:00
Glenn Watson
4943d521a3 servo: Merge #18491 - Update WR (android driver bug fixes) (from glennw:update-wr-android-bugs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b6b698dbb13965f1b49b87b690759e095943152e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6fa349c320ea619bfc3e768d125b9f74db9cde51
2017-09-13 21:49:05 -05:00
Corey Farwell
063db35806 servo: Merge #18494 - Implement size_hint for more iterators (from frewsxcv:frewsxcv-size-hint); r=jdm
```
implement size hint for
more iterators because why
not we like fast things
```

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fb164a6e8e51ebba14d97ee7600567b3b517dc30
2017-09-13 19:38:32 -05:00
Emilio Cobos Álvarez
7025f2a9d3 servo: Merge #18486 - style: Move ExtraStyleData into CascadeData (from emilio:extra-data-to-cascade-data); r=SimonSapin
It logically belongs there, and the only reason it wasn't there before we were
working around other stuff. Now it's needed to share UA stylesheets across documents.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1ab705b0265cac358c3bebb3fec8cbac089f015d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1e77773a569f810d62dc1f3997817dd86feff377
2017-09-13 17:44:21 -05:00
Nathan Froyd
d00dc48f1b servo: Merge #18489 - align selectors's features in geckolib and stylo_tests (from froydnj:geckolib-feature-alignment); r=froydnj
Gecko would like to turn on the stylo layout tests (tests/unit/stylo) in
Gecko CI.  The plan for doing this is to add the tests as a
dev-dependency of Gecko's main Rust library, from which `cargo test` can
be run in the usual fashion.

Doing this creates problems for normal development, because the stylo
tests need the `selectors` crate to be compiled with `gecko_like_types`,
whereas the `geckolib` crate does not.  So if we compile `geckolib` in a
non-test build configuration, the `selectors` crate is compiled without
`gecko_like_types`...but then if we compile `geckolib` in a test build
configuration, cargo will evict the previous rlib for the `selectors`
crate and replace it with a `selectors` compiled with gecko_like_types.
And then compiling `geckolib` in a non-test configuration repeats the
process, and so forth.

Needless to say, this is highly annoying behavior.  It is due to a bug
in cargo:

https://github.com/rust-lang/cargo/issues/3923

but it's not known when that bug will get fixed.  In the meantime, we
can just make sure that geckolib's `selectors` is compiled with the same
features as the `selectors` crate in the stylo tests.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 1aa8be392b0ab8e7a8426f525361b40b69d70b4f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f496fa2a771c7765dae4da1edbf160e298a426f3
2017-09-13 16:24:20 -05:00
Emilio Cobos Álvarez
b219dce5d3 servo: Merge #18484 - style: Store stylesheets per origin (from emilio:per-origin-sheets); r=SimonSapin
This is the first step that will allow us to cache UA sheets across documents.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f6cd5a7d9fc8ae90ee9fdcd78168ffaa006c4997
2017-09-13 14:59:16 -05:00
Akos Kiss
4b00f379ef servo: Merge #18481 - Bump the device crate to add blurmac dependency to enable Web Bluetooth on macOS (from akosthekiss:bump-device-blurmac); r=jdm
<!-- Please describe your changes on the following line: -->
Latest revision of the device crate now has BlurMac among its dependencies that enables WBT on macOS in addition to Linux and Android (which have been supported for a while now). This PR bumps the device crate to this revision so that servo can make use of this.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because there are already WBT tests in tree.

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d53d257a213abf00c0a9fc0eec22626dd1312405
2017-09-13 13:57:02 -05:00
Glenn Watson
6a4845b1af servo: Merge #18476 - Update WR (new frame out feature for webvr team) (from glennw:update-wr-frame-output); r=metajack
This includes the experimental frame output feature that the
webvr team requested. This feature allows configuring WR to
output the contents of an iframe onto a native texture, allowing
experiments such as interactive web pages inside a webgl/webvr scene.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c13a4e3c07b96a60bb9ceee45c9bcd583091c8e5
2017-09-13 12:26:08 -05:00
Josh Matthews
8adc15e7ee servo: Merge #18352 - Make serialization match Gecko in a few corner cases (from jdm:serialize-fun); r=emilio
This addresses the testcases from https://bugzilla.mozilla.org/show_bug.cgi?id=1345218. Gecko differs from the specification by doing the following:
* reusing longhands that have previously been serialized in order to serialize shorthands
* immediately breaking out of the shorthand loop for the current property as soon as a shorthand is successfully serialized

https://github.com/w3c/csswg-drafts/issues/1774 is filed to track ways that the standard could be made more clear on these points.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1345218](https://bugzilla.mozilla.org/show_bug.cgi?id=1345218).
- [X] There are tests for these changes

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7a6a5916d6c5fb63f277ceaad62cf83fe03d9705
2017-09-13 10:51:00 -05:00
Anthony Ramine
4e685f9121 servo: Merge #18480 - Store microtask queues directly in GlobalScope (from servo:rc-microtask-queue); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2c576e5613b16ba9353461498086b279c283e018

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : aebecd07f97a99d74281404619609be764e26c9f
2017-09-13 09:18:41 -05:00
Nicholas Nethercote
e4b698d675 servo: Merge #18474 - malloc_size_of tweaks (from nnethercote:malloc_size_of-tweaks); r=jdm
<!-- Please describe your changes on the following line: -->

A couple of tweaks.
---
<!-- 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 #18473 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are tested in Gecko.

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b6d5a2065b9d515fe2b7bd4a5897af96c9f11f0e
2017-09-13 08:02:45 -05:00
Boris Chiou
31764d7b79 servo: Merge #18381 - stylo: Bug 1392161 - Introduce CSSPixelLength as computed::Length (from BorisChiou:stylo/transform/rounding); r=<try>
These are the inter-dependent patches of bug 1392161. We want to handle
extreme small lengths carefully for some properties, such as transform, so we
shouldn't use |Au| as the computed value of specified::Length. Now, we introduce
a new type, CSSPixelLength, which is a wrapper of CSSFloat, and it is the
computed value of specified::Length, so we can keep the fractional part
of computed::Length.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1392161](https://bugzilla.mozilla.org/show_bug.cgi?id=1392161).
- [X] These changes do not require tests because there is a wpt test for this, and I also add some others in Gecko.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : db63003d73f1e08f0f9d3a95ddd94f6b46497d6a
2017-09-13 05:20:20 -05:00
Glenn Watson
62380b3539 servo: Merge #18470 - Update WR (backface API changes) (from glennw:update-wr-bf); r=pcwalton
This does the minimal work to update to the API changes related
to backface support. It doesn't actually pass through any info
about the backface visibility flags yet.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 84188512c0b1edf23e0fb31e7ebfbeeb643bcaf4
2017-09-12 19:07:49 -05:00
Julian Seward
78b2118921 servo: Merge #18460 - Bug 1398593 - stylo: mitigate performance impact of fallible allocati… (from julian-seward1:master); r=emilio
…on on stylist rebuilds.  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: -->
- [ ] `./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 _____

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 66778851a80d3227e396c1d6d35c585265327f57

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 71727d18a8f93c7d53cdafd9759ab85d07584a34
2017-09-12 15:25:52 -05:00
Anthony Ramine
951ab730aa servo: Merge #18459 - Kill ComputedValueAsSpecified 🔫 (from servo:kill-cvas); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: b856f11388b629759773a905379b1f238a9ca348

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 139c4892377bb2a8ccf027af70b54a080af7e4ef
2017-09-12 14:14:33 -05:00
Bobby Holley
dd927d1f81 servo: Merge #18465 - Eliminate RestyleData (from bholley:kill_restyledata); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1399011

Source-Repo: https://github.com/servo/servo
Source-Revision: 72f0fda836ff97d33169cd1fc0d23d2d07ad74c6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 58ef9c5edac56e311c7067427c63cb7a6d2fe830
2017-09-12 13:16:26 -05:00
Wei-Cheng Pan
da94c7dae6 servo: Merge #18457 - Invalidation should check all restyle hints (from legnaleurc:fix_smil); r=emilio
For some cases simply check EffectCompositor is not enough, we need to check the dirty bits for animation too.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d0f8b9d52a0eb24e971b796e1c4387bd9fe142f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ea41a312064fd736cb0d7b05b906afe12bcfb0ee
2017-09-12 10:58:26 -05:00
Tom Tromey
eb5a0d0bde servo: Merge #18449 - Remove get_location_with_offset (from tromey:remove-get_location_with_offset); r=jdm
Now that rust-cssparser reports 1-based locations, bump the required
cssparser version and remove get_location_with_offset.  Previously,
some code paths were not calling get_location_with_offset; see
https://bugzilla.mozilla.org/show_bug.cgi?id=1398869 for some
background.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because tests are in rust-cssparser and/or M-C

Source-Repo: https://github.com/servo/servo
Source-Revision: 7746896bc4cf5a2a6dc78c00f643e4cff8e49da4

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 919aeee03abfd07cd5dbcc9d478dd98cc76f054e
2017-09-12 09:44:53 -05:00
Nicholas Nethercote
60dbe9e9a9 servo: Merge #18455 - Measure Arc<Locked<T>> fields properly (from nnethercote:measure-Arc-Locked-properly); r=jdm
Currently when we measure various Arc<Locked<T>> fields we don't measure the T
itself, but only the descendants of the T. This patch fixes this.

This fix requires introducing a new trait, MallocUnconditionalShallowSizeOf,
which is implemented for servo_arc::Arc. A similar trait,
MallocConditionalShallowSizeOf, is also introduced, though it has no uses as
yet.

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

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b7e583f75900e5e58406802bab095f524b87398f
2017-09-12 08:40:56 -05:00
Emilio Cobos Álvarez
ddffc07384 servo: Merge #18456 - style: Remove an unused function (from emilio:dead-code); r=upsuper
Nobody will miss it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 61fac2c10de5e0d4ce9d559e0effe2582dcbadb2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e7b2b24d726634faef5f4fd7056af71dee90a4f2
2017-09-12 06:11:58 -05:00
Simon Sapin
3874af21c1 servo: Merge #18420 - Get rustc commit hash from channel manifest (from servo:toml); r=nox,emilio
… added in https://github.com/rust-lang/rust/pull/44218, instead of using the GitHub API.

Also upgrade to rustc 1.22.0-nightly (d93036a04 2017-09-07).

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4ec174151648685b4eb0204ec8798d4f82fde9c9
2017-09-12 05:01:24 -05:00
Bobby Holley
00681c0e88 servo: Merge #18453 - Refactor the style cache (from bholley:style_cache_refactor); r=emilio
This is the first set of patches from https://bugzilla.mozilla.org/show_bug.cgi?id=1398658

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1f176a42fb43f1e36a3d8ac0c8a8fd07db4b878e
2017-09-12 03:25:36 -05:00
Glenn Watson
3033199142 servo: Merge #18454 - Update WR (handle text runs requiring batch splits, clip optimizations) (from glennw:update-wr-text-runs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: efd2d5e4ccd9d63442ecf11196bb8b909e7399d2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3611d4fe5eaec5cf6efdaeae1b19bc039b7d011b
2017-09-12 02:09:25 -05:00
Nicholas Nethercote
43983aa52e servo: Merge #18452 - Overhaul MallocSizeOf and related things (from nnethercote:bug-1398737); r=jdm
This patch makes the MallocSizeOf stuff in Stylo work more like the HeapSizeOf
stuff already in Servo, except better. In particular, it adds deriving support
for MallocSizeOf, which will make it easier to improve coverage.

The patch does the following.

- Combines servo/components/style/stylesheets/memory.rs and the heapsize crate
  into a new crate, malloc_size_of.

- Forks the heapsize_derive crate, calling it malloc_size_of, so that
  MallocSizeOf can be derived.

- Both the new crates have MIT/Apache licenses, like heapsize, in case they are
  incorporated into heapsize in the future.

- Renames the methods within MallocSizeOf and the related traits so they are
  more concise.

- Removes MallocSizeOfWithGuard.

- Adds `derive(MallocSizeOf)` to a lot of types, in some cases replacing an
  equivalent or almost-equivalent hand-written implementation.

- Adds stuff so that Rc/Arc can be handled properly.

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f4cb1861b172423781a369b2decca6c65d60546

--HG--
rename : servo/components/hashglobe/LICENSE-APACHE => servo/components/malloc_size_of/LICENSE-APACHE
rename : servo/components/hashglobe/LICENSE-MIT => servo/components/malloc_size_of/LICENSE-MIT
rename : servo/components/jstraceable_derive/Cargo.toml => servo/components/malloc_size_of_derive/Cargo.toml
rename : servo/components/hashglobe/LICENSE-APACHE => servo/components/malloc_size_of_derive/LICENSE-APACHE
rename : servo/components/hashglobe/LICENSE-MIT => servo/components/malloc_size_of_derive/LICENSE-MIT
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a8254c4ae15901b764d918355e900a1e74d6eb03
2017-09-11 22:11:25 -05:00
Manish Goregaokar
69e3b07d93 servo: Merge #18451 - stylo: Add support for calcs in base size calculation (from Manishearth:stylo-calc-fontsize); r=emilio
This tracks an offset along with the ratio for the keyword font size data.
The offset gets used when a calc is involved whilst inheriting font-size
(it is the computed value of that calc ignoring em/percentage portions,
which go into the ratio). If the family or language changes, the new font
size can be computed by taking the keyword's size in the context of that
family/language, multiplying it by the ratio, and adding the offset.

r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1380980

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8d051258828eaeb5163d00558559af42870f6751
2017-09-11 21:01:57 -05:00
Anthony Ramine
87efab93fb servo: Merge #18447 - Remove most uses of ComputedValueAsSpecified (from servo:kill-cvas); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 5cc2b4f705e420b156899ed55072ccc11d0e50c0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1e210928eef95f3c02c404694e55f84625e13bee
2017-09-11 20:04:12 -05:00
Xidorn Quan
2dd26b6b32 servo: Merge #18450 - Use the LonghandIdSet to check whether a property is set (from upsuper:property-is-set); r=Manishearth
Servo side change of [bug 1398479](https://bugzilla.mozilla.org/show_bug.cgi?id=1398479).

Source-Repo: https://github.com/servo/servo
Source-Revision: 24b2d8d9cf265a149535ebc22941e427dd5e21b3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5a2be5b5ff4886cce99883d4338bad2d6621527e
2017-09-11 18:50:19 -05:00
Manish Goregaokar
1c75afebad servo: Merge #18448 - stylo: Round down when computing viewport units (from Manishearth:viewport-round); r=emilio
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1396045

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b52226a9749331511483632e3779ee6df01cec02
2017-09-11 16:28:14 -05:00
Bojan Kogoj
507bd6716f servo: Merge #18348 - Added direct link to Visual Studio Community (from BojanKogoj:patch-1); r=asajeffrey
<!-- 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: -->
- [ ] `./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 _____

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1253ff26c37d3c8434ecc6344e8c8a0a16040678
2017-09-11 14:46:34 -05:00
Fernando Jiménez Moreno
a59c054c2e servo: Merge #18444 - stylo: Fix error reporting for invalid values in property alias (from ferjm:bug1384221.alias.errors); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1384221](https://bugzilla.mozilla.org/show_bug.cgi?id=1384221)
- [X] There are [tests](https://bug1384221.bmoattachments.org/attachment.cgi?id=8906527) for these changes

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2350d1951a6225c012194bf01ced918545a2d08f
2017-09-11 12:50:11 -05:00
Boris Zbarsky
150ec2228f servo: Merge #18446 - Update rust-cssparser to 0.20.2 (from bzbarsky:update-cssparser); r=SimonSapin
This reduces memory consumption of list-valued properties in the common case of one entry in the list.

<!-- 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: -->
- [ ] `./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 _____

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 3cad8d4662610ea8a0ab3b49d94fd1716963481e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d0cef41bae3f552b7f2d22efa13d267bece9b13d
2017-09-11 10:33:24 -05:00
Matt Brubeck
dc76621e5b servo: Merge #18431 - Use SmallBitVec to optimize size of PropertyDeclarationBlock (from mbrubeck:pdb-size); r=SimonSapin
https://bugzilla.mozilla.org/show_bug.cgi?id=1398322

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c939c12e222626649de5a88fbe9d39bd7c8f84d8
2017-09-11 08:57:07 -05:00
tigercosmos
cea0129efd servo: Merge #18372 - TEST: fix and add case of po-observe.any.js (from tigercosmos:userTimingApi); r=ferjm
<!-- Please describe your changes on the following line: -->
1. implementing step 3 from the [`PerformanceObserver.observe()`](https://w3c.github.io/performance-timeline/#dom-performanceobserver-observe()) method spec properly.
2. also add cases about step 1 & 2

work on the top of #18283

 r? @ferjm
---
<!-- 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 #18285 (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. -->

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1e342827b586e3af3607df7e3d7ff05884686d75
2017-09-11 05:26:46 -05:00
Emilio Cobos Álvarez
b517d24b00 servo: Merge #18429 - style: Remove a few uses of ComputedValueAsSpecified (from emilio:cvas-die); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 7fc2c435513feadf1dc666e7873095884dfd6d84

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2d5c5e40214492fa277b7a30ae4cf73371ae96e5
2017-09-11 04:31:10 -05:00
Fernando Jiménez Moreno
39126bf7a0 servo: Merge #18206 - stylo: store specified value of grid layout repeat() function (from ferjm:bug1382369.grid.repeat.function); r=wafflespeanut
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1382369](https://bugzilla.mozilla.org/show_bug.cgi?id=1382369)

Source-Repo: https://github.com/servo/servo
Source-Revision: 8129cf5563ba91f420f51a09cff9d9a317683ba6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3579c5fe32dd77cb76157003d33d1f1bc97236f2
2017-09-11 02:32:38 -05:00
Glenn Watson
045157cf54 servo: Merge #18443 - Update WR (various small optimizations and bug fixes) (from glennw:update-wr-opts-fixes); r=jdm
Also update app_units.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d4868b282b15c8f499d1a941692226dc2f0eaa6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3fec80f643aa357bb0a58980882a7f32d49c6971
2017-09-10 23:32:35 -05:00
Emilio Cobos Álvarez
1a0185ad38 servo: Merge #18434 - Bug 1395064 - stylo: Add uses of fallible Vec, SmallVec and HashMap f… (from julian-seward1:master); r=bholley
…acilities.  r=emilio@crisal.io.

<!-- 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: -->
- [ ] `./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 _____

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b0279b7e9545549faa5975eae219c30085005d8d
2017-09-10 12:30:39 -05:00
tigercosmos
848a903728 servo: Merge #18421 - update mach.bat if use VS buildtool for Windows build (from tigercosmos:windowsBuild); r=larsbergstrom
<!-- Please describe your changes on the following line: -->
Add path in `mach.bat`. If user only install VS buildtool, they now can use `mach.bat`
And therefore modify `README`

Continue to PR #18145

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 815fb6b0585d11acfd7a9452a5e5d9af65a05377

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2b971754b5b8aa8dd40e452db5aabb545d9b0aea
2017-09-09 11:15:16 -05:00
Boris Zbarsky
dbd10872c5 servo: Merge #18430 - Shrink the storage needed by specified background images (from bzbarsky:shrink-background-storage); r=xidorn
<!-- Please describe your changes on the following line: -->
This makes a specified background image take 48 bytes instead of 1024 bytes.

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

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bb8928c603048a23338bdc28da182c4325fd7a66
2017-09-09 09:58:29 -05:00
Emilio Cobos Álvarez
639cb4fa0f servo: Merge #18428 - style: remove selector_map::find_push (from emilio:find-push); r=nox
It has a single caller and is overly generic, which is going to make harder to
add fallible allocations to it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 91b748ec22a952063c9e00870d4a788bc3799a18

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9b379ada6e8b024f4300f5919f1b6ed29281ddcd
2017-09-09 07:56:35 -05:00