Commit graph

40103 commits

Author SHA1 Message Date
WPT Sync Bot
8903de3c76 Update web-platform-tests to revision 213a7607e8d6ba44d88f1774319e6c1c82ab1ccb 2020-01-15 11:02:57 +00:00
bors-servo
95614f57f1
Auto merge of #25506 - servo:jdm-patch-31, r=Manishearth
Change code of conduct contact
2020-01-14 23:24:26 -05:00
bors-servo
92fe8a66cc
Auto merge of #25520 - servo-wpt-sync:wpt_update_14-01-2020, r=servo-wpt-sync
Sync WPT with upstream (14-01-2020)

Automated downstream sync of changes from upstream as of 14-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-14 17:17:01 -05:00
bors-servo
f2d2c7d1f9
Auto merge of #25495 - tuncer:ci-media-dummy, r=jdm
CI: build Linux amd64 --media-stack=dummy

<!-- Please describe your changes on the following line: -->
Include `--media-stack=dummy` in CI, as discussed in https://github.com/servo/servo/pull/24829.

---
<!-- 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: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it's build 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. -->
2020-01-14 15:44:07 -05:00
bors-servo
85ea8df00c
Auto merge of #25521 - szeged:mmatyas__webgl_fns_rastdisc, r=nox
Add support for WebGL2 `RASTERIZER_DISCARD` enum.

Add support for the `RASTERIZER_DISCARD` enum for the WebGL2 version of the `Enable`, `Disable` and `IsEnabled` functions.

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

Note: The test results may depend on #25519.

---
<!-- 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-14 11:47:07 -05:00
Tuncer Ayaz
f2fedd87fc CI: build Linux amd64 --media-stack=dummy 2020-01-14 16:18:51 +00:00
bors-servo
5688e878ec
Auto merge of #25507 - szeged:update-wgpu-core, r=jdm
Update wgpu-core

<!-- Please describe your changes on the following line: -->
Update `wgpu-core` to the latest master. This version contains a fix for an issue which occurred when we exited from a WebGPU thread.

cc @kvark @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

<!-- 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/25507)
<!-- Reviewable:end -->
2020-01-14 10:44:48 -05:00
Mátyás Mustoha
500b36b669 Add support for WebGL2 RASTERIZER_DISCARD enum.
Add support for the `RASTERIZER_DISCARD` enum for the WebGL2 version
of the `Enable`, `Disable` and `IsEnabled` functions.

See https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2
2020-01-14 12:30:59 +01:00
WPT Sync Bot
c0949024fc Update web-platform-tests to revision 3c2377fc1d3a0fc5da425dc5e63bbedab8cd3d9e 2020-01-14 11:04:22 +00:00
Zakor Gyula
b16509ad7f Update wgpu-core 2020-01-14 09:13:31 +01:00
bors-servo
b52ddc5290
Auto merge of #25510 - pshaughn:queuemicrotask, r=jdm
Implement queueMicrotask

<!-- Please describe your changes on the following line: -->
The VoidFunction of a user-queued microtask is identical to a PromiseJobCallback in everything but type name, so implementing this method turned out to be just a matter of attaching a WebIDL frontend to a copy-and-pasted backend. All the remaining queueMicrotask WPT failures are because we don't have shared/service workers.

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

<!-- 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-13 20:17:40 -05:00
bors-servo
ce6204b904
Auto merge of #25509 - jdm:angle-up, r=asajeffrey
Update ANGLE for UWP build.

Update ANGLE to include keyed mutexes configuration. This improves framerates with our surfman configuration on HoloLens 2 devices.
2020-01-13 18:05:05 -05:00
bors-servo
904fcb4317
Auto merge of #25503 - mrobinson:dump-fragment-tree, r=SimonSapin
Allow dumping the fragment tree in layout_2020

This is done when the dump-flow-tree debug option is passed.

---
<!-- 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 this just adds debug output.

<!-- 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-13 14:44:33 -05:00
Patrick Shaughnessy
b01b2d3d2e queueMicrotask added 2020-01-13 13:45:43 -05:00
Josh Matthews
fc61190ddc Update ANGLE for UWP build. 2020-01-13 12:54:38 -05:00
bors-servo
0131952d6d
Auto merge of #25030 - szeged:webgpu-constellation, r=gterzian
Only start WebGPU thread if an adapter is requested

<!-- Please describe your changes on the following line: -->
This addresses 1 and 2 from https://github.com/servo/servo/issues/24706#issuecomment-555491438
We send a message to constellation instead of creating the `WebGPU` thread on the start. We send back the result to script and set the `Window`'s `web_gpu` component there.
cc @jdm @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
- [ ] These changes fix #___ (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. -->

<!-- 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/25030)
<!-- Reviewable:end -->
2020-01-13 11:46:56 -05:00
Josh Matthews
de610e4d75
Change code of conduct contact 2020-01-13 10:31:11 -05:00
bors-servo
968b45f9dc
Auto merge of #25502 - servo-wpt-sync:wpt_update_13-01-2020, r=servo-wpt-sync
Sync WPT with upstream (13-01-2020)

