Commit graph

38042 commits

Author SHA1 Message Date
bors-servo
14cddab699
Auto merge of #23660 - servo-wpt-sync:wpt_update_29-06-2019, r=servo-wpt-sync
Sync WPT with upstream (29-06-2019)

Automated downstream sync of changes from upstream as of 29-06-2019.
[no-wpt-sync]
2019-06-29 10:17:39 -04:00
WPT Sync Bot
686c6b89ed Update web-platform-tests to revision c0a3e93389bdcc9e8ad12d3988e4568d48b78c9d 2019-06-29 14:17:20 +00:00
bors-servo
84786add22
Auto merge of #23653 - Manishearth:nested, r=jdm
Improve support for nested dictionaries

Fixes https://github.com/servo/servo/issues/23640

Some IDLs need `= null`, that's something that needs to be updated upstream too.

After talking with @bzbarsky I realized that it was our IDLs which were incorrect, causing Options to appear where we don't want them to. In the media code we _do_ want Options. `= null` is the correct fix for that (and should be upstreamed).

r? @jdm

<!-- 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/23653)
<!-- Reviewable:end -->
2019-06-28 20:44:41 -04:00
bors-servo
177b2a6fa9
Auto merge of #23649 - jdm:marketplace, r=jdm
Add support for market:// urls

Rebased from #23648.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #21992.
- [x] These changes do not require tests because can't test embedders.

<!-- 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/23649)
<!-- Reviewable:end -->
2019-06-28 17:31:25 -04:00
akshitkrnagpal
027514c3e6 Add support for market:// urls 2019-06-28 17:30:42 -04:00
bors-servo
f81da9824e
Auto merge of #23647 - jdm:wpt-permissions, r=Manishearth
Run DOM permissions tests in WPT.

We have an implementation, so we should be testing it to catch problems like #23645.

<!-- 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/23647)
<!-- Reviewable:end -->
2019-06-28 14:14:17 -04:00
bors-servo
2e9637477c
Auto merge of #23628 - emilio:path-shuffling-cleanup, r=Manishearth
build: Cleanup some path-munging code.

I was looking at this today, and this seems better than the pre-existing code,
generally pre-pending to these paths isn't great...

<!-- 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/23628)
<!-- Reviewable:end -->
2019-06-28 12:18:36 -04:00
Josh Matthews
6ebd8dd2e6 Run permissions tests in WPT. 2019-06-28 10:14:46 -04:00
bors-servo
a8f4c64021
Auto merge of #23650 - optmzr:fix-gentoo-instructions, r=jdm
Update Gentoo instructions to work with 17.1 and add missing dependency

 * libunwind was required when building.
 * Since Gentoo 17.1 the symlink between lib and lib64 has been removed.
    - Update export so it works with both older and newer profiles.
---
- [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)

- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it's installation instructions / documentation

<!-- 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/23650)
<!-- Reviewable:end -->
2019-06-28 00:40:25 -04:00
Manish Goregaokar
3c7ceff46d Improve support for nested dictionaries 2019-06-27 18:13:23 -07:00
bors-servo
2a667648fa
Auto merge of #23644 - servo-wpt-sync:wpt_update_27-06-2019, r=servo-wpt-sync
Sync WPT with upstream (27-06-2019)

Automated downstream sync of changes from upstream as of 27-06-2019.
[no-wpt-sync]

<!-- 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/23644)
<!-- Reviewable:end -->
2019-06-27 20:21:46 -04:00
William Wennerström
b7308dcf8b
Update Gentoo instructions to work with 17.1 and add missing dependency
* libunwind was required when building.
 * Since Gentoo 17.1 the symlink between lib and lib64 has been removed.
    - Update export so it works with both older and newer profiles.
2019-06-27 21:41:10 +02:00
bors-servo
9e12b4175e
Auto merge of #23583 - servo:jdm-patch-56, r=SimonSapin
Force clang use on all platforms.

gcc builds are unlinkable on Linux at the moment. Let's standardize on clang.

<!-- 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/23583)
<!-- Reviewable:end -->
2019-06-27 13:34:20 -04:00
Josh Matthews
6167005997 Set CC/CXX defaults right before starting cargo build. 2019-06-27 18:40:56 +02:00
WPT Sync Bot
67592a2228 Update web-platform-tests to revision ef44bff0adaa07f2e420a0cbc1bc493cd5786656 2019-06-27 14:52:50 +00:00
bors-servo
61cadfa9a6
Auto merge of #23539 - oneturkmen:script-remove-opts-get, r=jdm
Script: removed a few opts::get()

<!-- Please describe your changes on the following line: -->
I removed only a few opts::get() from the components/script because all other code with "opts::get()" is reused by many other parts within the same component.

---
<!-- 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 *partially* #22854 (GitHub issue number if applicable)

<!-- Either: -->
- [x] These changes do not require tests because these are cleanup changes.

