Commit graph

9715 commits

Author SHA1 Message Date
Fernando Jiménez Moreno
507a1e4370 Update servo-media. Remove implicit shutdown requests. It all happens automagicly now 2019-08-19 09:55:00 +02:00
bors-servo
00a9f30773
Auto merge of #23951 - georgeroman:return_errorstatus_from_webdriverhandlers, r=jdm
Return ErrorStatus from webdriver_handlers

<!-- Please describe your changes on the following line: -->
With `webdriver 0.40`, `ErrorStatus` implements `Deserialize`. Now we can accommodate for multiple errors occuring in `webdriver_handlers`.

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

<!-- Either: -->

<!-- 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/23951)
<!-- Reviewable:end -->
2019-08-19 02:10:41 -04:00
George Roman
d7b9fede99 Return ErrorStatus from webdriver_handlers 2019-08-18 15:30:55 +03:00
Gregory Terzian
8482d2e781 restructure content process shutdown ack with threaded sender, without layout 2019-08-17 16:03:07 +02:00
bors-servo
9bba14cb43
Auto merge of #23838 - servo:url-2.0, r=Manishearth
Update the url crate to 2.0

Blocked on:

* [x] https://github.com/housleyjk/ws-rs/pull/283 + undoing corresponding `[patch.crates-io]` entry

Soft-blocked on: (we could add to the crate duplication allow-list instead)

* [x] ~https://github.com/rust-windowing/winit/pull/1066~
  - [x] https://github.com/rust-windowing/winit/pull/1076
* [x] https://github.com/servo/media/pull/288
* [ ] https://github.com/servo/webrender/pull/3720
* [x] https://github.com/gobwas/influent.rs/pull/22
* [ ] https://bugzilla.mozilla.org/show_bug.cgi?id=1568540
  - [x] https://github.com/seanmonstar/warp/pull/260
  - [ ] https://github.com/abonander/multipart/pull/121

<!-- 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/23838)
<!-- Reviewable:end -->
2019-08-17 04:14:32 -04:00
Simon Sapin
734fa6da2b Update to percent-encoding 2.0 2019-08-17 10:03:44 +02:00
Simon Sapin
9392180007 Update to url 2.0 2019-08-17 10:03:44 +02:00
bors-servo
4094a26183
Auto merge of #23979 - Eijebong:deps-deps-deps, r=jdm
Update webrender, image, png and raqote

This will avoid duping png because of the raqote backend

<!-- 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/23979)
<!-- Reviewable:end -->
2019-08-16 21:08:58 -04:00
Kagami Sascha Rosylight
1806b9ede2 Update WebIDL parser 2019-08-16 23:17:50 +09:00
bors-servo
ff3f3d30c7
Auto merge of #23966 - mmatyas:webgl_backtrace_buildfix, r=jdm
Fix build error when using the 'webgl_backtrace' feature

This patch fixes a build error that happens when building with `--features webgl_backtrace`.

However, while working on this I've noticed that calling `Backtrace::new()` instantly causes a segmentation fault. This didn't happen with the example code of [the package](https://crates.io/crates/backtrace) though, so I wasn't sure where to report this (maybe related: [backtrace-rs/#150](https://github.com/rust-lang/backtrace-rs/issues/150), [backtrace-rs/#189](https://github.com/rust-lang/backtrace-rs/issues/189)).

cc @alexcrichton @jdm

---

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because ___
- [x] These changes fix an issue that happens with a compile time feature not tested by the CI

<!-- 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/23966)
<!-- Reviewable:end -->
2019-08-16 04:29:55 -04:00
Bastien Orivel
138ef57534 Update webrender, image, png and raqote
This will avoid duping png because of the raqote backend
2019-08-16 00:34:22 +02:00
bors-servo
60c1908874
Auto merge of #23919 - tdelacour:ISSUE-21803, r=jdm
ISSUE-21803: Implement ConstantSourceNode audionode

