Commit graph

36470 commits

Author SHA1 Message Date
Fernando Jiménez Moreno
d15640081c Implement srcObject logic for Blob media providers 2019-03-27 07:11:29 +01:00
bors-servo
3c27dc993d
Auto merge of #23097 - Manishearth:transforms, r=asajeffrey
Properly support transforms in WebXR

Still need to test this

There are also a bunch of fixmes that I should get to in this PR.

<!-- 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/23097)
<!-- Reviewable:end -->
2019-03-27 00:05:03 -04:00
bors-servo
2684499d2f
Auto merge of #23092 - tdelacour:ISSUE-23088, r=SimonSapin
ISSUE-23088: updated deprecated links in HACKING_QUICKSTART

Replaced two links in `HACKING_QUICKSTART.md`: "match" now points to the rust-by-example match page and "patterns" points to the rust book 2.0 overview of structural pattern matching.

---
<!-- 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 #23088

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they represent docs changes only

<!-- 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/23092)
<!-- Reviewable:end -->
2019-03-26 22:34:38 -04:00
Manish Goregaokar
2e62805578 Allow unused 2019-03-26 14:33:50 -07:00
bors-servo
2e0191b839
Auto merge of #23080 - jdm:sampling-profiler, r=gterzian
Add a sampling profiler

This uses the code already built for the background hang monitor and adds the ability to repeatedly sample all monitored threads. This sampling allows us to generate profiles that we can translate into the format used by https://perf-html.io/, allowing us to benefit from modern Gecko performance tooling.

You can run Servo with `PROFILE_OUTPUT=foo.json` and `SAMPLING_RATE=50` (for example), otherwise these values will default to `samples.json` and 10ms, respectively. To activate the profiler, press cmd+p, and to stop profiling, press cmd+p again. This will the captured samples to be symbolicated, which will take a very long time, and eventually there will be a new JSON profile in the output location.

To create a profile for use by Gecko's tools, run `python etc/profilicate.py path/to/profile.json >gecko_profile.json`, and load `gecko_profile.json` in the https://perf-html.io/ to see something like [this](https://profiler.firefox.com/public/8137e2b11fbb92afb80090bc534fd83015c87ee6/calltree/?globalTrackOrder=0-1&thread=1&v=3);

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #13103
- [x] These changes do not require tests because way too many pieces to automate

<!-- 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/23080)
<!-- Reviewable:end -->
2019-03-26 16:36:19 -04:00
Josh Matthews
aee2974c33 Add unit test for sampling profiler. 2019-03-26 16:35:52 -04:00
Josh Matthews
8b7244f0d1 Support multiprocess in sampling profiler. 2019-03-26 16:35:10 -04:00
Josh Matthews
90f67c11e5 Add a sampling profiler and a script to generate profiles for use with Gecko tooling. 2019-03-26 16:35:08 -04:00
Manish Goregaokar
240b5e7c97 Clean up trace impls 2019-03-26 12:58:52 -07:00
bors-servo
7b8a898ac2
Auto merge of #23095 - jdm:mozjsprofiling, r=jdm
Use mozjs profiling feature when building with frame pointer enabled

This makes it possible to get more meaningful profiles with #23080.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #23081
- [x] There are no tests for these 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/23095)
<!-- Reviewable:end -->
2019-03-26 14:00:56 -04:00
bors-servo
93d21ce976
Auto merge of #23094 - georgeroman:update_event_timestamp, r=jdm
Update Event's timestamp

<!-- 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
- [X] These changes fix #22885

<!-- Either: -->
- [X] There are tests for these 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/23094)
<!-- Reviewable:end -->
2019-03-26 12:32:33 -04:00
bors-servo
d484e66c45
Auto merge of #23085 - hundredeir:dom_content_loaded#22994, r=jdm
Defer update of dom_content_loaded_event_end

Set it's value only after the "DOMContentLoaded" event is really fired

---
<!-- 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 #22994

