Commit graph

31385 commits

Author SHA1 Message Date
CYBAI
9a358014f9 Use specific assertion for DOM servoparser 2018-01-26 01:18:57 +08:00
CYBAI
0e6f446a61 Use specific assertion for DOM servoparser async_html 2018-01-26 01:18:56 +08:00
CYBAI
5486335708 Use specific assertion for DOM create 2018-01-26 01:18:56 +08:00
CYBAI
9ee27d62ae Use specific assertion for DOM binding refcounted 2018-01-26 01:18:55 +08:00
CYBAI
1c31370a08 Use specific assertion for DOM binding interface 2018-01-26 01:18:55 +08:00
CYBAI
34babb6dcf Use specific assertion for DOM attr 2018-01-26 01:18:54 +08:00
CYBAI
968976aba7 Use specific assertion for net fetch tests 2018-01-26 01:12:29 +08:00
CYBAI
909ff74f30 Use specific assertion for net cookie tests 2018-01-26 01:01:02 +08:00
CYBAI
0dda473146 Use specific assertion for net http_cache 2018-01-26 01:01:02 +08:00
CYBAI
bb7964a4bb Use specific assertion for layout multicol 2018-01-26 01:01:01 +08:00
CYBAI
da4a4475de Use specific assertion for layout layout_debug 2018-01-26 01:01:01 +08:00
CYBAI
1a6154197b Use specific assertion for gfx text shaping harfbuzz 2018-01-26 01:01:00 +08:00
CYBAI
11cedc7b94 Use specific assertion for gfx platform freetype font 2018-01-26 01:01:00 +08:00
CYBAI
befd7e4b44 Use specific assertion for compositing compositor 2018-01-26 01:00:59 +08:00
bors-servo
5355265c74 Auto merge of #19854 - emilio:try-match, r=nox
style: make the try_match_ident_ignore_ascii_case macro actually return the error.

This allows it to be used as an expression, which I'd like to do very soon.

<!-- 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/19854)
<!-- Reviewable:end -->
2018-01-25 10:18:24 -06:00
CYBAI
1ca913168d Use specific assertion for webgl thread 2018-01-25 23:45:16 +08:00
CYBAI
cde99646a6 Use specific assertion for canvas 2018-01-25 23:44:54 +08:00
bors-servo
47b3693d75 Auto merge of #19867 - pandusonu2:ReadMeFix, r=mbrubeck
Update README.md to fix font requirements for Arch Linux

The current specifications for installation of Servo in Arch Linux fails to run due to requirement of fonts.

The fix is just to include the required package in the required dependencies list in README.md.

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

I added the required font package for Arch Linux in the README file. This is in accordance with the comments on the bug #12107, which deals with similar requirements for Gentoo
---
<!-- 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
- [X] These changes do not require tests because - The changes are in README file

<!-- 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/19867)
<!-- Reviewable:end -->
2018-01-25 09:22:52 -06:00
pandusonu2
662563b74c Update README.md to fix font requirements for Arch Linux
The current specifications for installation of Servo in Arch Linux fails to run due to requirement of fonts.

The fix is just to include the required package in the required dependencies list in README.md.
2018-01-26 00:24:13 +05:30
Josh Matthews
0430bc0610
Use more specific assertions for http tests. 2018-01-25 08:41:47 -05:00
Anthony Ramine
de426baecc Make the private callback methods taking a raw this pointer unsafe 2018-01-25 12:07:13 +01:00
Anthony Ramine
74dabbdc62 Kill dead callback codegen code 2018-01-25 11:45:17 +01:00
Anthony Ramine
f903da0a7b Make callbacks' new methods unsafe
They take raw pointers to contexts and objects.
2018-01-25 11:25:23 +01:00
bors-servo
4089e388dd Auto merge of #19858 - servo:jdm-patch-2, r=jdm
Disable sccache.

It's causing problems on arm and mac builders and making it impossible to land changes.

<!-- 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/19858)
<!-- Reviewable:end -->
2018-01-24 23:58:44 -06:00
bors-servo
9c13073075 Auto merge of #19688 - Manishearth:linebreak, r=mbrubeck
Detect adjoining text fragments with no line break opportunity between them

First attempt at https://github.com/servo/servo/issues/874

<!-- 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/19688)
<!-- Reviewable:end -->
2018-01-24 22:42:59 -06:00
Josh Matthews
9e6f3f003e
Disable sccache. 2018-01-24 23:06:44 -05:00
bors-servo
d974411e56 Auto merge of #19852 - jonleighton:issue-19796, r=mbrubeck
Allow floats to impact list item marker position

Although not required by the specification, this matches the rendering
of Gecko and Blink.

Fixes #19796.

<!-- 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/19852)
<!-- Reviewable:end -->
2018-01-24 19:35:39 -06:00
Glenn Watson
bd16f1a33f Update WR (new capture API, render target cache optimization) 2018-01-25 07:35:16 +10:00
bors-servo
7354a32c19 Auto merge of #19850 - emilio:tidy-align, r=nox
style: Minor nits on the alignment properties.

