Commit graph

40177 commits

Author SHA1 Message Date
Manish Goregaokar
9c34a6585b Handle SetTargetRayMode and SetHandedness 2020-01-21 15:47:30 -08:00
Manish Goregaokar
e9221e6ce0 Update webxr 2020-01-21 15:47:30 -08:00
bors-servo
52ac5316ad
Auto merge of #25569 - szeged:pipeline_layout_wgpu, r=jdm
Initial implementation of GPUPipelineLayout for WebGPU

Added WebIDL bindings for `GPUPipelineLayout`.
Implemented the createPipelineLayout function of `GPUDevice`.

<!-- 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 addresses a part of #24706

<!-- Either: -->
cc @kvark @jdm @zakorgy

<!-- 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. -->
2020-01-21 09:11:22 -05:00
Istvan Miklos
d33a4d29a0 Initial implementation of GPUPipelineLayout for WebGPU
Added WebIDL bindings for `GPUPipelineLayout`.
Implemented the createPipelineLayout function of `GPUDevice`.
2020-01-21 14:47:38 +01:00
bors-servo
0dccfd148a
Auto merge of #25557 - servo-wpt-sync:wpt_update_20-01-2020, r=servo-wpt-sync
Sync WPT with upstream (20-01-2020)

Automated downstream sync of changes from upstream as of 20-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-20 20:48:36 -05:00
bors-servo
66aebfdbee
Auto merge of #25556 - szeged:mmatyas__webgl_testexp_updates, r=jdm
Update the WebGL2 test expectations

It seems the WPT test runner/updater has some troubles picking up successful test results, so I've regenerated the `ini` files manually for the WebGL2 tests.

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

cc @jdm @zakorgy

---
<!-- 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 they are the tests

<!-- 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. -->
2020-01-20 15:01:01 -05:00
bors-servo
f2d096fa6a
Auto merge of #25555 - warren-fisher:fix-mach-all, r=jdm
Add default arguments so that ./mach test --all works

<!-- Please describe your changes on the following line: -->
Fix `./mach test --all` not getting any default values for `force_cpp` and `no_wpt` in [python/servo/testing_commands.py](2a594821ba/python/servo/testing_commands.py (L319-L334)). For `./mach test-tidy` the default values are obtained using the `@CommandArgument` decorator, but this does not apply for calling `test_tidy()` when using `./mach test --all` (which calls the function directly). This call is found on line 109 of `registrar.py` which should be located in something like `python/_virtualenv2.7/python2.7/site-packages/mach/registrar.py` (but not located in this git repository).

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because the change is minimal and non breaking. Any existing code should be able to work if it uses keyword arguments because the default values will be overriden. If there is code that calls `test_tidy()` with arguments by position this would cause breakage, but I do not believe this happens anywhere in the `testing_command.py` file. `./mach test-tidy` should still work because the arguments are set using the `@CommandArgument` decorator.

<!-- 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. -->
2020-01-20 11:44:56 -05:00
bors-servo
0b79fe377d
Auto merge of #25552 - CYBAI:fix-25436, r=jdm
Return the highest priority error from the descendant instead of return the very first one

The test failed because we didn't return the highest priority error (which is network error in this case).

As Manish mentioned in https://github.com/servo/servo/issues/25436#issuecomment-571065323, that's because we're using the Promise.all trick to signal loads.