<!-- 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/23085)
<!-- Reviewable:end -->
2019-03-26 11:06:49 -04:00
bors-servo
cd374f0aa8
Auto merge of #23002 - paulrouget:padding, r=jdm
Fix bleeding in FxR by adding Padding support to ServoSurface

Not ready for review, just need to make sure the CI is happy 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/23002)
<!-- Reviewable:end -->
2019-03-26 09:16:01 -04:00
hundredeir
1a5e7b7cfb Defer update of dom_content_loaded_event_end
Set it's value only after the "DOMContentLoaded" event is really fired
2019-03-26 14:54:37 +05:30
George Roman
e63de4d52c Update Event's timestamp 2019-03-26 09:39:07 +02:00
Manish Goregaokar
4f128e47e5 Add XRRigidTransform::Inverse 2019-03-26 00:09:15 -07:00
Manish Goregaokar
6fda2f28a6 Precompute XRRigidTransform's matrices 2019-03-26 00:09:15 -07:00
Manish Goregaokar
77e857891a Fix xrviewport.height 2019-03-26 00:09:15 -07:00
Manish Goregaokar
2e48606569 Compute view matrix from viewer pose 2019-03-26 00:09:15 -07:00
Thomas Delacour
72345ed0bc
ISSUE-23088: updated deprecated links in HACKING_QUICKSTART 2019-03-25 23:43:39 -04:00
bors-servo
c9b5b8fad3
Auto merge of #23069 - CYBAI:fix-gstreamer-checking, r=jdm
Compare gstreamer version via `pkg-config --modversion` in bootstrap python script

Not sure why calling `["pkg-config", "gstreamer-1.0 >= 1.12"]` did not work for some people on Mojave. (Btw, I'm also on Mojave but checking version with `gstreamer-1.0 >= 1.12` works fine for me 🤔)

I'd like to send this PR and ask bors to try to see if this will also work for other platform.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #23015
- [x] These changes do not require tests because it tries to fix building issue

<!-- 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/23069)
<!-- Reviewable:end -->
2019-03-25 22:50:47 -04:00
bors-servo
25aa6501d2
Auto merge of #22699 - Manishearth:render_state, r=jdm
Update XR code to support null layers and new spec changes

Last time we landed an incomplete PR (https://github.com/servo/servo/pull/22649) that corrected the promise model but left XR sessions in panicky states.

This updates the code to not panic all the time, and also includes changes from https://github.com/immersive-web/webxr/pull/458

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/22699)
<!-- Reviewable:end -->
2019-03-25 18:48:49 -04:00
Manish Goregaokar
d1d8e97c30 Add XRSpace::get_viewer_pose() 2019-03-25 15:35:20 -07:00
Josh Matthews
896aae1c14 Add mozjs feature for profiling. 2019-03-25 16:13:56 -04:00
Manish Goregaokar
1e1f527c82 Formatting changes 2019-03-25 11:38:20 -07:00
Paul Rouget
8f2390fdff Add transparent padding around ServoSurface 2019-03-25 19:01:39 +01:00
Manish Goregaokar
922883f35a Pref-gate XRRenderState 2019-03-25 09:13:56 -07:00
Manish Goregaokar
0038ddf51e Avoid double-spawning RAF thread 2019-03-25 09:12:30 -07:00
Manish Goregaokar
9ea28c4c63 Flush renderstate queue before presenting 2019-03-25 09:12:28 -07:00
Manish Goregaokar
798c88917b Trigger wakeup when queuing, not when processing 2019-03-25 09:11:56 -07:00
Manish Goregaokar
d0a6884b2c Include webxr pref in prefs file 2019-03-25 09:11:54 -07:00
Manish Goregaokar
1a64b217af Improve handling of missing layer_ctx 2019-03-25 09:08:26 -07:00
Manish Goregaokar
87558c3a17 Shut down old VR compositor when the layer is replaced 2019-03-25 09:08:26 -07:00
Manish Goregaokar
e20909cf43 Allow VR RAF loop to handle changes in the layer, support pending renderstates 2019-03-25 09:08:11 -07:00
Manish Goregaokar
401b470e90 Hook XRRenderState into XRSession 2019-03-25 09:06:49 -07:00
Manish Goregaokar
1dc7636135 Add XRRenderState 2019-03-25 09:06:21 -07:00
bors-servo
f45bea7e7c
Auto merge of #22974 - Manishearth:webrtc-state, r=jdm
Add various state tracking to RTCPeerConnection, add .close()