<!-- 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/23539)
<!-- Reviewable:end -->
2019-06-27 00:48:20 -04:00
oneturkmen
42569280e2 Script: removed a few opts::get() 2019-06-26 22:23:07 -06:00
bors-servo
57205318c5
Auto merge of #23587 - jdm:smup67, r=asajeffrey
Upgrade to SpiderMonkey 67

<!-- 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/23587)
<!-- Reviewable:end -->
2019-06-26 18:51:14 -04:00
Josh Matthews
63714c90fb Upgrade to Spidermonkey 67. 2019-06-26 18:10:46 -04:00
bors-servo
d170f43b53
Auto merge of #23636 - asajeffrey:webvrup, r=jdm
Update to rust-webvr 0.11.5

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

Update to rust-webvr 0.11.5, which includes magicleap 6DoF pose.

---
<!-- 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 we don't have magicleap test infra

<!-- 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/23636)
<!-- Reviewable:end -->
2019-06-26 16:46:32 -04:00
Alan Jeffrey
13c2c55ce0 Updated to rust-webvr 0.11.5 2019-06-26 11:24:00 -05:00
Alan Jeffrey
373ae0e341 Handle resize events during run_forever 2019-06-26 10:13:22 -05:00
bors-servo
a06a573f80
Auto merge of #23635 - servo-wpt-sync:wpt_update_26-06-2019, r=servo-wpt-sync
Sync WPT with upstream (26-06-2019)

Automated downstream sync of changes from upstream as of 26-06-2019.
[no-wpt-sync]
2019-06-26 09:58:37 -04:00
WPT Sync Bot
12f4ae132e Update web-platform-tests to revision 66dc9c93f2c8ebd7c8fdc28fae20d92713c97806 2019-06-26 13:58:19 +00:00
Iulian Gabriel Radu
62f0785c2c Implement PerformanceNavigation interface 2019-06-26 02:07:24 +03:00
bors-servo
e488ea750b
Auto merge of #23633 - servo:buildbot, r=jdm
Remove some jobs from Buildbot

* `arm64`: “no good reason to continue to maintain”: https://github.com/servo/servo/pull/23414#issuecomment-505045672
* `mac-rel-intermittent`: disabled since https://github.com/servo/saltfs/pull/965
* `linux-rel-intermittent`: judged unnecessary https://github.com/servo/servo/pull/23633#issuecomment-505576450
* `linux-nigthly`: only perf data collection and upload now. Closes https://github.com/servo/servo/issues/23302, where this jobs has been know to be broken for 8 weeks but nobody cared enough to fix it

<!-- 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/23633)
<!-- Reviewable:end -->
2019-06-25 18:27:49 -04:00
Simon Sapin
91da718253 Also remove linux-rel-intermittent
Judged unnecessary: https://github.com/servo/servo/pull/23633#issuecomment-505576450
2019-06-25 21:37:30 +02:00
Simon Sapin
251315dbaf Remove some jobs from Buildbot
* `arm64`: “no good reason to continue to maintain”: https://github.com/servo/servo/pull/23414#issuecomment-505045672
* `mac-rel-intermittent`: disabled since https://github.com/servo/saltfs/pull/965
* `linux-nigthly`: only perf data collection and upload now. Closes https://github.com/servo/servo/issues/23302, where this jobs has been know to be broken for 8 weeks but nobody cared enough to fix it
2019-06-25 20:34:10 +02:00
bors-servo
e100af57a5
Auto merge of #23605 - servo:jdm-patch-28, r=SimonSapin
Always create a WPT update task.

This fixes #23603.

<!-- 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/23605)
<!-- Reviewable:end -->
2019-06-25 11:01:05 -04:00
bors-servo
1001c7a441
Auto merge of #23609 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See individual commits 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/23609)
<!-- Reviewable:end -->
2019-06-25 08:37:14 -04:00
Emilio Cobos Álvarez
d1640f43bd
Update WPT expectations. 2019-06-25 13:11:33 +02:00
Emilio Cobos Álvarez
dd65470dd9
style: Rustfmt again. 2019-06-25 13:11:32 +02:00
Emilio Cobos Álvarez
15f7daf5f5
Update test expectations. 2019-06-25 13:11:32 +02:00
Emilio Cobos Álvarez
a7e441fc15
style: Servo doesn't implement white-space: break-spaces. 2019-06-25 13:11:32 +02:00
Emilio Cobos Álvarez
36c39d53f7
style: Give up on test_parse_stylesheet.
It's not particularly useful.
2019-06-25 13:11:32 +02:00
Emilio Cobos Álvarez
add08518cd
Fix style system build with recent changes. 2019-06-25 13:11:32 +02:00
Emilio Cobos Álvarez
ed2e9ce482
Rustfmt and fix tidy on recent changes. 2019-06-25 13:11:31 +02:00
violet
6eedebe2c8
style: Invalidate style for ::selection.
This patch invalidates the style for `::selection`, which will restore the
behavior before the regression.

However, it's still not quite correct, because repaint is not triggered. Given
that `::selection` requires some major change to implement
https://github.com/w3c/csswg-drafts/issues/2474, we can address this problem
later.