If we can avoid relying on Promise.all, maybe we don't need to do a complex logic like this; instead, ideally, we should always finish the module load immediately when we hit network failure so that we don't even need to do the `max()` comparison.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #25436
- [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. -->
2020-01-20 08:09:20 -05:00
WPT Sync Bot
14767cc1ad Update web-platform-tests to revision d7faaa65a15ef351c882e1b457ecee7070ea24c6 2020-01-20 11:01:22 +00:00
Mátyás Mustoha
18d40fb191 Update the WebGL2 test expectations
It seems the WPT test runner/updater has some troubles picking up
successful test results, so I've regenerated the `ini` files manually
for the WebGL2 tests.
2020-01-20 11:46:07 +01:00
CYBAI
33988cd8aa Return the highest priority error from the descendant instead of return the very first one 2020-01-20 19:18:12 +09:00
bors-servo
74d1f02a6a
Auto merge of #25547 - kunalmohan:25531-SnakeCase, r=jdm
Modify `script` to prevent further violations of snake_case

<!-- Please describe your changes on the following line: -->
Remove `#![allow(non_snake_case)]` from `script/lib.rs` and add `#[allow(non_snake_case)]` at each instance of violation.

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

<!-- 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. -->
2020-01-20 04:05:27 -05:00
bors-servo
544c41b51f
Auto merge of #25553 - servo-wpt-sync:wpt_update_19-01-2020, r=servo-wpt-sync
Sync WPT with upstream (19-01-2020)

Automated downstream sync of changes from upstream as of 19-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-19 21:00:27 -05:00
bors-servo
8518553805
Auto merge of #25551 - pylbrecht:raqote, r=jdm
Fix canvas wpt test `path-objects/2d.path.rect.zero.4.html`

<!-- Please describe your changes on the following line: -->
After connecting the lines of a rectangle, a new subpath has to be created containing the rectangle's origin as the only point in the subpath.
(see step 4 of https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-rect)

---
<!-- 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 part of #25331

<!-- 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. -->
2020-01-19 18:51:20 -05:00
Warren Fisher
6fa50a423e Add default arguments so that ./mach test --all works 2020-01-19 13:20:36 -04:00
WPT Sync Bot
add3067672 Update web-platform-tests to revision 2f346208c2a115a601b580e7869fe112b97c4246 2020-01-19 11:16:38 +00:00
pylbrecht
3c7205c99f Create new subpath with origin after drawing rect
Step 4 has been missing.
https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-rect
2020-01-19 09:23:18 +01:00
Kunal Mohan
f7db4b7f80
Modify script to prevent further violations of snake_case 2020-01-18 14:22:15 +05:30
bors-servo
2a594821ba
Auto merge of #25544 - servo-wpt-sync:wpt_update_17-01-2020, r=servo-wpt-sync
Sync WPT with upstream (17-01-2020)

Automated downstream sync of changes from upstream as of 17-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-17 17:04:46 -05:00
bors-servo
893fce1374
Auto merge of #25545 - szeged:mmatyas__webgl_fns_versions, r=jdm
Add WebGL2 specific version strings

Updated the `VERSION` and `SHADING_LANGUAGE_VERSION` WebGL parameters to report the correct version strings when WebGL2 is in use.

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2

<!-- Please describe your changes on the following line: -->
cc @jdm @zakorgy @imiklos

---
<!-- 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] 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. -->
2020-01-17 13:55:51 -05:00
bors-servo
f200e21064
Auto merge of #25543 - szeged:mmatyas__webgl_fns_uniforms_p3, r=jdm
Add support for WebGL2 uniform matrix operations

Adds support for the `uniformMatrix[234]x[234]fv` WebGL2 functions.
See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.8

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

Note: Similarly to #25538, some of the functions here also overlap with their WebGL 1 variant.

cc @jdm @zakorgy @imiklos

---
<!-- 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] 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. -->
2020-01-17 12:55:14 -05:00
bors-servo
1de92906e8
Auto merge of #25512 - servo:background-image, r=nox
Render `background-image: url(…)`

… and support most `background-*` properties.

Still to do:

* `background-attachment`
* Gradients
2020-01-17 10:52:38 -05:00
Mátyás Mustoha
01ca317235 Add WebGL2 specific version strings
Updated the `VERSION` and `SHADING_LANGUAGE_VERSION` WebGL parameters
to report the correct version strings when WebGL2 is in use.

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2
2020-01-17 12:10:13 +01:00
WPT Sync Bot
c3a5048e21 Update web-platform-tests to revision a2dbc7c6cef42d2a272ebfb07bfb6f42da387cc1 2020-01-17 11:03:00 +00:00
Mátyás Mustoha
7d5048f885 Add support for WebGL2 uniform matrix operations
Adds support for the `uniformMatrix[234]x[234]fv` WebGL2 functions.

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.8
2020-01-17 11:42:45 +01:00
bors-servo
dcc72ab14d
Auto merge of #25540 - pylbrecht:raqote, r=jdm
Fix canvas wpt test ensuring there's a subpath when drawing bezier curves

