Alan Jeffrey
01e17cf437
Document the can-block-on relationship for servo.
2017-10-13 15:00:16 -05:00
bors-servo
78aaa85aec
Auto merge of #18854 - servo:servo-unstable-feature, r=nox
...
Make optional the usage of some unstable features
With `--no-default-features --features default-except-unstable`, more crates can now be compiled on stable Rust. This will help integrate them in rustc’s regression testing and compiler performance benchmarking.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18854 )
<!-- Reviewable:end -->
2017-10-13 12:26:39 -05:00
Emilio Cobos Álvarez
f64f8b8be2
style: Share code for Element::Closest.
2017-10-13 17:21:31 +02:00
Emilio Cobos Álvarez
9e6c49d479
style: Share code for Element::Matches.
2017-10-13 17:21:26 +02:00
Emilio Cobos Álvarez
e447f819a2
style: Make InvalidationProcessor methods be &mut self.
...
This would allow querySelector / querySelectorAll to mutate the list of matched
nodes as it sees fit.
2017-10-13 12:17:02 +02:00
Emilio Cobos Álvarez
9034e6a732
style: Add a way to skip the "invalidation on eager pseudo invalidates self" bit.
2017-10-13 12:17:02 +02:00
Emilio Cobos Álvarez
ecdb10ef5c
Be more precise in should_process_descendants.
2017-10-13 12:17:02 +02:00
Emilio Cobos Álvarez
9e61c1962b
style: Unify invalidated_child with invalidated_descendants.
...
I think invalidated_descendants was buggy, and this fixes it.
2017-10-13 12:17:01 +02:00
Emilio Cobos Álvarez
557353c1f6
style: Move the bounds up in InvalidationProcessor.
2017-10-13 12:17:00 +02:00
Emilio Cobos Álvarez
a5e2f2c76c
style: Isolate all the restyling related logic in the invalidator in an InvalidationProcessor trait.
...
Ditto, no change in behavior.
2017-10-13 12:17:00 +02:00
Emilio Cobos Álvarez
b9b3e592dd
style: Split the invalidation collection from the invalidator step.
...
This is the first step in reusing the invalidation machinery for other stuff,
potentially including QuerySelector / QuerySelectorAll.
2017-10-13 12:16:59 +02:00
Simon Sapin
11bd81e115
Remove usage of unstable feature box_patterns
2017-10-13 11:11:08 +02:00
Simon Sapin
e13ae77daf
Remove usage of unstable feature "raw"
2017-10-13 11:11:07 +02:00
Simon Sapin
4727b92754
Remove usage of unstable feature conservative_impl_trait in layout
2017-10-13 11:11:06 +02:00
Simon Sapin
4594b40238
Use wrappers in the nonzero crate so users don’t need unstable features
2017-10-13 11:11:05 +02:00
Simon Sapin
45fd384a91
Make use of impl trait
in constellation optional
2017-10-13 11:11:03 +02:00
Simon Sapin
7ebedd02a9
Use NonZeroUsize in script_layout_interface
2017-10-13 11:11:02 +02:00
Simon Sapin
ff23a8536e
Abuse Vec as an allocator in gfx
2017-10-13 11:11:00 +02:00
Simon Sapin
d6d772eba0
Make use of unstable alloc_jemalloc crate optional
2017-10-13 11:11:00 +02:00
Simon Sapin
d9a311963f
Make usage of simd in gfx optional
2017-10-13 11:10:58 +02:00
Simon Sapin
5e72173e8c
Use NonZeroU32 in canvas_traits
2017-10-13 11:10:57 +02:00
Simon Sapin
ecf3b05153
Use NonZeroUsize in remutex
2017-10-13 11:10:55 +02:00
Simon Sapin
8cdf2ad0ed
Add NonZeroUsize
2017-10-13 11:10:55 +02:00
Simon Sapin
57709dc0bf
Use the new nonzero crate in the msg crate
2017-10-13 11:10:16 +02:00
Simon Sapin
c4bf3ec14f
Add a nonzero crate
2017-10-13 11:10:11 +02:00
bors-servo
ec00c660f0
Auto merge of #18861 - upsuper:diagnose-fix, r=Manishearth
...
Some fixes to diagnostic hashmap
<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18861 )
<!-- Reviewable:end -->
2017-10-13 02:11:55 -05:00
Xidorn Quan
cb2772b46c
Correct the position and record count of broken canary
2017-10-13 15:39:07 +11:00
Xidorn Quan
b547e96b44
Write poison to canary when removing item from diagnostic hashmap
2017-10-13 15:19:55 +11:00
Xidorn Quan
1251537459
Rewrite cycle removal algorithm of custom properties and integrate it with substitution
2017-10-13 10:55:24 +11:00
Alan Jeffrey
70ce4689e0
Random pipeline closure is less likely to kill pending pipelines.
2017-10-12 11:50:48 -05:00
Simon Sapin
faff7806b9
Remove default features in components/servo
...
They are covered by ports/servo’s defaults.
2017-10-12 17:19:04 +02:00
Simon Sapin
132b540518
Add an 'unstable' top-level cargo feature to control optional unstable stuff.
2017-10-12 17:19:03 +02:00
Simon Sapin
c496aa16a0
Rename the 'unstable' feature of the selectors crate to 'bench'
2017-10-12 17:19:02 +02:00
bors-servo
bc18ef7861
Auto merge of #18850 - emilio:bindgenup, r=jdm
...
Update bindgen.
This includes a clang-sys upgrade that removes crashes in linux32, and nothing
else.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18850 )
<!-- Reviewable:end -->
2017-10-12 09:06:22 -05:00
Emilio Cobos Álvarez
8c3e742cbf
Update bindgen.
...
This includes a clang-sys upgrade that removes crashes in linux32, and nothing
else.
2017-10-12 14:43:10 +02:00
bors-servo
55bf65021d
Auto merge of #18848 - emilio:unship-but-a-bit-more-slowly, r=xidorn
...
stylo: Remove :-moz-system-metric pseudo-class.
Bug: 1405311
Reviewed-by: xidorn
MozReview-Commit-ID: CIF64dG1F2k
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18848 )
<!-- Reviewable:end -->
2017-10-12 07:05:42 -05:00
Emilio Cobos Álvarez
3e9bfdd72e
stylo: Remove :-moz-system-metric pseudo-class.
...
Bug: 1405311
Reviewed-by: xidorn
MozReview-Commit-ID: CIF64dG1F2k
2017-10-12 14:04:32 +02:00
bors-servo
fc4de5adf5
Auto merge of #18839 - servo:stabler, r=nox
...
Remove some usage of unstable features
`Box::new(x)` seems to compile to exactly the same assembly as `box x` in release mode:
https://play.rust-lang.org/?gist=55ec5dd02c22fa799375d6e2e1a6e970&version=nightly
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18839 )
<!-- Reviewable:end -->
2017-10-12 05:18:00 -05:00
Simon Sapin
0dae5c8d1f
Remove unused feature flag
2017-10-12 12:10:57 +02:00
Simon Sapin
aa5761a5fb
Remove usage of unstable box syntax, except in the script crate
...
… because there’s a lot of it,
and script still uses any other unstable features anyway.
2017-10-12 12:10:56 +02:00
Simon Sapin
796a8dc618
Remove usage of unstable feature try_from
2017-10-12 12:10:55 +02:00
bors-servo
5682eeff48
Auto merge of #18843 - upsuper:author-text-shadow, r=heycam
...
Remove text-shadow handling from HasAuthorSpecifiedRules
This is the Servo side change of [bug 1363088](https://bugzilla.mozilla.org/show_bug.cgi?id=1363088 ).
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18843 )
<!-- Reviewable:end -->
2017-10-12 03:12:26 -05:00
bors-servo
82a013ae07
Auto merge of #18844 - jryans:stylo-visited-reparent-cascade, r=emilio
...
Limit visited cascade for reparenting
The specialized cascade flow in `stylist::compute_style_with_inputs` (used with
reparenting) currently computes all properties for visited styles, but we only
need visited-dependent properties.
This adds the cascade flag to reduce the work to visited-dependent properties
only, like we do for the regular cascade flow.
https://bugzilla.mozilla.org/show_bug.cgi?id=1407813
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18844 )
<!-- Reviewable:end -->
2017-10-12 01:04:57 -05:00
J. Ryan Stinnett
0eb7d65e73
Limit visited cascade for reparenting
...
The specialized cascade flow in `stylist::compute_style_with_inputs` (used with
reparenting) currently computes all properties for visited styles, but we only
need visited-dependent properties.
This adds the cascade flag to reduce the work to visited-dependent properties
only, like we do for the regular cascade flow.
MozReview-Commit-ID: FGCj6GPnQOB
2017-10-11 23:50:55 -05:00
Xidorn Quan
96d0529be5
Remove text-shadow handling from HasAuthorSpecifiedRules
2017-10-12 15:20:47 +11:00
bors-servo
99e15f0f03
Auto merge of #18803 - heycam:more-custom-prop-opts, r=emilio
...
style: more custom properties optimizations
These help slightly with https://bugzilla.mozilla.org/show_bug.cgi?id=1405411 .
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18803 )
<!-- Reviewable:end -->
2017-10-11 22:51:51 -05:00
Cameron McCormack
c05e45fdd1
style: Skip custom properties comparison if other inherited properties changed.
2017-10-12 10:44:46 +08:00
Cameron McCormack
51c1fb681d
style: Avoid cloning inherited CustomPropertiesMap when cascading properties with the same value.
2017-10-12 10:33:34 +08:00
J. Ryan Stinnett
cedc17550c
Clear visited rules for text inheritance
...
There are two key steps when resolving text styles with `::first-line`:
1. `ResolveStyleForText` computes the initial style of the text via
`Servo_ComputedValues_Inherit`
2. `ReparentStyleContext` is called to update style data when the first line
of text is moved to be a child of the `::first-line` frame
Before this patch, `Servo_ComputedValues_Inherit` would clear out unvisited
rules, but visited styles (with rules inside) were cloned as-is, meaning that
step 1 might leave the text node with a style that has:
* Unvisited rules: None
* Visited rules: Some
When we later go to step 2 and re-parent onto the `::first-line` styles, we try
to cascade with these leftover visited rules. This causes any `::first-line`
styles from our parent to be overridden by these rules which are no longer quite
right for the new frame tree.
In this patch, we resolve this by changing `StyleBuilder::for_inheritance`
(which is used by step 1's `Servo_ComputedValues_Inherit`) to also clear out
visited rules, so that we use the same logic for both unvisited and visited text
styles when reparenting onto the `::first-line` frame.
MozReview-Commit-ID: 3sgc4eGHBXs
2017-10-11 18:45:45 -05:00
bors-servo
882b22b606
Auto merge of #18829 - bholley:verify_in_drop, r=Manishearth
...
Verify in DiagnosticHashMap::drop
This will let us reason better about the drop_in_place crashes.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18829 )
<!-- Reviewable:end -->
2017-10-11 13:53:01 -05:00