Automated downstream sync of changes from upstream as of 13-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-13 08:51:50 -05:00
Martin Robinson
ea8c635344 Allow dumping the fragment tree in layout_2020
This is done when the dump-flow-tree debug option is passed.
2020-01-13 13:12:52 +01:00
WPT Sync Bot
c9d9c9895b Update web-platform-tests to revision 58b5a417f8372321d5d465b8d722d7073cb6e80b 2020-01-13 10:59:51 +00:00
Zakor Gyula
430248e9c8 Fix returned error types in WebGPU 2020-01-13 10:39:23 +01:00
Zakor Gyula
a751b1c3d7 Only start WebGPU thread if an adapter is requested 2020-01-13 10:39:23 +01:00
bors-servo
3eec5f697f
Auto merge of #25497 - servo-wpt-sync:wpt_update_12-01-2020, r=jdm
Sync WPT with upstream (12-01-2020)

Automated downstream sync of changes from upstream as of 12-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-13 01:23:24 -05:00
WPT Sync Bot
50a6996461 Update web-platform-tests to revision b1d8b4ac4dc04fd1da16cb309ed675fa6a07bfd6 2020-01-12 10:57:15 +00:00
bors-servo
dbba9ea453
Auto merge of #25468 - gterzian:add_generic_to_frozen_array, r=Manishearth
Add generic to frozen array

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

https://github.com/servo/servo/pull/25467#discussion_r364575071

Depends on https://github.com/servo/servo/pull/25467

---
<!-- 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. -->
2020-01-12 02:35:09 -05:00
Gregory Terzian
0339601128 cache frozen array of ports 2020-01-12 13:27:45 +08:00
Gregory Terzian
e768ca1643 add a generic utility to convert a slice into a frozen array 2020-01-11 22:42:23 +08:00
bors-servo
63cb13f5fa
Auto merge of #25405 - pshaughn:minmaxstep, r=jdm
make stepUp, stepDown, valueAsNumber, valueAsDate, and list work in HTMLInputElement

<!-- Please describe your changes on the following line: -->
Steppy operation of input elements now functions. A few related tests still fail because of incorrect test expectations. A couple range reftests fail on what might be correct expectations; solving that involves layout, not DOM.
Main changes here:
- str.rs now has its datetime format parsers public, with some changes to align their output with chrono::NaiveDateTime and fix a bug in milliseconds validation
- HTMLInputElement has new attributes, and code behind them for relevant concepts
- servoparser/mod.rs now has some extra code to ensure that input sanitization happens at the right moment during input element creation; the spec is non-specific about when this happens, but it has to happen somewhere and in #21952 @Eijebong had independently come to the same conclusion as me about the timing.
- Some tests are added where WPT wasn't already testing functionality I was adding; Firefox and Chrome pass them, Safari fails some in a reasonably expected way
- Lots of test metadata changed to passing

One test continues to fail because 0.1 * 6 != 0.6 and the spec is written in abstractions instead of actual floating-point numbers; other test failures are WPT bugs I've reported as such and will write fixes for soon if no one else does.

---
<!-- 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 #25390 and fix #25388 and fix #19773 (except validation doesn't exist) and fix #25386

<!-- Either: -->
- [X] There are tests for these changes OR

<!-- 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-10 23:26:06 -05:00
Patrick Shaughnessy
87e86c81b9 stepUp, stepDown, valueAsNumber, valueAsDate, and list work and have tests 2020-01-10 20:09:51 -05:00
bors-servo
c5069835d7
Auto merge of #25435 - pshaughn:radio, r=Manishearth
RadioNodeList liveness

When the named getter of a form's .elements gets a list, that list is now a live view into the form, passing a WPT test that removes a node and then looks at the list again.

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

<!-- 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-10 19:35:29 -05:00
Patrick Shaughnessy
d59aed606d RadioNodeList now reflects changes to the parent, but has room for performance optimization 2020-01-10 19:09:38 -05:00
bors-servo
6b79a8f042
Auto merge of #25413 - pshaughn:optionindex, r=jdm
Implement HTMLOptionElement.index

<!-- Please describe your changes on the following line: -->
Made list_of_options public in HTMLSelectElement so HTMLOptionElement can see it, added index-getting to HTMLOptionElement.

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

<!-- Either: -->
- [X] There are tests for these changes OR

<!-- 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-10 17:14:00 -05:00
bors-servo
fdfc840bac
Auto merge of #25446 - pshaughn:fixme11868, r=jdm
Make getOwnPropertyDescriptor hold the correct value for indexed/named properties

This is towards #25036 and #25415; it could have far-reaching implications so I want to test it in isolation and see the results on the full test suite.

