Commit graph

33063 commits

Author SHA1 Message Date
Igor Matuszewski
b49acf40ba Use mozjs 0.3 fork without Heap::new 2018-03-16 16:53:18 +01:00
Paul Rouget
fef0506269 remove WindowMethods::size() 2018-03-16 14:58:17 +08:00
Paul Rouget
e25dd45139 alias some euclid types 2018-03-16 14:34:29 +08:00
Paul Rouget
ac4614d6ce Use typed coordinates.
We use Size2D and Point2D across compositing, constellation and script,
losing the type of pixels we use (DevicePixel, DeviceIndepententPixel
or CSSPixel) along the way, which might lead to bugs like
window.outerHeight not taking into account the page zoom (using
DeviceIndepententPixel instead of CSSPixel).
2018-03-16 14:34:29 +08:00
Josh Matthews
8b378120a4 Avoid using WPT test runner to update the test manifest. 2018-03-16 02:17:49 -04:00
bors-servo
b93f153ed5
Auto merge of #20310 - fabricedesre:opt-multiprocess, r=jdm
Update the MULTIPROCESS static when changing default options

<!-- Please describe your changes on the following line: -->
When the options are set not from the command line but by calling `set_defaults()` which is common for embedders, the MULTIPROCESS static is not set, and so the setting is ignored. This patch fixes that.

---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because we have no tests around that.

<!-- 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/20310)
<!-- Reviewable:end -->
2018-03-15 23:23:54 -04:00
bors-servo
57b12aaaaf
Auto merge of #20311 - glennw:update-wr-pic, r=mbrubeck
Update WR (local clip API change, texture cache optimizations).

<!-- 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/20311)
<!-- Reviewable:end -->
2018-03-15 22:19:31 -04:00
Glenn Watson
7bb977ca8f Update WR (local clip API change, texture cache optimizations). 2018-03-16 12:00:49 +10:00
Martin Robinson
41cc348fc5 Update to handle WebRender API changes
Items now only take a clipping rectangle instead of a LocalClip.
2018-03-16 12:00:04 +10:00
Fabrice Desré
e268a4341c Update the MULTIPROCESS static when changing default options 2018-03-15 16:23:40 -07:00
bors-servo
7e74a10274
Auto merge of #20309 - jdm:angle-update, r=asajeffrey
Update mozangle to 0.1.6.

This will get rid of the frequent intermittent build failure in mozangle. Fixes #20281.

<!-- 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/20309)
<!-- Reviewable:end -->
2018-03-15 18:38:19 -04:00
Josh Matthews
37be2896bb Update mozangle to 0.1.6. 2018-03-15 18:17:49 -04:00
bors-servo
5f40842294
Auto merge of #20303 - kwonoj:refactor-winit, r=SimonSapin
refactor(window): reference winit where applicable

<!-- Please describe your changes on the following line: -->
This is nearly first changes to rustlang code and I suspect I could make possible mistakes lot, please point me anything if need to be updated. 🙏

This PR intends to update codebase per #20299 , mostly followed suggestion around https://github.com/servo/servo/issues/20299#issuecomment-373171416 to update reference to use `winit` where applicable. Confirmed local build / check works correctly for updated references.

---
<!-- 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 #20299 (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/20303)
<!-- Reviewable:end -->
2018-03-15 15:45:48 -04:00
bors-servo
40f833cb2a
Auto merge of #20291 - jdm:updatesyncstatus, r=asajeffrey
Update the in-tree status of WPT syncing.

This avoids an issue with performing the manual WPT upstream operation.

<!-- 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/20291)
<!-- Reviewable:end -->
2018-03-15 14:45:34 -04:00
OJ Kwon
ecb465bd65
refactor(window): reference winit where applicable
- relates with #20299
2018-03-15 10:35:29 -07:00
bors-servo
8f1783e75f
Auto merge of #20296 - asajeffrey:wpt-mozilla-worklets-set-timeout, r=jdm
Add timeout pref to the mozilla/worklets wpt tests

<!-- 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 #20292
- [X] These changes do not require tests because this is 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/20296)
<!-- Reviewable:end -->
2018-03-15 13:29:27 -04:00
Alan Jeffrey
e3e96c6d2f Added .ini for test_paint_worklet_timeout.html 2018-03-15 10:45:15 -05:00
bors-servo
1c7424d920
Auto merge of #20260 - servo:jdm-patch-11, r=asajeffrey
Run automated test for memory report charter.

No point in having tests if they don't get run.

<!-- 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/20260)
<!-- Reviewable:end -->
2018-03-15 11:07:40 -04:00
bors-servo
46a8e7184b
Auto merge of #20305 - servo:OMAE-WA-MOU-SHINDEIRU, r=jdm
Don't access the reflector when dropping a Promise (fixes #18651)

