Commit graph

253 commits

Author SHA1 Message Date
Cameron McCormack
6b5853fa8e Bug 1474793 - Part 10.8: Add derived ToShmem implementations. r=emilio
Depends on D17196

Differential Revision: https://phabricator.services.mozilla.com/D17197

--HG--
extra : moz-landing-system : lando
2019-03-30 00:16:25 +00:00
Cameron McCormack
cf65641653 Bug 1474793 - Part 10.1: Add simple ToShmem implementations. r=emilio
Depends on D17189

Differential Revision: https://phabricator.services.mozilla.com/D17190

--HG--
extra : moz-landing-system : lando
2019-03-30 00:16:11 +00:00
Cameron McCormack
8c9949aa66 Bug 1474793 - Part 9: Add support for deriving ToShmem. r=emilio
Depends on D17188

Differential Revision: https://phabricator.services.mozilla.com/D17189

--HG--
extra : moz-landing-system : lando
2019-03-30 00:16:08 +00:00
Cameron McCormack
b3a8e5cfb6 Bug 1474793 - Part 7: Add SharedMemoryBuilder type and ToShmem trait. r=emilio
Depends on D17186

Differential Revision: https://phabricator.services.mozilla.com/D17187

--HG--
extra : moz-landing-system : lando
2019-03-30 00:15:59 +00:00
Emilio Cobos Álvarez
5eb5f7eff7 Bug 1530847 - Add a Zero trait that doesn't require Add, and use it in place of num_traits and IsZeroLength. r=heycam
Use it to be consistent in InsetRect serialization and storage between Servo and
Gecko.

Differential Revision: https://phabricator.services.mozilla.com/D21493

--HG--
extra : moz-landing-system : lando
2019-02-28 19:03:03 +00:00
Emilio Cobos Álvarez
6f7882539b No bug - rustfmt recent changes. 2019-01-29 03:22:06 +01:00
Bobby Holley
819658d44b Bug 1521187 - Derive more. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D17029
2019-01-22 12:19:22 -08:00
Shanavas M
03d98acfa8 Bug 1519269 - Remove OrderedMap in favor of IndexMap. r=emilio
This cherry-picks https://github.com/servo/servo/pull/22656.
2019-01-11 01:02:54 +01:00
Cameron McCormack
81b00f453b Bug 1500362 - Use atom handles in favour of atom pointers in style system code r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D15078