<!-- Please describe your changes on the following line: -->
More or less followed the steps outlined in `components/script/dom/mod.rs` (and also used the [previous PR](https://github.com/servo/servo/pull/23152) on this issue as reference). Updated `wpt` tests as well.

---
<!-- 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 #21803 (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/23919)
<!-- Reviewable:end -->
2019-08-15 18:05:33 -04:00
bors-servo
91469aa472
Auto merge of #23967 - gterzian:fix_double_transplant, r=asajeffrey
Remove redundant windowproxy transplanting

<!-- 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: -->
- [ ] `./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/23967)
<!-- Reviewable:end -->
2019-08-14 16:13:16 -04:00
Gregory Terzian
9acf3f6d4d windowproxy: prevent unnecessary calls to set_window 2019-08-14 22:02:44 +02:00
Mátyás Mustoha
72b273a746 Fix build error when using the 'webgl_backtrace' feature 2019-08-14 11:30:55 +02:00
bors-servo
d7433c9a65
Auto merge of #23853 - ferjm:media.update, r=ceyusa
Fix HTMLMediaElement seek race condition

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

This depends on https://github.com/servo/media/pull/289 and it's blocked by the servo-media update issue mentioned [here](https://github.com/servo/servo/pull/23842#issuecomment-515007529)

<!-- 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/23853)
<!-- Reviewable:end -->
2019-08-14 02:03:52 -04:00
Thomas Delacour
6027dd148a ISSUE-21803: implement ConstantSourceNode audionode 2019-08-13 10:13:05 -04:00
Manish Goregaokar
acfe1ee0dd Add support for OpenXR hololens backend 2019-08-12 19:28:48 -07:00
Fernando Jiménez Moreno
322062bb3f Fix HTMLMediaElement seek race condition 2019-08-12 15:45:13 +02:00
Bastien Orivel
c693ef7025 Update rand to 0.6
I changed the isaac random to always be the 32 bits one because the 64
bits version doesn't work with ReseedingRng as it requires the
generator's output to be u32 for some reasons.

The other main change is that the reseed method doesn't exist anymore
and now rand recreates a new generator when it needs to reseed so I had
to add a new method for when we don't want a generator to be reseeded.

Closes #23558
2019-08-11 20:50:22 +02:00
George Roman
58f80f4ff3 Add support for returning array-like types from the Execute(Async)Script wd command 2019-08-10 12:39:10 +03:00
bors-servo
90fb4c3589
Auto merge of #23930 - CYBAI:incumbent-global-assertion, r=jdm
Assert incumbent global is always some in get_incumbent_global hook

While working on module script, I'd like to use Promise with a custom
callback with type `Box<dyn TaskBox>` which means we didn't use web API
callbacks as native handlers. However, we'll get a panic from
`enqueue_promise_job` and the panic says we have a `null` incumbent
global. The main problem here is, the Promise API is strongly tied to JS
engine and it always assumes there's a meaningful answer for "what
specific global is this promise associated with". So, when I don't use
the Promise for a specific web API, our engine cannot find a proper
incumbent global for us so that we get the `null` incumbent global
panic.

To make us catch this case easier in the future, we should add the
assertion inside `get_incumbent_global` hook so that we can know this
quickly next time.

Ref: https://mozilla.logbot.info/servo/20190807#c16525481

---
- [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 it should just add assertion inside the hook

<!-- 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/23930)
<!-- Reviewable:end -->
2019-08-09 02:54:33 -04:00
marmeladema
357b6c54ff Use safe JSContext in callbacks 2019-08-09 00:43:29 +01:00
marmeladema
0703a1ad6d Use safe JSContext as first argument for throw_dom_exception 2019-08-09 00:43:28 +01:00
marmeladema
6c26518f61 Remove usage of various unsafe keyword 2019-08-09 00:43:28 +01:00
marmeladema
78034a90d0 Use safe JSContext when possible in interface.rs 2019-08-09 00:43:24 +01:00
marmeladema
8b070fef52 Use safe JSContext in get_constructor_object_from_local_name 2019-08-09 00:02:10 +01:00
marmeladema
6d444afd9e Use safe JSContext in MicrotaskQueue 2019-08-09 00:02:10 +01:00
marmeladema
b18fa8b8a7 Use safe JSContext in compartments 2019-08-09 00:02:10 +01:00
marmeladema
ce3778afcc Remove some usage of unsafe code in iterator.rs 2019-08-09 00:02:09 +01:00
marmeladema
b08a3e6217 Remove some usage of unsafe code in AudioBuffer 2019-08-09 00:02:09 +01:00
marmeladema
4a5f51e079 Remove some usage of unsafe code in Permissions 2019-08-09 00:02:09 +01:00
marmeladema
8968286aa1 Don't mark new methods as unsafe in code generation 2019-08-09 00:02:09 +01:00
marmeladema
914bda9cd4 Remove some usage of unsafe code in CustomElementRegistry 2019-08-09 00:02:08 +01:00
marmeladema
0ecab7bbe0 Remove some usage of unsafe code in FileReader 2019-08-09 00:02:08 +01:00
marmeladema
5ca3dd9d05 Remove some usage of unsafe code in XMLHttpRequest 2019-08-09 00:02:08 +01:00
marmeladema
1d92796b03 Remove some usage of unsafe code in HTMLCanvasElement 2019-08-09 00:02:08 +01:00
marmeladema
d1282dc8cc Remove some usage of unsafe code in History 2019-08-09 00:02:07 +01:00
marmeladema
51e22fbc26 Remove some usage of unsafe code in Promise 2019-08-09 00:02:07 +01:00
CYBAI
28e64fc701 Assert incumbent global is always some in get_incumbent_global hook
While working on module script, I'd like to use Promise with a custom
callback with type `Box<dyn TaskBox>` which means we didn't use web API
callbacks as native handlers. However, we'll get a panic from
`enqueue_promise_job` and the panic says we have a `null` incumbent
global. The main problem here is, the Promise API is strongly tied to JS
engine and it always assumes there's a meaningful answer for "what
specific global is this promise associated with". So, when I don't use
the Promise for a specific web API, our engine cannot find a proper
incumbent global for us so that we get the `null` incumbent global
panic.

To make us catch this case easier in the future, we should add the
assertion inside `get_incumbent_global` hook so that we can know this
quickly next time.

Ref: https://mozilla.logbot.info/servo/20190807#c16525481
2019-08-08 12:39:56 +09:00
Simon Sapin
c38c964f1b Upgrade to rustc 1.38.0-nightly (dddb7fca0 2019-07-30) 2019-07-31 13:34:01 +02:00
bors-servo
6429fbeeff
Auto merge of #23891 - gterzian:fix_raf_flodding, r=asajeffrey
WebXr: allow for only a single raf message, until callbacks execute

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

See https://github.com/servo/webxr/issues/34

---
<!-- 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/23891)
<!-- Reviewable:end -->
2019-07-30 10:37:35 -04:00
Gregory Terzian
358b82279f allow for only a single raf message, until callbacks execute 2019-07-30 17:12:59 +08:00
bors-servo
8e7daa77b6
Auto merge of #23856 - servo:stylo-engines, r=nox
Stylo: replace product={gecko,servo} with engine={gecko,servo-2013,servo-2020}

Renaming the variable helped make sure I looked at every use.

Also auto-generate relevant parts of `CSSStyleDeclaration.webidl`, to make libscript compile accordingly.

<!-- 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/23856)
<!-- Reviewable:end -->
2019-07-30 02:40:38 -04:00
Simon Sapin
0215d09ccb Generate apis.html and css-properties.json for docs as part of crates’ build scripts
… rather than as an extra step after `cargo doc`.
This helps always using the correct set of CSS properties
(for layout 2013 v.s. 2020).
2019-07-30 08:37:33 +02:00
bors-servo
73784246b8
Auto merge of #23887 - servo:jdm-patch-47, r=asajeffrey
Use origin of final HTTP response as document origin

I discovered surprising problems when loading pages from http://joshmatthews.net that load same-origin images and try to use them as webgl textures. Since there's a redirect from joshmatthews.net to www.joshmatthews.net, the images are not considered same-origin in Servo because the document stores the origin for the original request's URL, rather than the origin of the response that is received after processing any redirections.

<!-- 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/23887)
<!-- Reviewable:end -->
2019-07-29 23:20:53 -04:00
Josh Matthews
bfd9bbe82a Use origin of final HTTP response as document origin. 2019-07-29 21:58:58 -04:00
bors-servo
9043f247d9
Auto merge of #23839 - Manishearth:end-improve, r=asajeffrey
Improve session test lifecycle code

Requires https://github.com/servo/webxr/pull/25

Fixes https://github.com/servo/servo/issues/23796, hopefully

r? @asajeffrey

<!-- 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/23839)
<!-- Reviewable:end -->
2019-07-29 21:27:52 -04:00
bors-servo
bde4cb476e
Auto merge of #23886 - servo:jdm-patch-46, r=asajeffrey
Avoid panic during shutdown when Blobs exist

Observed when closing the UWP app when https://www.joshmatthews.net/demos/lamp.html is the active document.

---
- [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 no real shutdown tests.

<!-- 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/23886)
<!-- Reviewable:end -->
2019-07-29 18:42:28 -04:00
Manish Goregaokar
d996d3c1eb Improve session test lifecycle code 2019-07-29 15:37:17 -07:00