Commit Graph

44 Commits

Author SHA1 Message Date
Simon Sapin
a917619a4a servo: Merge #18808 - Use the current parser location for CSS error (from servo:error-location_); r=emilio
… rather than the start location of the current construct. This likely places the error just *after* of the unexpected token whereas before would be best, but that’s likely a much bigger change.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c79a54dbd9d3a590f5fd8191b8e57a0b9d1d0fdb
2017-10-10 12:31:24 -05:00
Emilio Cobos Álvarez
69532d3599 servo: Merge #18525 - style: various serialization fixes (from emilio:border-spacing); r=nox
This should close https://github.com/servo/servo/pull/18458, and fix https://bugzilla.mozilla.org/show_bug.cgi?id=1397619.

Source-Repo: https://github.com/servo/servo
Source-Revision: f95da332a388cc7a94ddfc363872f5c570c27885
2017-09-17 15:12:46 -05:00
Nicholas Nethercote
1f705facf2 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
2017-09-14 02:10:40 -05:00
Anthony Ramine
14a5519913 servo: Merge #18459 - Kill ComputedValueAsSpecified 🔫 (from servo:kill-cvas); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: b856f11388b629759773a905379b1f238a9ca348
2017-09-12 14:14:33 -05:00
Anthony Ramine
9e789e71fc servo: Merge #18447 - Remove most uses of ComputedValueAsSpecified (from servo:kill-cvas); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 5cc2b4f705e420b156899ed55072ccc11d0e50c0
2017-09-11 20:04:12 -05:00
Daisuke Akatsuka
90eef5a4b6 servo: Merge #18380 - Make font-variation-settings animatable (from dadaa:make-font-variation-settings-animatable); r=birtles
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1390702 r=birtles

---
<!-- 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] `./mach test-tidy --stylo` does not report any errors
- [X] `./mach test-unit -p style` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes. The test codes are patch part 4 in https://bugzilla.mozilla.org/show_bug.cgi?id=1390702

<!-- 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: 449ffb23acdd0098193458856de88ec4198724fc
2017-09-05 06:20:33 -05:00
Simon Sapin
5ec19a1d55 servo: Merge #18355 - Reduce usage of fmt in serialization and error reporting (from servo:no-fmt); r=emilio
`format!` and `write!` create a somewhat-heavyweight `Formatting` struct and use dynamic dispatch to call into impls of `Dispaly` and related traits. The former also allocates an intermediate string that is sometimes unnecessary.

I started looking into this from https://bugzilla.mozilla.org/show_bug.cgi?id=1355599, but I expect the impact there will be small to insignificant. It might be a slightly less so on parsing (error reporting).

Source-Repo: https://github.com/servo/servo
Source-Revision: c60dd53210745d9d8e7d3a5ca0310370a33553f4
2017-09-04 13:14:44 -05:00
Anthony Ramine
292de3bdc0 servo: Merge #18301 - Use generics for the vertical-align property (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 174c37fddd3ba66797efdb8067c24003f32c04a7
2017-08-31 09:41:50 -05:00
Emilio Cobos Álvarez
f27de589aa servo: Merge #18300 - style: Remove HasViewportPercentage (from emilio:die-hvp-die); r=nox
It's not needed since #18268, let's kill it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5dee83d54d3f05cc631ee89de612c14e21dd92ec
2017-08-30 04:31:11 -05:00
Anthony Ramine
2d98274b8d servo: Merge #18192 - Derive Animate and ToAnimatedZero (from servo:we-are-leaving-babylon); r=emilio
ONLY PARSE NEEDS DERIVING NOW. THE HYPE IS REAL.