<!-- Please describe your changes on the following line: -->
These changes will ensure there's a subpath when drawing bezier curves.

---
<!-- 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 part of #25331

<!-- 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. -->
2020-01-17 02:18:06 -05:00
pylbrecht
77c07a26fd Add first control point if there's no subpath 2020-01-17 06:43:40 +01:00
bors-servo
d3b37ead0a
Auto merge of #25538 - szeged:mmatyas__webgl_fns_uniforms_p2, r=jdm
Add support for WebGL2 uniform array operations

Adds support for the WebGL2 overloads of `uniform[1234][if]v`.

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

WebGL2 adds two optional parameters for the `uniform[1234][if]v` functions to allow specifying input data ranges. However, because they have the same name and overlapping parameters, the Codegen cannot make a difference between their GL1 and 2 variants. As a workaround, I've added the new parameters to the WebGL1 side, which which isn't strictly what the spec says, but shouldn't break things either. (Note: Firefox devs also run into this issue: [[1](https://searchfox.org/mozilla-central/source/dom/webidl/WebGLRenderingContext.webidl#794), [2](https://bugzilla.mozilla.org/show_bug.cgi?id=1324543)]).

cc @jdm @zakorgy @imiklos

---
<!-- 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] 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. -->
2020-01-16 23:47:07 -05:00
bors-servo
0e9d89cecc
Auto merge of #25536 - servo:rustup, r=jdm
Upgrade to rustc 1.42.0-nightly (3291ae339 2020-01-15)

This was unblocked by https://github.com/rust-lang/rust/pull/67603 fixing https://github.com/rust-lang/rust/issues/67601.
2020-01-16 18:26:10 -05:00
pylbrecht
ca1e780c59 Add first control point if there's no subpath 2020-01-16 21:28:21 +01:00
bors-servo
90b0a7fcc5
Auto merge of #25526 - szeged:bind_group_wgpu, r=jdm
Initial implementation of GPUBindGroupLayout for WebGPU

Added WebIDL bindings for `GPUBindGroupLayout`, `GPUBindGroupLayoutDescriptor`, `GPUBindingType`, `GPUShaderStage` and `GPUBindGroupLayoutBinding` (Note: The servo's codegen doesn't like the name, because its already occupied).
Implemented the `createBindGroupLayout` function of `GPUDevice`.

<!-- 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 addresses a part of #24706

cc @kvark @jdm @zakorgy
<!-- 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. -->
2020-01-16 13:36:10 -05:00
bors-servo
5c202ed392
Auto merge of #25485 - teapotd:textinput-maxlength-del, r=nox
Allow deletions from overflowed textinput

Allow deletions from textinput when the length is greater than the max length.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #25420
- [X] There are tests for these changes
2020-01-16 10:49:42 -05:00
bors-servo
a23e2dbe48
Auto merge of #25537 - servo-wpt-sync:wpt_update_16-01-2020, r=servo-wpt-sync
Sync WPT with upstream (16-01-2020)