Differential Revision: https://phabricator.services.mozilla.com/D35305
2019-06-25 13:11:31 +02:00
Boris Chiou
815d189228
style: Fix the serialization of the computed value of background-size.
This patch produces the following serialization:
```
    input      |  computed value
  ------------------------------
1. "auto"            "auto"
2. "auto auto"       "auto"
3. "15px auto"       "15px"
4. "15px"            "15px"
```
i.e. If the second value is 'auto', then it's omitted from our serialization,
because it's implied.

Besides, we update the wpt to address this spec issue:
https://github.com/w3c/csswg-drafts/issues/2574

Differential Revision: https://phabricator.services.mozilla.com/D35510
2019-06-25 13:11:31 +02:00
Emilio Cobos Álvarez
c87da27bca
style: Use atoms for grid line names.
The style system already atomizes all CustomIdent values, which means that we're
just wasting memory and CPU by doing string copies all over the place.

This patch fixes it. This also simplifies further changes to use as much of the
rust data structures as possible.

I had to switch from nsTHashtable to mozilla::HashTable because the former
doesn't handle well non-default-constructible structs (like NamedLine, which
now has a StyleAtom, which is not default-constructible).

Differential Revision: https://phabricator.services.mozilla.com/D35119
2019-06-25 13:11:31 +02:00
Emilio Cobos Álvarez
6cb588d2b5
style: Use Servo for the representation of grid template areas.
Right now we do a lot of useless string copying. In order to avoid transcoding
to utf-16 during layout, make sure to use nsCString at a few related places.

I may revisit this since we're storing other line names as atoms in some places.
So it may be better to just use atoms everywhere.

But that'd be a different patch either way.

Differential Revision: https://phabricator.services.mozilla.com/D35117
2019-06-25 13:11:30 +02:00
Emilio Cobos Álvarez
e8271ee926
style: Use more ffi-friendly types in grid template areas.
Differential Revision: https://phabricator.services.mozilla.com/D35116
2019-06-25 13:11:30 +02:00
violet
e1e82dbe5f
style: Should not serialize default radius of circle.
Should not serialize default shape-outside circle() function radius.

The ToCss impl of Circle and Ellipse turn out to be identical in specified and computed value, thus move them to generics.

Differential Revision: https://phabricator.services.mozilla.com/D35183
2019-06-25 13:11:30 +02:00
violet
c7c1fed95c
style: Implement overflow-block and overflow-inline properties
Differential Revision: https://phabricator.services.mozilla.com/D34738
2019-06-25 13:11:30 +02:00
violet
05633886ab
style: Implement the break-spaces value of the white-space property.
Differential Revision: https://phabricator.services.mozilla.com/D34499
2019-06-25 13:11:29 +02:00
Emilio Cobos Álvarez
8b0d2b1e38
style: Add a pref and enable Shadow Parts in Nightly and for chrome stylesheets.
I want to enable in Nightly to evaluate (in the medium term) shipping it without
the part forwarding, once the cascade order and importance issues are fixed, and
that we pass all the tests that don't involve forwarding.

That is, I want to monitor whether having ::part() causes compat issues or not.

Differential Revision: https://phabricator.services.mozilla.com/D32649
2019-06-25 13:11:29 +02:00
Emilio Cobos Álvarez
e272bfed70
style: Implement GeckoElement::each_part.
This should make all the pieces come together.

Note that we don't need to look at the snapshot for ::part() for now (other than
when selector-matching normally) because I decided to just restyle the element
for now when the part attribute changes.

::part() can't affect descendants anyway (as long as we don't do the forwarding
stuff), and eager pseudo-elements are handled during the normal element restyle,
so it seems to me that adding all the complexity that we have for classes to
part may not be worth it at least yet.

Differential Revision: https://phabricator.services.mozilla.com/D32648
2019-06-25 13:11:29 +02:00
Emilio Cobos Álvarez
7139a4185a
style: Add code to make part rules affect the style of the elements.
I still haven't implemented each_part(), so this will do nothing yet.

The cascade order stuff is fishy, I know, and I'll fix in a followup if it's
fine with you. I moved the sorting of the rules to rule_collector, since it
seemed to me it was better that way that duplicating the code, and those
SelectorMap functions only have a single caller anyway.

Differential Revision: https://phabricator.services.mozilla.com/D32647
2019-06-25 13:11:29 +02:00
Emilio Cobos Álvarez
39de0a068e
style: Collect ::part() rules during CascadeData rebuilds.
Unlike for :host() or ::slotted(), or regular rules, we don't need a whole
SelectorMap<>, so gotta make the code a bit more generic.

Differential Revision: https://phabricator.services.mozilla.com/D32646
2019-06-25 13:11:28 +02:00
Emilio Cobos Álvarez
fac050325c
style: Add an extra flag to flag ::part() to selectors.
This grows the selector struct, but only in 32-bit, since in 64-bit we take
space from the alignment padding that we're paying due to having the size of the
slice as a word.

Differential Revision: https://phabricator.services.mozilla.com/D32645
2019-06-25 13:11:28 +02:00