I'm going to touch this in a bit, let's do it a bit less painful.

<!-- 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/19850)
<!-- Reviewable:end -->
2018-01-24 12:25:58 -06:00
bors-servo
04aa53a944 Auto merge of #19832 - servo:jdm-patch-2, r=jdm
Remove clean-cache from appveyor.

This fixes #19831.

<!-- 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/19832)
<!-- Reviewable:end -->
2018-01-24 11:25:23 -06:00
bors-servo
caefaa79c9 Auto merge of #19856 - servo:jdm-patch-6, r=jdm
Use default sccache timeout.

Try to resolve the ongoing issues on cross builders where the sccache server takes up 50% of available memory.

<!-- 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/19856)
<!-- Reviewable:end -->
2018-01-24 10:15:07 -06:00
Josh Matthews
a589f7e107
Fix yaml. 2018-01-24 11:14:51 -05:00
Josh Matthews
643e5c268b
Use default sccache timeout. 2018-01-24 11:10:58 -05:00
Alan Jeffrey
7a8890df50 Added --progress flag to test-perf git commands 2018-01-24 09:54:52 -06:00
Emilio Cobos Álvarez
e978645a52
style: make the try_match_ident_ignore_ascii_case macro actually return the error.
This allows it to be used as an expression, which I'd like to do very soon.
2018-01-24 16:12:30 +01:00
Emilio Cobos Álvarez
711ea51d7b
style: Rename AlignJustifySelf to SelfAlignment.
This matches the spec term and, again, the two properties will have different
grammars soon.

MozReview-Commit-ID: 8f8JXj2NnCi
2018-01-24 14:34:04 +01:00
Emilio Cobos Álvarez
d4a44de928
style: Rename AlignJustifyContent to ContentDistribution.
align-content and justify-content will have different types in a second.

MozReview-Commit-ID: 5JDeR5kXZNP
2018-01-24 14:34:03 +01:00
Jon Leighton
84713df622 Allow floats to impact list item marker position
Although not required by the specification, this matches the rendering
of Gecko and Blink.

Fixes #19796.
2018-01-24 12:26:32 +01:00
Emilio Cobos Álvarez
da56bdecc6
style: Minor nits on the alignment properties.
I'm going to touch this in a bit, let's do it a bit less painful.

MozReview-Commit-ID: LhBNMkUXlUK
2018-01-24 12:14:23 +01:00
Manish Goregaokar
fc97f0b464 do not preserve suppress flag on second half of split 2018-01-24 14:31:07 +05:30
Manish Goregaokar
f3c81fcda8 Share line breaking state across text runs
Fixes #874
2018-01-24 12:51:33 +05:30
Gregory Terzian
3ce7c868d7 remove custom cache script, use trickle option instead 2018-01-24 14:26:38 +08:00
bors-servo
2024ef56b0 Auto merge of #19820 - asajeffrey:test-perf-run-warc-tests, r=jdm
Run servo-warc-tests as part of test-perf

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

<!-- 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/19820)
<!-- Reviewable:end -->
2018-01-23 17:48:07 -06:00
bors-servo
4307b6e67b Auto merge of #19350 - gterzian:ignore_aborted_responses_in_caching, r=jdm
Ignore aborted responses in caching

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

<!-- 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/19350)
<!-- Reviewable:end -->
2018-01-23 14:47:16 -06:00
bors-servo
06aa339a1b Auto merge of #19843 - terracotaPie:master, r=jdm
Added default fall-back when CARGO_HOME is not set for clean-cargo-cache

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

<!-- 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/19843)
<!-- Reviewable:end -->
2018-01-23 13:28:35 -06:00
bors-servo
6b2e5283c9 Auto merge of #19838 - servo:rm-sequence-writer-as-it-was, r=emilio
Make ToCss' SequenceWriter not monomorphise like a maniac anymore

<!-- 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/19838)
<!-- Reviewable:end -->
2018-01-23 12:03:41 -06:00
bors-servo
108cb0e539 Auto merge of #19845 - emilio:not-fmt-yet, r=emilio
style: Disable rustfmt on the bindings for now.

<!-- 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/19845)
<!-- Reviewable:end -->
2018-01-23 10:42:31 -06:00
Emilio Cobos Álvarez
b1c580754a
style: Disable rustfmt for now.
Tons of people have broken rustfmts that cause build errors. Let's not force
them to update it for now.
2018-01-23 17:28:12 +01:00
bors-servo
02331617b9 Auto merge of #19842 - emilio:cascade-cleanup, r=nox,jryans
style: Cleanup a bit the cascade.

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.

<!-- 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/19842)
<!-- Reviewable:end -->
2018-01-23 06:30:51 -06:00
Emilio Cobos Álvarez
cd04664fb9
style: Use CascadeFlags for what they're for.
Now that we have an Element around on cascade, we can stop using the cascade
flags mechanism to pass various element-related state, like "is this element the
root", or "should it use the item-based display fixup".

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.
2018-01-23 13:18:54 +01:00