Source-Repo: https://github.com/servo/servo
Source-Revision: ec2dae90685da47c17cde9011736c893b037ff01
2017-08-22 14:53:11 -05:00
Anthony Ramine
bea653582c servo: Merge #18058 - Introduce and derive ComputeSquaredDistance (from servo:compute-squared-distance); r=emilio
This new trait merges the former `Animatable` methods `compute_distance` and `compute_squared_distance`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 60c44b072c12d65d70649391631dd28f1d939b65
2017-08-13 16:23:58 -05:00
Daisuke Akatsuka
a50487ccd7 servo: Merge #17985 - Make list-style-type animatable (from dadaa:make-list-style-type-animatable); r=hiro
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes. The test is patch 3 in https://bugzilla.mozilla.org/show_bug.cgi?id=1382137

<!-- 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: 10c3e2f3ac781905b43b3529253ba1bc9926d9e8
2017-08-07 19:06:43 -05:00
Boris Chiou
9278b63804 servo: Merge #17783 - stylo: Bug 1374233 - Clamp interpolated values for properties which need to be restricted (from BorisChiou:stylo/animation/restrictions); r=nox
Some properties only accept non-negative values, or values greater than or equal to one. It is possible to produce an negative interpolated values while using negative timing functions, so we have to apply a restriction to these values to avoid getting invalid values.

For example, line-height must be non-negative, but the output progress of some timing functions (e,g. cubic-bezier(0.25, -2, 0.75, 1)) may be a negative value, so the interpolated result of line-height is also negative.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix Bug 1374233.
- [X] These changes do not require tests because we have tests in Gecko side already.