The reflector may be dead already.

<!-- 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/20305)
<!-- Reviewable:end -->
2018-03-15 10:17:43 -04:00
Anthony Ramine
50d31f7ec4 Don't access the reflector when dropping a Promise (fixes #18651)
The reflector may be dead already.
2018-03-15 09:53:33 +01:00
Bastien Orivel
f48d0928d5 Update servo-websocket to 0.21 2018-03-15 02:05:00 +01:00
bors-servo
8e6cfbca47
Auto merge of #20302 - upsuper:traversal-stats, r=bholley
Include some traversal statistics in style tracing marker

This is the Servo side changes of [bug 1444296](https://bugzilla.mozilla.org/show_bug.cgi?id=1444296).

<!-- 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/20302)
<!-- Reviewable:end -->
2018-03-14 21:01:08 -04:00
Xidorn Quan
368fb574f8 Have servo report traversal statistics to gecko. 2018-03-15 11:57:52 +11:00
Xidorn Quan
d700fa16a1 Split TraversalStatistics into two parts. 2018-03-15 11:57:48 +11:00
Xidorn Quan
afa377acfd Update bindings. 2018-03-15 11:57:47 +11:00
bors-servo
863f8477ed
Auto merge of #20300 - gootorov:update-gleam, r=mbrubeck
Update gleam to 0.4.24

<!-- Please describe your changes on the following line: -->
Needed to expose `get_framebuffer_attachment_parameter_iv()`.

<!-- 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/20300)
<!-- Reviewable:end -->
2018-03-14 19:26:13 -04:00
Igor Gutorov
ab38e1c065 Update gleam to 0.4.24 2018-03-15 01:02:02 +02:00
bors-servo
f7ee1befc5
Auto merge of #20267 - Xanewok:typed-arrays-stack-heap-variants, r=Xanewok
Support JS typed arrays as arguments and in WebIDL unions

<!-- Please describe your changes on the following line: -->
Supersedes #20205.
This brings support to receiving typed arrays as function arguments (those are stack-rooted with CustomAutoRooter) and also being a member of a union (which is basically heap-rooted? similarly to other webidl unions).

This is based on my other PR #20265 (which means it has to pull an external rust-mozjs branch and contains some also slightly unrelated changes here) since it shares `RootedTraceableBox::from_box` here and some other additional changes at rust-mozjs, but it can be easily separated if needed.

I tried adding support to nullable typed arrays but couldn't work around an issue of codegen always sticking a "OrNull" at the end of my type (presumably because of [this](https://github.com/servo/servo/blob/master/components/script/dom/bindings/codegen/parser/WebIDL.py#L2241)?). How would I go about avoiding the suffix with nullable arguments?

If we were to add also support for nullable typed arrays then I think we wouldn't be blocked anymore on this in WebGL 1.0.

r? @jdm

---
<!-- 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
- [ ] 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/20267)
<!-- Reviewable:end -->
2018-03-14 15:43:18 -04:00
Igor Matuszewski
c29fcb80f3 Use helper is_typed_array function 2018-03-14 18:43:27 +01:00
Igor Matuszewski
6beb32e28e Support nullable typed arrays in codegen 2018-03-14 18:43:27 +01:00
Igor Matuszewski
e025bbb079 WIP: Accept typed array arguments in codegen 2018-03-14 18:43:26 +01:00
Igor Matuszewski
a0f2d618ee Use mozjs 2.0 2018-03-14 18:43:26 +01:00
bors-servo
7b326529db
Auto merge of #20224 - emilio:counter-serialization, r=nox
Fix counter() and counters() serialization.

See https://github.com/w3c/csswg-drafts/issues/670 and https://github.com/w3c/web-platform-tests/pull/9862.

<!-- 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/20224)
<!-- Reviewable:end -->
2018-03-14 13:26:00 -04:00
bors-servo
e597cd9e1a
Auto merge of #20265 - Xanewok:fix-js-objects-in-unions, r=jdm
Fix JS object conversion in unions

<!-- Please describe your changes on the following line: -->
Requires safe `Heap::boxed` constructor from https://github.com/servo/rust-mozjs/pull/395 (more info on it is in the PR).

Since unions currently assume that their respective members root themselves and can be stored on heap, I modified the union member object conversion branch to convert to a `RootedTraceableBox<Heap<*mut JSObject>>` (which is the currently generated type for objects in said unions).

I did it only for Unions and not dictionaries, since some dictionaries had bare `*mut JSObject` members - is this a mistake and something that needs further fixing?

Does this need a test, e.g. passing a union with object to a function that returns said object, and comparing the results for equality?