A few lines of code had a FIXME(#11868) despite that issue being closed, and looking for the pattern that was marked that way, I found one other unmarked instance of it. It doesn't immediately crash, and maybe it will pass some tests or fail some tests in informative ways.

EDIT: After adding an overlooked extended attribute to HTMLFormElement, this works very well indeed and seems to be worth merging!

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

<!-- 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. -->
2020-01-10 15:18:10 -05:00
Patrick Shaughnessy
111ede9c77 Make property descriptors hold named/indexed property values 2020-01-10 12:32:08 -05:00
bors-servo
2aae85b0a0
Auto merge of #25481 - servo-wpt-sync:wpt_update_10-01-2020, r=jdm
Sync WPT with upstream (10-01-2020)

Automated downstream sync of changes from upstream as of 10-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-10 12:13:34 -05:00
Josh Matthews
1642347a42
Remove intermittent failure. 2020-01-10 09:42:38 -05:00
WPT Sync Bot
41b281893f Update web-platform-tests to revision 2a73e37c60b18846d9d2798c845242f209d74644 2020-01-10 10:58:32 +00:00
Patrick Shaughnessy
767ccbe568 HTMLOptionElement.index 2020-01-09 15:38:02 -05:00
bors-servo
c6192dc286
Auto merge of #25475 - servo:background-image, r=nox
Refactor display list creation, preparing for background-image

`backgound-image` itself will require more plumbing to get an image cache in `layout_thread_2020`. This can land in the mean time.
2020-01-09 14:57:59 -05:00
Simon Sapin
87b79985fa Simplify CommonItemProperties construction 2020-01-09 17:38:05 +01:00
Simon Sapin
12c18a0e07 Account for border-radius in hit-testing 2020-01-09 17:21:38 +01:00
Simon Sapin
75e1f116e1 Introduce BuilderForBoxFragment 2020-01-09 15:51:41 +01:00
Simon Sapin
c495b5adb2 Move box fragment hit testing to a dedicated display item 2020-01-09 15:49:29 +01:00
Simon Sapin
53fc6143dc Use the is_contentful field of DisplayListBuilder 2020-01-09 15:21:58 +01:00
bors-servo
123d43bb16
Auto merge of #25229 - mmatyas:webgl_fns_ubo, r=jdm
Add initial support for WebGL2 uniform buffer functions

This *work-in-progress* patch adds initial support for the following WebGL2 calls:

- `bindBufferBase`
- `bindBufferRange`
- `getUniformIndices`
- `getUniformBlockIndex`
- `getActiveUniforms`
- `getActiveUniformBlockParameter`
- `getActiveUniformBlockName`
- `uniformBlockBinding`

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

However, indexed uniforms and `getIndexedParameter`, which would be used by some of the functions (and transform feedback) is still missing. Also this patch depends on:

- https://github.com/servo/sparkle/pull/16
- https://github.com/servo/servo/issues/25034

(required for both building and running the tests).

cc @jdm @zakorgy @imiklos

<!-- 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
- [ ] These changes fix #___ (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. -->
2020-01-09 08:52:15 -05:00
bors-servo
ff6ddb4b61
Auto merge of #25469 - servo-wpt-sync:wpt_update_09-01-2020, r=servo-wpt-sync
Sync WPT with upstream (09-01-2020)

Automated downstream sync of changes from upstream as of 09-01-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-01-09 08:34:27 -05:00
WPT Sync Bot
0c29efe000 Update web-platform-tests to revision 422b440e0b587317e4539378b18c362a4ea7afee 2020-01-09 11:08:51 +00:00
Mátyás Mustoha
da94f8d0e7 Add initial support for WebGL2 uniform buffer functions
Adds initial support for the following WebGL2 calls:

- bindBufferBase
- bindBufferRange
- getUniformIndices
- getUniformBlockIndex
- getActiveUniforms
- getActiveUniformBlockParameter
- getActiveUniformBlockName
- uniformBlockBinding

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.16
2020-01-09 11:17:50 +01:00
bors-servo
f8c957dc1b
Auto merge of #25467 - gterzian:fix_message_event, r=Manishearth
Use dom and new_inherited in (extendable)messageevent

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

Also FIX #24707

---
<!-- 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 #25464 (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. -->
2020-01-09 03:11:33 -05:00
bors-servo
dbee7f7d27
Auto merge of #25463 - Manishearth:input-mocking, r=asajeffrey
Add input mocking, input sources change event

Depends on  https://github.com/servo/webxr/pull/118

Also fixes some bugs I found.

Wanted to finish and merge this before I started on hit testing since the transient hit test stuff might have overlap.

There are a bunch of missing mock pieces that I'll probably do in a separate PR.

Still need to run tests.

Some things I skipped:
 - Doing handedness/target ray setting: See https://github.com/immersive-web/webxr-test-api/issues/46 , this would require making our impl support these changing
 - Handling button initial state: Would require some mock changes, but I ran out of time
 - Handling profiles/etc: We don't yet have impl support for these

r? @jdm
2020-01-09 02:45:49 -05:00