Source-Repo: https://github.com/servo/servo
Source-Revision: 016ea11cbaf7586db144be122581c5b110649aee
2017-08-07 11:05:17 -05:00
Xidorn Quan
415cf15228 servo: Merge #17940 - stylo: Support context values for SVG properties (from upsuper:context-value); r=Manishearth
This is the Servo side change of [bug 1338764](https://bugzilla.mozilla.org/show_bug.cgi?id=1338764).

Source-Repo: https://github.com/servo/servo
Source-Revision: ddd779d5b751fa8e173fcbe95a7e1a8af62d1d08
2017-08-01 19:35:47 -05:00
Simon Sapin
6e4b1519ff servo: Merge #17820 - Update cssparser to 0.18 (from servo:token-cache); r=emilio
Do not merge yet, depends on https://github.com/servo/rust-cssparser/pull/171.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4f0821192c112943bb53b4fb04303c1afdde06e6
2017-07-24 06:27:00 -07:00
Anthony Ramine
c744ce9a99 servo: Merge #17798 - Derive some SVGPaint impls (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: fa34af609fd916f4e4df86ba73e9a5843177a29f
2017-07-20 04:46:23 -07:00
Mantaroh Yoshinaga
b677e86fbf servo: Merge #17617 - Handling of invalid values in svg paint server (from mantaroh:svg-paint-server); r=hiro,manishearth
<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1374161

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
There are tests for these changes, a test case will be landed in reftests in https://bugzilla.mozilla.org/show_bug.cgi?id=1374161.

<!-- 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: 7323c7745c1cc43f73c8ff2760e9e6adf23c138e
2017-07-05 21:49:27 -07:00
Anthony Ramine
55d7345833 servo: Merge #17560 - Introduce ToAnimatedValue 🎥 (from servo:derive-all-the-things); r=<try>
Source-Repo: https://github.com/servo/servo
Source-Revision: 9a13cf6bdaa823369f29d7d0f4469087cf17ce6a
2017-06-29 06:49:39 -07:00
Anthony Ramine
4ad9d8e802 servo: Merge #17530 - Improve sequence values in style (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: de0ee6cebfcaad720cd3568b19d2992349c8825c
2017-06-27 15:34:15 -07:00
Anthony Ramine
a023bb5bfd servo: Merge #17402 - Use generics for the filter property (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: fc2c5b7ef4bd7f36b6aa4e0540adc5b8ef3882c0
2017-06-20 06:23:17 -07:00
Jonathan Chan
17d32bd914 servo: Merge #17414 - style: Have OneOrMoreSeparated replace OneOrMoreCommaSeparated (from jyc:space-separator); r=nox
**NOTE** The alternative for me is just to duplicate the ToCss code, which is not bad and is less code changed! Don't know what others would think, though. Looking for feedback!

A future patch series has some values that should be separated by spaces. This
allows us to re-use the code for serialization, but the types do get a little
clunky. The separator is now indicated with an associated type.

<!-- 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 shoudl be tested by existing serialization code

<!-- 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: 40a3826dd6ec6908f9fd145ba79985d3b4b8636e
2017-06-20 03:08:11 -07:00
Simon Sapin
3727d5f818 servo: Merge #17390 - Untry (from servo:untry); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 568ab550053fddf346806ed6cc2d3bfe37f3e1d0
2017-06-18 05:55:11 -07:00
Anthony Ramine
f31295978e servo: Merge #17382 - Derive more ToCss impls (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: effd6f2f877e767352b45fc35c8066a56c1612b7
2017-06-17 04:53:32 -07:00
Anthony Ramine
e7b4db0490 servo: Merge #17291 - Function support for #[derive(ToCss)] and an Animatable fix (from servo:derive-all-the-things); r=<try>
Source-Repo: https://github.com/servo/servo
Source-Revision: 44eb8c8e4fbafa3dac18ae0464923c63e5fc929d
2017-06-13 01:24:53 -07:00
Emilio Cobos Álvarez
1420ba1f08 servo: Merge #17265 - style: Reduce some code duplication and ugliness when parsing identifiers (from emilio:macros-on-top-of-macros); r=wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 197afeee2d7ac54f330408708673805095a1399a
2017-06-11 09:31:48 -07:00
Josh Matthews
dfb3ae3e5e servo: Merge #16752 - Report more informative CSS errors (from jdm:css-parse-error); r=SimonSapin
This requires https://github.com/servo/rust-cssparser/pull/143 for the final commit. There's no better way to split that work up, unfortunately, and it's extremely easy to bitrot. I would appreciate if we could expedite reviewing this work.

This is the work necessary to enable https://bugzilla.mozilla.org/show_bug.cgi?id=1352669. It makes sense to merge it separately because it's so much effort to keep it up to date with the ongoing Stylo work.

---
- [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: 061cb5f48e5c93a5decf39e530aea4a566e97341
2017-06-09 14:31:48 -07:00
Anthony Ramine
7446756c7a servo: Merge #17215 - Derive more ToCss impls (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 1555f0fc413415d5c8f7c5a5f3fec2eecfce640e
2017-06-09 05:00:45 -07:00
Anthony Ramine
a9ced8d2d6 servo: Merge #17209 - Introduce more generics and more deriving (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 738483742c32f6de680b13be31ffc552059b39b9
2017-06-07 08:55:08 -07:00
Anthony Ramine
29df96b81d servo: Merge #17186 - Use more generics and remove more code from mako files (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 80488c4494911257e62c98388b36d94d74f9d330
2017-06-06 10:28:26 -07:00
Manish Goregaokar
466390f228 servo: Merge #17177 - Make SVGPaint generic (from Manishearth:generic-paint); r=upsuper
r=xidorn https://bugzilla.mozilla.org/show_bug.cgi?id=1369277

Source-Repo: https://github.com/servo/servo
Source-Revision: 6b78a514f8de1975b8e683b5c9b9d7a0bf9f8227
2017-06-05 21:17:57 -07:00
Anthony Ramine
fc583480bb servo: Merge #17122 - Continue to slim down the code for CSS properties (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 028908ee269a680464d079ba4f6e9e8ef5b41749
2017-06-02 01:53:55 -07:00
Anthony Ramine
785bf88f5c servo: Merge #17095 - Refactor a few CSS properties (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: cd22fc6b902496d105f8003beaee5c8eb79e9669
2017-05-31 11:08:56 -05:00
Anthony Ramine
b3fd2b5969 servo: Merge #17071 - Reuse Rect<T> some more (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 433d68955b276266d620f788ad509678edc35071
2017-05-30 05:11:28 -05:00
Matthew
bc2f2a61c8 servo: Merge #16987 - Using stack-allocated variable for font feature setting (from tictakk:ticbranch); r=emilio
<!-- Please describe your changes on the following line: -->
Using stack-allocated small vector instead of the previous vector<u8>.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this is an optimization

<!-- 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: 8dc787923020561fe033ae8e6efeccff5226c83e
2017-05-29 09:58:43 -05:00
Manish Goregaokar
79b7d38c5a servo: Merge #17058 - stylo: Support remaning longhands (from Manishearth:stylo-randomprops); r=emilio
r=xidorn https://bugzilla.mozilla.org/show_bug.cgi?id=1367275

Source-Repo: https://github.com/servo/servo
Source-Revision: 369d5cf1242632efeb56278e18a5ea25a3c933a5
2017-05-27 13:37:59 -05:00
Xidorn Quan
80b8dccd6c servo: Merge #17060 - Support symbols() function and string value for list-style-type for stylo (from upsuper:bug1363596); r=heycam
This is the Servo side change of [bug 1363596](https://bugzilla.mozilla.org/show_bug.cgi?id=1363596).

Source-Repo: https://github.com/servo/servo
Source-Revision: 6b1f0392052949eb612ef7e5596610b8bb781fc2
2017-05-27 07:09:30 -05:00
Anthony Ramine
65f91547eb servo: Merge #17036 - Use values::generics::rect::Rect some more (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7275f6598120266a0beaeff1294271a23cd40d4d
2017-05-27 05:41:12 -05:00
Anthony Ramine
f054d5decb servo: Merge #17002 - Introduce style::values::generics::rect ▭ (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: b4cebe1920ee9dc64f1a080fb940ea77743692a2
2017-05-24 02:18:01 -05:00
Malo Jaffré
200f3e7d65 servo: Merge #16970 - Refactor grid style types and impls (from MaloJaffre:grid_cleanup); r=wafflespeanut
Fixes #16949.
- [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 it's just a refactor

Source-Repo: https://github.com/servo/servo
Source-Revision: 594479fe15f810d148e2352951affe905b1e13ff
2017-05-22 09:42:20 -05:00
Anthony Ramine
c2f511de0e servo: Merge #16973 - Derive ToComputedValue (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: a25b1e5fe3ee1c88a029835e5e27c73fdbdafa2c
2017-05-21 08:48:10 -05:00
Xidorn Quan
40e0a1f5fe servo: Merge #16888 - Implement @counter-style for stylo (from upsuper:bug1328319); r=heycam,Manishearth,SimonSapin
Servo side change of [bug 1328319](https://bugzilla.mozilla.org/show_bug.cgi?id=1328319).

Source-Repo: https://github.com/servo/servo
Source-Revision: 1afc89e944c7ea7e4510b4b678a95a8faaa309b1
2017-05-16 01:17:07 -05:00
Anthony Ramine
2a54e27962 servo: Merge #16859 - Rewrite style images with a good dose of generics 💉 (from nox:gradients); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7314b4122ba981cdc98204660f9fa1ef43e698
2017-05-15 09:13:38 -05:00
Manish Goregaokar
216153a3c1 servo: Merge #16800 - Allow border radii to be set via preshints (from Manishearth:border-radius); r=emilio
Fixes rendering of `<hr>`

Source-Repo: https://github.com/servo/servo
Source-Revision: 6de4c93aafd3ff735a431926800b75b2f7792d41
2017-05-10 19:05:21 -05:00
Ravi Shankar
9942f7a4d0 servo: Merge #16444 - Cleanup various modules and introduce generic types (from Wafflespeanut:generics); r=emilio
Almost all the types in `values/specified` and `values/computed` share their `ToCss` implementations. The only reason they have duplicated code hanging around is a result of different specified and computed forms for types like `LengthOrPercentage`. This PR makes some of these types *generic* so that we could have a common definition and `ToCss` impl (`Parse` and `ToComputedValue` impls too, if possible).

Source-Repo: https://github.com/servo/servo
Source-Revision: 3c7c960e116200010ea4120741e520bea9c6cfd9
2017-04-25 07:29:33 -05:00