This adds support for `signalingState`, `iceGatheringState`, and `iceConnectionState` on RTCPeerConnection, as well as `RTCPeerConnection::close()`

This doesn't yet support `connectionState`.

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/22974)
<!-- Reviewable:end -->
2019-03-25 12:05:31 -04:00
Manish Goregaokar
7343241c3d Add RTCPeerConnection::Close 2019-03-25 09:04:13 -07:00
Manish Goregaokar
5cb5503a75 Add SignalingState to RTCPeerConnection 2019-03-25 09:04:13 -07:00
Manish Goregaokar
fc25a80892 Add ICEConnectionState to RTCPeerConnection 2019-03-25 09:04:13 -07:00
Manish Goregaokar
209caa418b Add ICEGatheringState to RTCPeerConnection 2019-03-25 09:04:13 -07:00
bors-servo
5ae562bfc3
Auto merge of #22944 - ferjm:player.shutdown, r=ceyusa
Shutdown player when HTMLMediaElement is dropped

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #22931
- [X] There are tests for these 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/22944)
<!-- Reviewable:end -->
2019-03-25 07:47:06 -04:00
Fernando Jiménez Moreno
dc41d2fb77 Temporarily disable GL functionality 2019-03-25 12:39:28 +01:00
Fernando Jiménez Moreno
fc28073dfb Update GStreamer binaries and setup for Travis 2019-03-25 09:51:54 +01:00
Fernando Jiménez Moreno
bc74dc0e85 Use servo-media-auto and call ServoMedia::init where required 2019-03-25 09:51:53 +01:00
Fernando Jiménez Moreno
36825b82f3 Shutdown player when HTMLMediaElement is dropped 2019-03-25 09:29:30 +01:00
bors-servo
40d599e39f
Auto merge of #23089 - servo-wpt-sync:wpt_update_24-03-2019, r=jdm
Sync WPT with upstream (24-03-2019)

Automated downstream sync of changes from upstream as of 24-03-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/23089)
<!-- Reviewable:end -->
2019-03-25 03:32:23 -04:00
WPT Sync Bot
c858882d3c Update web-platform-tests to revision 3b0abc897b6f4f3997ed42b9ef902e98b2893d8d 2019-03-24 23:52:38 -04:00
bors-servo
7a67443fcb
Auto merge of #23086 - servo-wpt-sync:wpt_update_23-03-2019, r=jdm
Sync WPT with upstream (23-03-2019)

Automated downstream sync of changes from upstream as of 23-03-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/23086)
<!-- Reviewable:end -->
2019-03-24 08:30:11 -04:00
bors-servo
5f4030d028
Auto merge of #23011 - dboyan:open-feature-tokenize, r=gterzian,cybai
Add tokenizer for features in window.open

<!-- Please describe your changes on the following line: -->
This is a prototype implementation of feature tokenizer ~~and "noreferrer" feature~~ for window.open. I'm not very sure where the tokenizer code should be placed. Building now generates the following warning

```
warning: unused attribute
  --> components/script/dom/bindings/conversions.rs:74:5
   |
74 |     rustc_on_unimplemented(message = "The IDL interface `{Self}` is not derived from `{T}`.")
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: #[warn(unused_attributes)] on by default
```

---
<!-- 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 _partially_ fix #22869 (GitHub issue number if applicable)

<!-- Either: -->
- [X] 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/23011)
<!-- Reviewable:end -->
2019-03-24 05:31:24 -04:00