I'm going to touch this in a bit, let's do it a bit less painful.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7354a32c19ca452748ee83452c03a4e15f11f242
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cee3c8dc4e89d9e56c128c842020ed95c9d7efeb
Try to resolve the ongoing issues on cross builders where the sccache server takes up 50% of available memory.
Source-Repo: https://github.com/servo/servo
Source-Revision: caefaa79c9d3269b10464f17c3d991bd2c0f954e
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2deba44596a4a3a88bffefda23652f3fef987cb1
<!-- Please describe your changes on the following line: -->
Run the servo-warc-tests as part of performance testing.
Depends on https://github.com/servo/servo-warc-tests/pull/1
---
<!-- 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 this is adding more test infrastructure
<!-- 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: 2024ef56b00d4fce0c173f4d47474d97d767379d
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4398dd8ef8162dade4a0404b091e207cc9a2e814
<!-- Please describe your changes on the following line: -->
@jdm @KiChjang @Manishearth Follow up on https://github.com/servo/servo/pull/18676 and https://github.com/servo/servo/pull/19274 to ignore aborted responses in caching.
I also found out the cache shouldn't return any response whose body is still in `ResponseBody::Receiving` mode, because that fails the assertion at https://github.com/servo/servo/blob/master/components/net/fetch/methods.rs#L438(we might want to add a channel as pat of the cached response later on to deal with this case). I only found out now because I needed the response from the server to trickle in so that it could be cached and aborted.
I copied the `http-cache.py` server from the wpt folder, and added a 'trickle' option, which is necessary to actually have a failing test with a cached but aborted request, it's now passing.
I also remove one unused import that slippled through previously.
---
<!-- 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: 4307b6e67b0cb35e2afc46ba0b64e7bc5bde1bdf
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4631dd57c5f691119b287f2aa04ee97fedfdf406
Added default fall-back when CARGO_HOME is not set.
---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#19823 (github issue number if applicable).
Source-Repo: https://github.com/servo/servo
Source-Revision: 06aa339a1bf578d90f4c5a88877b579b67f33a56
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3c3f389c420043db190cb94624b2cea9973f52f0
This makes an element available in StyleAdjuster, and uses it to replace some of our CascadeFlags (the ones that don't represent restrictions on what's actually cascaded, actually).
That fixes handwaviness in the handling of those flags from style reparenting,
and code duplication to handle tricky stuff like :visited.
There are a number of other changes that are worth noticing:
* skip_root_and_item_based_display_fixup is renamed to skip_item_display_fixup:
TElement::is_root() already implies being the document element, which by
definition is not native anonymous and not a pseudo-element.
Thus, you never get fixed-up if your NAC or a pseudo, which is what the code
tried to avoid, so the only fixup with a point is the item one, which is
necessary.
* The pseudo-element probing code was refactored to return early a
Option::<CascadeInputs>::None, which is nicer than what it was doing.
* The visited_links_enabled check has moved to selector-matching time. The rest
of the checks aren't based on whether the element is a link, or are properly
guarded by parent_style.visited_style().is_some() or visited_rules.is_some().
Thus you can transitively infer that no element will end up with a :visited
style, not even from style reparenting.
Anyway, the underlying reason why I want the element in StyleAdjuster is because
we're going to implement an adjustment in there depending on the tag of the
element (converting display: contents to display: none depending on the tag), so
computing that information eagerly, including a hash lookup, wouldn't be nice.
See each commit for details.
Source-Repo: https://github.com/servo/servo
Source-Revision: 02331617b9bd7a379b05f7daa7ad09a44c27504c
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dceeca4961762c9f7414007c83ceed03e00c720b
Rebase of #17171.
Source-Repo: https://github.com/servo/servo
Source-Revision: 65f549094f4664c5fb1cd8a17dd2cab0ebcf1806
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 33415ab3b5500de962f41a7de5242406ac2e384f
… no text)
This is my first layout fix and a naive approach to fix#18831.
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#18831
Source-Repo: https://github.com/servo/servo
Source-Revision: ec8975b18d043fd0c97678b93d6e8f56c504cee7
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : be879c3acc155feef75b1b076e542cf5dff0c403
<!-- Please describe your changes on the following line: -->
Sub-PR of #19015
r? 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 build-geckolib` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#19775 (github issue number if applicable).
<!-- Either: -->
- [x] These changes do not require tests
<!-- 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: 59033e697063e6bbe0f0c4c56e4d9aeff46a3336
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 038ba4fc5a8ddbc6099c7a88429c3d16ec2962e7
See each commit individually.
Source-Repo: https://github.com/servo/servo
Source-Revision: 6fc71a7644bd7afcccf83f67cfdaf01897e1a3bc
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 61fb59e354c7ad8307d6f76b93bd365abc575c85
r? emilio
Here's my initial attempt to fix#19430. It seems surprisingly simple so I am wondering whether I have missed something! (Or maybe it just actually is quite simple...)
Some things I am unsure about:
1. The spec seems vague about what a [CSS layout box](https://drafts.csswg.org/cssom-view/#css-layout-box) actually is. Indeed it says: "The terms CSS layout box and SVG layout box are not currently defined by CSS or SVG."
2. One thing the spec *does* say explicitly is "For the purpose of the requirements in this specification, elements that have a computed value of the display property that is table-column or table-column-group must be considered to have an associated CSS layout box (the column or column group, respectively)." I am unclear about the relevance of this, since [overflow does not apply](https://drafts.csswg.org/css-overflow-3/#overflow-properties) to an [internal table element](https://drafts.csswg.org/css-display-3/#layout-specific-display). Therefore I haven't done anything about this explicitly, but maybe I'm missing some nuance.
Source-Repo: https://github.com/servo/servo
Source-Revision: bccb757bcd630255c48290ee396b755483d34772
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bbbb4e2712417c22b2c49161daee55b2bd72183b
This fixes bugs where we're not passing the value around correctly, like from
::-moz-any.
This is a fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1431539.
Source-Repo: https://github.com/servo/servo
Source-Revision: 0d7d02fca772a407d4ffa1ebd1e03d60f385eb74
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3d27604818f36b68c16d53ef143b4ef892c006e
The effort to import Gecko's media stack into Servo has been canceled, so I am removing the bits of code from gecko-media that we added to Servo.
- [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: acdbbd51af06890c96481698199c61b9ef056618
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 71f53341748941adf287304594964775d6225f98
It makes no sense to pass a custom base size of zero in presence of rem, ex, or
ch units.
Bug: 1431031
Reviewed-by: Manishearth
MozReview-Commit-ID: 7ZZwRzQKREX
Source-Repo: https://github.com/servo/servo
Source-Revision: 671b69c0b77f9a4bd0c098cb2a2f73c95dacb954
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 27826dc148aa91600c56214351bdd8e8e2c3b408
<!-- Please describe your changes on the following line: -->
auto clean cache in build bot
once this merged, servo/saltfs#321 should be closed
---
<!-- 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#19712 (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: d11886e9a12c2ef7262e34de3de7595005a66080
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7f60a4311d90d6dfc950da5f6bda80d671a23d45
Use more WebRender types in gfx/display_list.
This uses floating-point (Layout) coordinates in where possible.
Replace NormalBorder struct with WebRender equivalent.
Remove ToPointF and ToRectF traits.
Convert border RepeatKeyword with ToLayout.
Add some definitions to malloc_size_of for WebRender types.
Source-Repo: https://github.com/servo/servo
Source-Revision: aee0d694cc077d4694fc3114af3a2ad83e326cbf
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 799b94b96707c2330a3108babe3ba12feae14d38
It became the default in debug mode in the last Rust/Cargo update.
Source-Repo: https://github.com/servo/servo
Source-Revision: f3220eab1e6f39b4817e5ea62755a4dc6cb15c87
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4c8b3a97295f23d54960825c96e55038bbd395dd
Since it was removed from gecko, and this confuses a lot to
ports/geckolib/tests/build.rs.
Source-Repo: https://github.com/servo/servo
Source-Revision: 1f6a864ab5372fe4f59b1a4c3db7cf8e7a79b06d
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 16f690c5b5e3af8dfe2fb7207496a196c5875032
<!-- 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#19392 and fix#19393 (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: fa82a6bbcef23c1ff4dc9d34f5f4ad75b622b3be
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cae51bf1f4bd98042047f579a9e3cd5bbf5006db
I happened to be looking at it.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8a740aa4d1e75aad9308e3eb805ed3e15078fb59
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed8628cfef0d096dc79f96ebafced4853a805ee4
Added gfx_traits::DisplayList so metrics doesn't depend on the gfx crate for gfx::display_list::DisplayList.
---
<!-- 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#19422 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because succesful compilation should be enough
<!-- 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: 8281ee004336049df11cc0478cb3c8b5610c6bde
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 07b42adf960519242136f890a37a20eb6599339a
<!-- Please describe your changes on the following line: -->
implement range input sanitation.
Since there is no `min`, `max`, `step` implementation currently, this should be continued in the future.
r? KiChjang
---
<!-- 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#19172 (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: 4f099876116c91173a104e32dfcfc32a6d644155
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 073261e7bcf548ce44007e254cefa72ffa13903e
This is the "better way" I mentioned in #19774, which seems to actually improve the score of dromaeo_css on talos.
Source-Repo: https://github.com/servo/servo
Source-Revision: 525758ea5ef67148c28acae9404916691e9a960c
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0d5d151d5cadca6bf2feed3e0fe463a1b02e753d
By force-inlining the fast path, and pulling out a branch that rust didn't manage to pull out.
Source-Repo: https://github.com/servo/servo
Source-Revision: 1ac35dc7abd0b984838dfa4be581a319158190a5
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 90067b7f21848f4c36b9856e385ad90dc2fe79c9
We have updated gecko's preference for shadow dom, so updating servo part too.
Source-Repo: https://github.com/servo/servo
Source-Revision: cafc152e1b536646b156a8e61b3c46183b5c9cc4
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8776bf21ddcfb0e9fcf1f203e5edbc70f02b2d37
In total, this PR saves ~60k.
The conditional compilation on the _Debug FFI function eliminates one
of the ToCss variants, eliminating 54.4k, as well as a bunch of other
<1k functions. Removing the public trait implementation of Debug for the
font metrics provider eliminates the last Debug impl from stylo.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7de87c487b247b479fa38c40f683de8783032e11
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7cc20f7e93f1ea483d54ae1668c7dd0402737761
<!-- Please describe your changes on the following line: -->
Sub-PR of #19015
---
<!-- 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#19742 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests
<!-- 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: 2ff3e119faab0488ebd4d790600d07695404f883
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 01b2a9b44500eca908d8d8ddd3ce956b2b214a3d
It is bogus, because it depends on the display property as it's cascaded, but
the display property can change afterwards, for example, if we get blockified
because we're the root element or a flex item.
Replace it with a normal field instead.
Also, it carries some weight, because it's the last property that uses this
concept of "derived" property, and "custom cascade". So we can remove some code
after this.
Compute it after the cascade process in StyleAdjuster.
Source-Repo: https://github.com/servo/servo
Source-Revision: f2036e7661a3f865b38d8296cc1b8ab98e60f679
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0206357b95137b0ebb8533d71d7a705faf781e60
It's kind of a mess. See individual commits for details.
Source-Repo: https://github.com/servo/servo
Source-Revision: 032fd388e4efdd9ecc682877d017b9d2f78e29e2
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f365989a4d7c713caf92ed0ef34a228a6243644e
Implement this change in the Performance Timeline API https://github.com/w3c/performance-timeline/issues/66
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] There are tests for these changes
Source-Repo: https://github.com/servo/servo
Source-Revision: f866e1aacb5bcf17a7d11c6106d34b474d6b4f33
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 55e08a3e9a94522e4e53acbb39e8f737171837c1
This is a sub-PR of #19015
r? emilio
For the `fn set_original_display` inside `properties.mako.rs`, I removed `is_item_or_root` first to see how the tests result is. If it's needed, I'll add it back.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix#19697
- [x] These changes do not require tests
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b46e2e7597e90a41c6bfb3bd7008bdd922c93c6
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fd06f9afbcc05acfe20eb48096e421d7dd5b3c2e
See https://bugzilla.mozilla.org/show_bug.cgi?id=1351737#c29
This patch saves more than 80k of code size.
Source-Repo: https://github.com/servo/servo
Source-Revision: 08fc9f190d7e1eaa11560b5924e243ba686c3d79
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5c71e5e84415f8934a4e72b75e357d1962f82def