We fail bindgen layout tests on 32 bit because FontComputationData does not accurately reflect the size/alignment of the rust-side replacement.
We move it to the end so that alignment is more straightforward, and
use a NonZero enum so that the representation can be more accurately
handled on the C++ side.
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1382190
Source-Repo: https://github.com/servo/servo
Source-Revision: a64f085ee0cc3d526dd7531ce132c32c2e10b3f5
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2581c78c4b627ff65def07226ea1976819d63a83
This is the Servo-side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1380133.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7b71070c04f1e1b10fdc7aa397ad687710313e09
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3fa72f7564d3a5d5df662b033fb33c5ceda4b0f3
Was about the time.
Source-Repo: https://github.com/servo/servo
Source-Revision: f594ae58a68479af958989aae369a2bfee2b2246
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0c6942502e978107dabbbda199194c1501d9992f
These are the bugs I discovered while I was re-enabling the disabled grid mochitests. Now all grid mochitests are passing! Additionally I converted `Vec<CustomIdent>`'s into `Box<[CustomIdent]>`. We are storing so many line names in vectors. These should help a bit.
---
<!-- 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
Source-Repo: https://github.com/servo/servo
Source-Revision: 20a3b0236d20e621591e751646758e833526084b
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f13ef9b3cff0cff4ff2c71f1ca7ece1ccc8483b2
These are the Servo-side changes for [Bugzilla bug 1381389](https://bugzilla.mozilla.org/show_bug.cgi?id=1381389).
Source-Repo: https://github.com/servo/servo
Source-Revision: 513e6b297925387aa21d8382907d4b9283bf6c1e
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f04cda9778e7ef619bfdff85b09bcb3fb6eefb2c
This was removed recently in the ComputedValues patch, and makes traversal
logging rather unusable.
Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1382357
Source-Repo: https://github.com/servo/servo
Source-Revision: 37d96f5ca9cf6df08dcb9a98455cbf297ec22cff
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed1e3f1a7d8600447fc6a7c446812399752aef60
While decomposing a 3D matrix, we should normalize the 2nd row right after the
Y scale computation. However, we accidentally use the length of the 1st row to
do the normalization. This causes the wrong Scale3D function while decomposing,
and then leads to the wrong decomposed 3D matrix.
Here, we correct it by using the right value (the length of the 2nd row).
r=hiro https://bugzilla.mozilla.org/show_bug.cgi?id=1381196
Source-Repo: https://github.com/servo/servo
Source-Revision: a9b748f17a37bfbd8265f003ac6c240755b5a920
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 24b4878ac8430bbe87e3af64c6e8a2288a947b34
<!-- 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#15994 (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: e7b195b060fc9240393ad2754d3a92829b406541
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7ab9281e1f857f4a780eb08a6bc1deeb82c0f5ea
This should be a straightforward performance improvement in pages with lots of CSS property values that the parser does not understand.
---
- [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 there's no functional difference.
Source-Repo: https://github.com/servo/servo
Source-Revision: b70cbeb84caf5ec4a90a900fc5d4082989044acd
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 18e9fcafa9b8e8137b3991331effc2a629ff3e88
This causes a warning it today’s Nightly: https://github.com/rust-lang/rust/issues/42868
… which makes the build fail because we use `#![deny(warnings)]`. This warning is planned to become a hard error in a future Rust version.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9597fec9fa82f4e64c2f28889d6865722cadcd5d
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 730cca773decf44383059e9631f37461443aeca4
The `stylearc` alias is left there temporarilly and will be removed completely in a later commit/PR where also `components/style/gecko/generated/structs_{debug|release}.rs` are re-generated (they still use the old alias).
---
<!-- 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#17768 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because no new features / only refactoring
Source-Repo: https://github.com/servo/servo
Source-Revision: 31228c18499d1c7f68b6b64b559354c768e81215
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4d7b64e8a000a80d9daf9b1a511682416f456ff5
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1381431
---
<!-- 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
Source-Repo: https://github.com/servo/servo
Source-Revision: e57ed3d42f818630157102e824867a763964291e
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3ce8d09787930c54db8fe7de8b20d07fc82e4daf
This is the Servo side change for [bug 1379901](https://bugzilla.mozilla.org/show_bug.cgi?id=1379901).
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b6d29e31996c87218352b825aa93e01909a6a24
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9bd15748044f3449ccebd8394293933500f8f342
This matches the behaviour of Gecko's CSS parser.
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix#17736
- [X] There are tests for these changes
Source-Repo: https://github.com/servo/servo
Source-Revision: 38f4ae80c4b456b89ee33543c8c6699501696c9c
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1a1909fa1db0e97b0997462f48b23827f84394f0
For undisplayed elements, at least.
Source-Repo: https://github.com/servo/servo
Source-Revision: d8ba8cad58a21210270faf2b337bef4f1c44aad6
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3258595cafc95c61e4e3aeb3ac6152ed8a4a86f2
<!-- Please describe your changes on the following line: -->
Rewrite if statement in more rusty style.
---
<!-- 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#17699 (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: 98836ff30d6c13a49902b7a15324ea94ee062046
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 55e31d5a79278fbf5eb362a356d166bc39835b95
This allows us to have ensure_data() and clear_data() functions on the TElement
trait, instead of hacking around it adding methods in random traits.
This also allows us to do some further cleanup, which I'd rather do in a
followup.
Source-Repo: https://github.com/servo/servo
Source-Revision: 3497bbbf1d092dd8ab274e21b33b6394afa61d8a
--HG--
rename : servo/components/script/layout_wrapper.rs => servo/components/layout_thread/dom_wrapper.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9f6c194ea4b1056ff3cd3854726a7a5ae43f4aa7
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1371450
---
<!-- 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
Source-Repo: https://github.com/servo/servo
Source-Revision: f9642b36bda3beb01dfedbc33e3586e5f7df473a
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cff83db1f2d332805835091f3e0ebcc38de51e77
Make Servo's rounding of image-orientation values agree with Gecko's,
and pass orientations directly as an enum instead of as angles.
Depends on a Gecko change to be subsequently landed in m-c.
Were reviewed here: https://reviewboard.mozilla.org/r/155336/
<!-- 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 [Bugzilla Bug 1355380](https://bugzilla.mozilla.org/show_bug.cgi?id=1355380) (github issue number if applicable).
<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because they
<!-- 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: 3fb309c7554e1a2ee2917348da8572e9b6d98c98
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 27b98eb71173b396b0cbe4aa13a8002b3cfa8736
It was storing both TrackSize and TrackRepeat before and TrackRepeat have to be
converted into sequence of TrackSize during serialization. Instead of doing this
in serialization process(which is hard and hacky), we converted to do this in
parsing process. We were doing this conversion in the ComputedValue conversion.
So we only had to move this process to 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
Source-Repo: https://github.com/servo/servo
Source-Revision: 124a23b207d645d994eddc27efd409c22dc0aa28
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 84c1504441a37d5fd8a9acbe9c9b1cae2cae56b6
This relands #17701, with a fix for the test failures.
Source-Repo: https://github.com/servo/servo
Source-Revision: f49650ce96578c200c71b0a8fa50094764a3c76d
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c766e6a5e7cb14d45b722f73fb6b63b1f50d97e2
It's trivial to do so after #17688.
Source-Repo: https://github.com/servo/servo
Source-Revision: 1c85c55d02458afffea0ec898e4560d62d447e4e
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 13330c26af646ba7d48b10fbcc90cc02272e145c
We never use the reconstruct path for the root, but feels less handwavy.
Source-Repo: https://github.com/servo/servo
Source-Revision: 394921e33cf9e9d83a7f25d30f007aa1fd0b8179
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 78fa4cd653c238a28e1840bae789cb24b2b5ac4c
All the information that made those failures expensive is now lazily computed
and cached, or eagerly computed anyway, so seems not worth to stop iteration.
Source-Repo: https://github.com/servo/servo
Source-Revision: 788ba8ccf0fee481ab051866704e01ac74872e31
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e2e8144891ff3f8fb41fba38fbc1f37f5c781693
In multiple places, instead of generated similar code for each CSS property, have a single code path that uses an enum such as `LonghandId`.
Fix https://bugzilla.mozilla.org/show_bug.cgi?id=1377262
Machine code size is measured with [bloaty](https://github.com/google/bloaty), looking at the total "VM size" in order to exclude debug info (which is stripped in binaries shipped to users).
```
mach build-geckolib --release
bloaty target/geckolib/release/libgeckoservo.a
```
Initial size was 9.56Mi. Successive commits in this PR bring it to 9.55Mi, 9.51Mi, 9.44Mi, 9.31Mi, 8.89Mi, 8.89Mi, and 7.54Mi. Total savings: 2.02 MiB.
In an optimized Firefox build with `mach build && mach package`, the size of `obj-x86_64-pc-linux-gnu/dist/firefox/libxul.so` goes from 109.11 MiB to 107.49 MiB, saving 1.62 MiB. I don’t really know how to explain the difference. Does `libgeckoservo.a` contain code that ends up not being used in `libxul.so`?
Source-Repo: https://github.com/servo/servo
Source-Revision: 68ae7ceff6e95f1008c6f32f240c1601e5d440d1
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3900ed70ecca1e3e31b627dec0264b8598c16bac
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
From https://bugzilla.mozilla.org/show_bug.cgi?id=1367274
Source-Repo: https://github.com/servo/servo
Source-Revision: 347cbb0635c0f1fea581ed3c3d686bdacc3bc334
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2b03e79ac61cbc6efaf7afc63ccb99b06afea04c
This should help a lot with https://bugzilla.mozilla.org/show_bug.cgi?id=1380488.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9515abbca396c176e6a5c603a193573ac0cb9e33
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a4601778f9a782387203cceb70efe733848cee16
This reverts commit ebfc8f585834948f9b7564ffe382a6e266edf738, reversing
changes made to 5585ff2c440dc27c8e98e834c9c0e9d956581b8e.
Animation code can reenter and create a new TLS context from the traversal
SequentialTask, so this won't work as written, and it's making test fails.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9d74ae890b31fc45452ae60af7d89573fc52a86f
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b993fffb20fc8371a4aa42163e6712b9f1ebf33d
This would catch cases like #17691 and avoid regressing [bug 1380327](https://bugzilla.mozilla.org/show_bug.cgi?id=1380327) in this manner.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9451b41d33d00016cfd45b0c4fc7a999a83169a9
--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8eb9d421cd2d075e24fecfae662ff8923db21394