Commit graph

17042 commits

Author SHA1 Message Date
bors-servo
86a5135ffa Auto merge of #18870 - servo:cast, r=KiChjang
Use pointer casts instead of tramsutes to raw::TraitObject

Casting `*const T` to `*const U` with `U: Sized` is allowed even if `T: ?Sized`. This safely extracts the data pointer out of a trait object, without relying on the memory representation of trait objects.

<!-- 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/18870)
<!-- Reviewable:end -->
2017-10-13 21:43:09 -05:00
Simon Sapin
b505c9e948 Introduce an unsafe HasBaseFlow trait for base()/base_mut() casts. 2017-10-14 00:03:57 +02:00
bors-servo
4592e6e53a Auto merge of #18810 - asajeffrey:constellation-document-blocking, r=cbrewster
Document the can-block-on relationship for servo.

<!-- Please describe your changes on the following line: -->

This PR adds some documentation comments describing the can-block-on relation that is used to ensure deadlock-freedom.

---
<!-- 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 #14704
- [X] These changes do not require tests because it's documentation

<!-- 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. -->

<!-- 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/18810)
<!-- Reviewable:end -->
2017-10-13 15:39:20 -05:00
Alan Jeffrey
01e17cf437 Document the can-block-on relationship for servo. 2017-10-13 15:00:16 -05:00
Simon Sapin
4c5d6fd834 Remove an unused import, fix a warning. 2017-10-13 21:57:26 +02:00
Simon Sapin
e7c53d4ca2 Use pointer casts instead of tramsutes to raw::TraitObject
Casting `*const T` to `*const U` with `U: Sized` is allowed even if `T: ?Sized`.
This safely extracts the data pointer out of a trait object,
without relying on the memory representation of trait objects.
2017-10-13 21:55:11 +02:00
bors-servo
db29af160c Auto merge of #18864 - emilio:reformat, r=jdm
style: Reformat a few signatures to follow a consistent style.

<!-- 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/18864)
<!-- Reviewable:end -->
2017-10-13 14:11:02 -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
77f115b467
stylo: Remove unused function. 2017-10-13 17:01:36 +02:00
Emilio Cobos Álvarez
09d3a11c86
style: Reformat a couple signatures.
MozReview-Commit-ID: 7Wdvj7i8ClR
2017-10-13 17:01:31 +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