--HG--
extra : moz-landing-system : lando
2019-01-07 07:54:46 +00:00
Emilio Cobos Álvarez
1834c20f36 Bug 1518045 - Make Servo use a single thread-pool for layout-related tasks per-process. r=jdm
Instead of per-document. This also allows to reuse this thread-pool if needed
for other stuff, like parallel CSS parsing (#22478), and to share more code with
Gecko, which is always nice.

This cherry-picks https://github.com/servo/servo/pull/22487, with a few minor
fixes to the build that are landing as part of the sync associated to this bug,
and an lsan exception tweak to point to the right module since it's moving.
2019-01-07 00:53:04 +01:00
Bastien Orivel
87addfd044 Bug 1511811 - Update crossbeam-channel to 0.3.
Cherry-picks https://github.com/servo/servo/pull/22142
2018-12-03 08:48:15 -05:00
Emilio Cobos Álvarez
1f4fecfcd2 Bug 1511811 - Use https for the MPL license URL.
Cherry-picks https://github.com/servo/servo/pull/22198
2018-12-03 08:43:48 -05:00
shindli
6c6e4a960d Backed out 13 changesets (bug 1511811) for Btup bustages
Backed out changeset d71cde918f43 (bug 1511811)
Backed out changeset 0ae2634de8e1 (bug 1511811)
Backed out changeset 53d1f5ca4099 (bug 1511811)
Backed out changeset 5a08148928ef (bug 1511811)
Backed out changeset da7816ec50ef (bug 1511811)
Backed out changeset 5fe23889cccc (bug 1511811)
Backed out changeset 800bc60c75a7 (bug 1511811)
Backed out changeset 2392d8199cd0 (bug 1511811)
Backed out changeset 7bc486fbd195 (bug 1511811)
Backed out changeset d2c997426108 (bug 1511811)
Backed out changeset ddd573878432 (bug 1511811)
Backed out changeset 29c8ec1559a4 (bug 1511811)
Backed out changeset f5851346109d (bug 1511811)

--HG--
rename : third_party/rust/darling_core/src/macros_private.rs => third_party/rust/darling_core/src/macros.rs
2018-12-03 15:39:11 +02:00
Bastien Orivel
768dd101be Bug 1511811 - Update crossbeam-channel to 0.3.
Cherry-picks https://github.com/servo/servo/pull/22142
2018-12-03 08:15:26 -05:00
Emilio Cobos Álvarez
6359ab5223 Bug 1511811 - Use https for the MPL license URL.
Cherry-picks https://github.com/servo/servo/pull/22198
2018-12-03 08:15:21 -05:00
Simon Sapin
f7c7465ccb Bug 1506391 - cargo fix --edition --features gecko. r=emilio 2018-11-11 02:40:24 +01:00
Simon Sapin
4f9e2bcf36 Bug 1506391 - cargo fix --edition. r=emilio 2018-11-11 02:40:21 +01:00
Brindusan Cristian
d67cc09fb1 Backed out 7 changesets (bug 1506391) for Btup bustages.
Backed out changeset b8216171101c (bug 1506391)
Backed out changeset 03d2309b737d (bug 1506391)
Backed out changeset 7b63f3149852 (bug 1506391)
Backed out changeset be88680421db (bug 1506391)
Backed out changeset 3840ce1ebfb0 (bug 1506391)
Backed out changeset 94517e21621c (bug 1506391)
Backed out changeset 32bde6f52a32 (bug 1506391)
2018-11-11 01:08:20 +02:00
Simon Sapin
c584ac16a7 Bug 1506391 - cargo fix --edition --features gecko. r=emilio 2018-11-10 21:14:15 +01:00
Simon Sapin
10fbe4919b Bug 1506391 - cargo fix --edition. r=emilio 2018-11-10 21:14:05 +01:00
Emilio Cobos Álvarez
4a4b56f77f Bug 1505565 - Split up push_applicable_declarations. r=heycam
Introduce RuleCollector, which contains all the state we need during the
cascade, and allows to reuse a bit of code.

Differential Revision: https://phabricator.services.mozilla.com/D11233

--HG--
extra : moz-landing-system : lando
2018-11-08 23:07:40 +00:00
Emilio Cobos Álvarez
176fa6315c Bug 1505618 - Import formatting changes from servo/servo#22126. 2018-11-08 00:50:12 +01:00
Simon Sapin
b02f9a04eb Bug 1491577 - Replace mpsc with crossbeam/servo channel, update ipc-channel. r=emilio
This cherry-picks servo/servo#21325.

Co-authored-by: Gregory Terzian <gterzian@users.noreply.github.com>
2018-09-15 19:24:23 +02:00
chansuke
41097313c4 Bug 1489862 - Format style component. r=emilio
This cherry-picks servo/servo#21652.
2018-09-09 17:03:19 +02:00
Emilio Cobos Álvarez
62a00ac718 Bug 1425700 - Add a very simple use counter implementation. r=heycam
As simple as I could make it, for now. We can improve on this.

Differential Revision: https://phabricator.services.mozilla.com/D3827
2018-08-28 15:58:17 +02:00
Emilio Cobos Álvarez
03eea217a8 Bug 1481961: Rewrite media queries so that they work on an evaluator function. r=xidorn
This moves most of the code to be Rust, except potentially some evaluator
functions, and allows to unblock the use case from any-hover / any-pointer and
remove nsMediaFeatures.

Differential Revision: https://phabricator.services.mozilla.com/D2976
2018-08-15 16:09:19 +02:00
Emilio Cobos Álvarez
a8579f90d1 Bug 1481681: Fix Servo build and unit tests. r=me 2018-08-08 01:39:59 +02:00
Cameron McCormack
046bd5fe7f Bug 1475197 - Part 1: Shrink selectors::Component to 24 bytes. r=emilio
This saves about 37 KiB of memory across the UA style sheets.

MozReview-Commit-ID: EoZnlmyWwxX

--HG--
extra : rebase_source : cd8ef0ba838618f9a4583b7d9896caa3a0602199
2018-07-16 12:15:47 +10:00
Nicholas Nethercote
6a531f189d Bug 1477628 - Convert FnvHash{Set,Map} instances to FxHash{Set,Map} (attempt 2). r=heycam 2018-07-27 16:49:04 +10:00
Bogdan Tara
92db9979a0 Backed out changeset 72b855b514f9 (bug 1477628) for rusttests build bustages CLOSED TREE 2018-07-27 07:00:56 +03:00
Nicholas Nethercote
2475b3e62f Bug 1477628 - Convert FnvHash{Set,Map} instances to FxHash{Set,Map}. r=heycam
It doesn't appear to make much difference to performance, but it does let us
remove the `fnv` crate from the repo.
2018-07-27 09:01:15 +10:00
Emilio Cobos Álvarez
71a7af886c Bug 1459436: Remove some unneeded cfg(..). r=emilio
The less not-compiled code in common builds, the better for everybody.

MozReview-Commit-ID: 3JQfz6AYhPG
2018-05-05 18:07:46 +02:00
Bobby Holley
b515de0c66 servo: Merge #20603 - Run rustfmt on selectors, servo_arc, and style (from bholley:rustfmt_style); r=Manishearth
Now that rustfmt is getting close to stable, and work on the style system has died down a bit, it seemed like an opportune time to auto-format the style crates.

The first commit disables import reordering, since tidy and rustfmt don't currently agree on the correct ordering. The second commit does a bunch of manual fixups such that the output of rustfmt passes tidy. The third commit runs rustfmt on the three aforementioned crate.

There are a few dozen warnings in the style crate about lines longer than 100 characters. It would be good to fix these, but I don't have time for that now.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2b228d52a084bc832444ac686290840c4369f98d
2018-04-10 21:00:11 -04:00
Anthony Ramine
c9fb6e7946 servo: Merge #20196 - Derive some more ToCss implementations (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 266258331ee16fe90a96dffa9ec78bbe4d3e3f9f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5041071b942fcb64675d2f7bb19a8a31f20d8916
2018-03-05 06:03:53 -05:00
Emilio Cobos Álvarez
946bc4825a servo: Merge #20061 - style: Make XBL / Shadow DOM use something more light-weight than a Stylist (from emilio:author-styles); r=xidorn
Introduce AuthorStyles, which is just a struct aggregating stylesheets +
CascadeData, with a quirks_mode parameter because XBL sucks so bad.

Bug: 1436059
Reviewed-by: xidorn
MozReview-Commit-ID: 7q99tSNXo0K
Source-Repo: https://github.com/servo/servo
Source-Revision: 504b901cc82db5c5e02e157cec9753f7c297ac2c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 79252144a91938156e03e4bf1be76988a14beeed
2018-02-16 09:54:06 -05:00
Anthony Ramine
4418aea71e servo: Merge #20014 - Optimise some AnimationValue methods for size 🐉🐲 (from servo:by-the-power-of-void); r=emilio
This shaves 40KB off of libxul.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : df1457b06a0eb8d7bdc1097b1c0bf4f79ff14b27
2018-02-10 10:32:21 -05:00
Anthony Ramine
f42317f931 servo: Merge #19980 - Merge all keyword arms in Clone for PropertyDeclaration 🐉🐲 (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 41fb6ed1ffda877c24747a4d209bb32885ac6b2f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4fe49db37e4463fa1bd09e6cd1b6cefc11a24530
2018-02-09 16:17:01 -05:00
Manish Goregaokar
7f2c119b46 servo: Merge #20001 - Autogenerate compute_damage (from Manishearth:compute-damage); r=mbrubeck
fixes #10622

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d2c9df586b89b582e0edbff92c8ba125f80081f4
2018-02-09 12:02:04 -05:00
Emilio Cobos Álvarez
fc8adba3d6 servo: Merge #19974 - style: Optimize serialization of identifiers of length <= 16 🐉🐲 (from emilio:atom-serialization); r=nox
Much like we optimize to_ascii_lowercase.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f521b9538c760908309d22f88178b669f5a7fa47
2018-02-07 13:33:36 -05:00
Anthony Ramine
3c001b1302 servo: Merge #19903 - Derive more Parse implementations (fixes #19827) (from servo:derive-all-the-things); r=emilio
Fixes #19827.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f93a22318ff5d7c3999c299dd9edb08daa132366
2018-02-01 05:52:08 -06:00
Simon Sapin
235145b016 servo: Merge #19914 - Remove #![deny(warnings)] (from servo:dont-deny); r=nox
We already have https://github.com/servo/servo/pull/19612 to deny warnings at the time of landing into master. But it’s not useful to break the build when later compiler with a more recent Rust version that has introduced new warnings:

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 7546c37f1e921a112fef5828c59c6738a98c3f30

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed5c34f72e321ce0051347bd5156389d1ef26bef
2018-01-31 11:01:26 -06:00
Anthony Ramine
49a11036dc servo: Merge #19838 - Make ToCss' SequenceWriter not monomorphise like a maniac anymore (from servo:rm-sequence-writer-as-it-was); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 6b2e5283c9e810ac316c203849b6ea25544a62c7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : be769cfabdde7902aa33f0b06ebb47c1823353e7
2018-01-23 12:03:41 -06:00
Emilio Cobos Álvarez
8d75c1de44 servo: Merge #19230 - style: Move lru_cache to its own crate (from emilio:lru-cache); r=nox
One less crate pointlessly in components/.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6938b4f3ebcb7bea6c44081796b254a31e0df5cb

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 64dac15fa38023f09a61e2c6d9289067b6fcb081
2017-11-15 22:40:06 -06:00
Emilio Cobos Álvarez
ef781bb493 servo: Merge #19199 - style: Stop allowing unused_unsafe (from emilio:no-unused-unsafe); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 40adc3fd88746d09966c5f1c43a6ff3b960c2e6d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d9206a58535460c1ebb7c0769e0ec253407c48b8
2017-11-15 08:22:00 -06:00
Emilio Cobos Álvarez
7938523772 servo: Merge #19198 - style: add accidentally removed deny(warnings) (from emilio:whoops); r=whoops
It was accidentally commented out in #19197 because I was developing on a Gecko
tree without #19162.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 186f2e5e33df66a61aec0dbaede77a9a1c7ae427
2017-11-13 07:35:55 -06:00
Emilio Cobos Álvarez
7a8974f187 servo: Merge #19197 - stylo: Integrate Servo SourceSizeList in ResponsiveImageSelector (from emilio:source-size-list-integration); r=Manishearth
Bug: 1408308
Reviewed-by: Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 5d3a90ecce766f3dfba35e08101a74a5d73dba79

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c42fd34a69c86c1c778bd54dfdccf1611146e8e7
2017-11-12 21:01:34 -06:00
Nika Layzell
d89819000a servo: Merge #18993 - Move nsstring from gecko into servo/support/gecko/nsstring (from mystor:nsstring2); r=mystor
This is the servo side of bug 1403213.

Take 2 of #18941 which got backed out because we botched the landing of the gecko side and I wasn't able to fix it in time.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0e6946fd9c279425e66721e6eb2b1e323e4c640f

--HG--
rename : servo/components/style/gecko_bindings/nsstring_vendor/src/lib.rs => servo/support/gecko/nsstring/src/lib.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6d2fb196b2ed25c0201097d20e07b2e757096d00
2017-10-23 17:26:28 -05:00
Sebastian Hengst
e045239d71 Backed out changeset 196206f129ef (bug 1403213) for referencing non-existing xpcom/rust/gtest/moz.build in xpcom/moz.build. r=backout on a CLOSED TREE
--HG--
rename : servo/support/gecko/nsstring/src/lib.rs => servo/components/style/gecko_bindings/nsstring_vendor/src/lib.rs
extra : amend_source : 38517df328727184682c048c4c741b384fcddd58
2017-10-20 21:31:59 +02:00
Nika Layzell
d7c878d8ac servo: Merge #18941 - Move nsstring from gecko into servo/support/gecko/nsstring (from mystor:nsstring); r=mystor
This is the servo side of bug 1403213.

This cannot merge until https://bugzilla.mozilla.org/show_bug.cgi?id=1377351 merges. It is currently on inbound. This will break autoland when it merges until the gecko-side part has also landed.

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

--HG--
rename : servo/components/style/gecko_bindings/nsstring_vendor/src/lib.rs => servo/support/gecko/nsstring/src/lib.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ee57178ea85a844d5fb5c15e9aab3d430c0ac9a1
2017-10-20 12:32:05 -05:00
Nicholas Nethercote
5a62942911 servo: Merge #18938 - Replace all uses of the heapsize crate with malloc_size_of (from nnethercote:bug-1409255); r=SimonSapin
Servo currently uses `heapsize`, but Stylo/Gecko use `malloc_size_of`.
`malloc_size_of` is better -- it handles various cases that `heapsize` does not
-- so this patch changes Servo to use `malloc_size_of`.

This patch makes the following changes to the `malloc_size_of` crate.

- Adds `MallocSizeOf` trait implementations for numerous types, some built-in
  (e.g. `VecDeque`), some external and Servo-only (e.g. `string_cache`).

- Makes `enclosing_size_of_op` optional, because vanilla jemalloc doesn't
  support that operation.

- For `HashSet`/`HashMap`, falls back to a computed estimate when
  `enclosing_size_of_op` isn't available.

- Adds an extern "C" `malloc_size_of` function that does the actual heap
  measurement; this is based on the same functions from the `heapsize` crate.

This patch makes the following changes elsewhere.

- Converts all the uses of `heapsize` to instead use `malloc_size_of`.

- Disables the "heapsize"/"heap_size" feature for the external crates that
  provide it.

- Removes the `HeapSizeOf` implementation from `hashglobe`.

- Adds `ignore` annotations to a few `Rc`/`Arc`, because `malloc_size_of`
  doesn't derive those types, unlike `heapsize`.

<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1409255

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] 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: 4c538b642e4bdfbf42c522c5a59c258a6d14546e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f9a6feed1088d0b0be2b55d7f0c2ec9c594ac33b
2017-10-18 13:56:05 -05:00