Automated downstream sync of changes from upstream as of 16-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-16 07:18:08 -05:00
Mátyás Mustoha
0650fc3199 Add support for WebGL2 uniform array operations
Adds support for the WebGL2 overloads of `uniform[1234][if]v`.
2020-01-16 12:09:23 +01:00
WPT Sync Bot
2ac52623c2 Update web-platform-tests to revision 46aeb6c47e00b0cd3ebcab3735ec1aba7806ca79 2020-01-16 10:26:01 +00:00
Istvan Miklos
9cf007472b Initial implementation of GPUBindGroupLayout for WebGPU
Added WebIDL bindings for `GPUBindGroupLayout`, `GPUBindGroupLayoutDescriptor`, `GPUBindingType`, `GPUShaderStage`
and `GPUBindGroupLayoutBinding` (Note: The servo's codegen doesn't like the name, because its already occupied).
Implemented the `createBindGroupLayout` function of `GPUDevice`.
2020-01-16 10:53:51 +01:00
bors-servo
9f5dd86091
Auto merge of #25518 - pylbrecht:raqote, r=jdm
Fix canvas wpt test "path-objects/2d.path.end.1.html"

<!-- 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 part of #25331

<!-- 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. -->
2020-01-16 04:46:32 -05:00
Simon Sapin
850f52c327 Upgrade to rustc 1.42.0-nightly (3291ae339 2020-01-15) 2020-01-16 08:46:41 +01:00
bors-servo
7b6e60883f
Auto merge of #25529 - servo:jdm-patch-31, r=SimonSapin
Slightly increase timeout for linux tidy+unit task.

Fixes #25528.
2020-01-16 01:43:29 -05:00
pylbrecht
08461db4da Update WPT test expectations 2020-01-16 07:04:25 +01:00
bors-servo
91877875b9
Auto merge of #25534 - pshaughn:compiledeventscope, r=jdm
Put target element, form owner, and element document on scope chain of compiled events

Event listeners that are created from a function object just get whatever closure the function object had, but event listeners created from a string need a special closure that acts like they were defined inside a series of `with` statements. This now happens. The existing WPT test for it, html/webappapis/scripting/events/compile-event-handler-lexical-scopes.html, also relies on other behavior we don't have, so I added an easier version of the test that doesn't involve bubbling or capturing and doesn't check any IDL properties we don't have. This new test will eventually be redundant when we have everything else the upstream test expects.

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

<!-- 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. -->
2020-01-15 23:27:20 -05:00
bors-servo
eb8fbddca9
Auto merge of #25527 - servo-wpt-sync:wpt_update_15-01-2020, r=servo-wpt-sync
Sync WPT with upstream (15-01-2020)

Automated downstream sync of changes from upstream as of 15-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-15 14:31:19 -05:00
Patrick Shaughnessy
59f66fe09d Scope chain is now constructed 2020-01-15 14:13:18 -05:00
bors-servo
f9174a4717
Auto merge of #25519 - szeged:mmatyas__webgl_fns_uniforms, r=jdm
Add support for WebGL2 unsigned uniform operations

This adds support for the WebGL2 `uniform[1234]ui` and `uniform[1234]uiv` operations.

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.8

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

cc @jdm @zakorgy @imiklos

---
<!-- 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] 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. -->
2020-01-15 10:45:07 -05:00
pylbrecht
c25bccf499 Update Cargo.lock 2020-01-15 16:25:42 +01:00
pylbrecht
ba453e71af Add duplicate crates to servo-tidy.toml 2020-01-15 16:23:30 +01:00
pylbrecht
2e5d7ce23d Update test expectations 2020-01-15 16:23:29 +01:00
pylbrecht
5a2f6ea920 Update raqote due to bugfix
Closing a path should set the current point not clear it.
2020-01-15 16:23:29 +01:00
Josh Matthews
1c379c8728
Slightly increase timeout for linux tidy+unit task. 2020-01-15 09:49:47 -05:00
bors-servo
2373769e76
Auto merge of #25525 - pshaughn:mitigatedialog, r=jdm
Mitigation for #25498

This is not a complete solution:
* The alert string can get a bit mangled in some cases, but not to the point of unreadability.
* tinyfiledialogs has many codepaths that can pass strings to various different potentially-dialog-displaying executables; I do not know if some of those executables have their own unique escaping requirements.
* If some form of the same problem exists on OSX or Windows, this does not address them.

While imperfect, this is an improvement over continuing to have a known way for page authors to execute arbitrary shell script.
2020-01-15 09:49:10 -05:00