r? @jdm

Generated code with this patch (for `StringOrObject`):
```rust
impl FromJSValConvertible for StringOrObject {
    type Config = ();
    unsafe fn from_jsval(cx: *mut JSContext,
                         value: HandleValue,
                         _option: ())
                         -> Result<ConversionResult<StringOrObject>, ()> {
        if value.get().is_object() {
            match StringOrObject::TryConvertToObject(cx, value) {
                Err(_) => return Err(()),
                Ok(Some(value)) => return Ok(ConversionResult::Success(StringOrObject::Object(value))),
                Ok(None) => (),
            }

        }
        // (...)
    }
}

impl StringOrObject {
    // (...)
    unsafe fn TryConvertToObject(cx: *mut JSContext, value: HandleValue) -> Result<Option<RootedTraceableBox<Heap<*mut JSObject>>>, ()> {
        Ok(Some(RootedTraceableBox::from_box(Heap::boxed(value.get().to_object()))))
    }
}
```

---
<!-- 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
- [ ] These changes fix #17011 (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/20265)
<!-- Reviewable:end -->
2018-03-14 12:04:23 -04:00
Alan Jeffrey
de57268e9f Add timeout pref to the mozilla/worklets wpt tests 2018-03-14 10:43:01 -05:00
Emilio Cobos Álvarez
839eda000a
style: Avoid serializing the counter type in counter functions if it's decimal.
See https://github.com/w3c/web-platform-tests/pull/9862 and such.
2018-03-14 16:41:33 +01:00
bors-servo
148beb4ea5
Auto merge of #20243 - emilio:host-selector-on-the-way, r=SimonSapin
style: add infrastructure to match the :host selector.

<!-- 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/20243)
<!-- Reviewable:end -->
2018-03-14 10:38:45 -04:00
Emilio Cobos Álvarez
9fa2618197
style: Add infrastructure to match :host. 2018-03-14 15:10:05 +01:00
Emilio Cobos Álvarez
1654f297ca
style: Tidy a couple things. 2018-03-14 15:10:05 +01:00
bors-servo
daaee046b3
Auto merge of #20294 - glennw:update-wr-blend-brush, r=jdm
Update WR (port blurs and blits to brush_image).

<!-- 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/20294)
<!-- Reviewable:end -->
2018-03-14 08:52:20 -04:00
bors-servo
82932b8fb3
Auto merge of #20293 - servo-wpt-sync:wpt_update_13-03-2018, r=jdm
Sync WPT with upstream (13-03-2018)

Automated downstream sync of changes from upstream as of 13-03-2018.
[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/20293)
<!-- Reviewable:end -->
2018-03-14 01:36:52 -04:00
Glenn Watson
db6eda8065 Update WR (port blurs and blits to brush_image). 2018-03-14 15:09:21 +10:00
WPT Sync Bot
e90dd8bc6b Update web-platform-tests to revision b202bbb5aa0d235b22bac11fe902eab1094ef9d2 2018-03-13 23:09:11 -04:00
Igor Matuszewski
712812d441 Add WPT test for WebIDL union conversion containing object values 2018-03-13 22:47:37 +01:00
Igor Matuszewski
17ecbaf8ff Support objects in WebIDL unions
Fixes #17011
2018-03-13 22:47:36 +01:00
Igor Matuszewski
725f9cbefa Use mozjs 0.1.14 2018-03-13 22:47:00 +01:00
bors-servo
9a6c96808b
Auto merge of #20290 - kwonoj:build-python-version, r=jdm
build(cmake): detect python binary for specified version

<!-- Please describe your changes on the following line: -->
This PR aims to address #20268, by updating cmake definition to lookup python binary to use. Instead of directly asking `python` binary, this PR uses `${PYTHON_EXECUTABLE}` to lookup desired python binary where applicable.

This PR was locally tested on win32 / mac / arch linux via `mach build --dev`, so far local testing shows no build failure regressions, not sure if this is sufficient test.

---
<!-- 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 #20268 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because _it's build script update_

<!-- 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/20290)
<!-- Reviewable:end -->
2018-03-13 16:29:19 -04:00
Josh Matthews
bca8347388 Update the in-tree status of WPT syncing. 2018-03-13 15:33:17 -04:00
OJ Kwon
2ddd105f12
build(cmake): detect python binary for specified version
- closes #20268
2018-03-13 09:25:06 -07:00
bors-servo
84ce43284c
Auto merge of #20287 - servo:webvr, r=jdm
Enable more tests, uselessly

This doesn't really do anything, given the gamepad tests don't even parse correctly.

<!-- 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/20287)
<!-- Reviewable:end -->
2018-03-13 09:52:05 -04:00