Commit graph

40775 commits

Author SHA1 Message Date
Josh Matthews
d4ed646abc
Re-enable windows unit tests. 2020-03-17 14:32:44 -04:00
Josh Matthews
d30e51b779
Copy openssl DLLs to unit test directory. 2020-03-17 14:30:56 -04:00
bors-servo
9fb83d8143
Auto merge of #25964 - servo:webidl, r=jdm
Update the WebIDL parser

It now supports Python 3.
2020-03-17 12:55:26 -04:00
bors-servo
59c68e2eb7
Auto merge of #25975 - mmatyas:webgl_fns_read_draw_buffers_p2, r=jdm
Do not try to read pixels from an FBO without read buffer

A follow up to #25905, this adds another check to the WebGL2 ReadPixels implementation to fix
an OpenGL invalid operation crash when the method is called on a bound framebuffer that has no read buffer.

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

cc @jdm @zakorgy

However, it seems there's an issue with the headless mode: when ReadBuffer is called on the default framebuffer with the value `GL_BACK`, like [here](e1103176e3/tests/wpt/webgl/tests/conformance2/renderbuffers/readbuffer.html (L77)), in headless mode an invalid operation is generated. In non-headless mode the whole test completes successfully:
![sshot](https://user-images.githubusercontent.com/4354863/76845770-b0ffbd80-683f-11ea-8103-a81512188808.png)

---
<!-- 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-03-17 10:31:01 -04:00
bors-servo
54769a86b9
Auto merge of #25976 - servo-wpt-sync:wpt_update_17-03-2020, r=servo-wpt-sync
Sync WPT with upstream (17-03-2020)

Automated downstream sync of changes from upstream as of 17-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-17 09:59:44 -04:00
WPT Sync Bot
fa876fc660 Update web-platform-tests to revision 74e1fe40eb227423537d6eafa99244ece1a8f8fd 2020-03-17 11:26:41 +00:00
Mátyás Mustoha
a6359fe587 Do not try to read pixels from an FBO without read buffer
Adds another check to the WebGL2 ReadPixels implementation to fix
an OpenGL invalid operation crash when the method is called on a
bound framebuffer that has no read buffer.
2020-03-17 10:55:41 +01:00
bors-servo
e1103176e3
Auto merge of #25972 - servo:jdm-patch-44, r=jdm
Disable running windows binaries on CI.

In order to get more information out of https://github.com/servo/servo/pull/25745, we're going to temporarily disable the parts of windows CI that don't agree with the updated windows server environment.
2020-03-16 22:17:59 -04:00
Josh Matthews
ecdbea518f
Disable running windows binaries on CI. 2020-03-16 20:13:10 -04:00
bors-servo
8ce971dd90
Auto merge of #25970 - jdm:hirup, r=asajeffrey
Update rustc to 3/16 nightly.
2020-03-16 17:57:45 -04:00
bors-servo
fdc725925d
Auto merge of #25967 - paulrouget:devtoolsToast, r=Manishearth
Re-enabling devtools on UWP
2020-03-16 15:38:23 -04:00
Josh Matthews
a555e7443b Update rustc to 3/16 nightly. 2020-03-16 13:34:50 -04:00
bors-servo
654dd048a3
Auto merge of #25905 - szeged:mmatyas__webgl_fns_read_draw_buffers, r=nox
Add support for WebGL2 read and draw buffer settings

Adds support for the `ReadBuffer` and `DrawBuffers` WebGL2 calls and the related parameter getters.

See:

- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2
- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.4
- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.11

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

This is marked as WIP because with these functions added (but apparently not directly related to them), some tests now run into states that produces crash.

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] 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-03-16 11:43:06 -04:00
bors-servo
d857bec944
Auto merge of #25968 - servo-wpt-sync:wpt_update_16-03-2020, r=servo-wpt-sync
Sync WPT with upstream (16-03-2020)

Automated downstream sync of changes from upstream as of 16-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-16 09:43:08 -04:00
WPT Sync Bot
7b0ebcb83d Update web-platform-tests to revision 4568db58b5528eeb9edf931ab34d83fd6883600f 2020-03-16 13:42:55 +00:00
Paul Rouget
00395125f6 UWP port: re-enable devtools 2020-03-16 13:43:10 +01:00
bors-servo
58ff35f5bf
Auto merge of #25941 - kunalmohan:25907-DevtoolsServer, r=paulrouget
Add support for launching devtools server on random port

In case the default port(6000) or the port specified by user for
devtools server is already taken, random port will be assigned to
it which is reported to the embedding layer for display to user.

r?@jdm @paulrouget

<!-- 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 #25907  (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-03-16 07:22:33 -04:00
Mátyás Mustoha
0afe27ef18 Add support for WebGL2 read and draw buffer settings
Adds support for the `ReadBuffer` and `DrawBuffers`
WebGL2 calls and the related parameter getters.

See:

- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.2
- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.4
- https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.11
2020-03-16 12:17:15 +01:00
Kunal Mohan
94db0d61cb
Add support for launching devtools server on random port
Assign random port to devtools server in case user does not specify a
port explicitly and report it to the embedding layer for display to user.
2020-03-16 15:30:26 +05:30
bors-servo
e8e0b70266
Auto merge of #25966 - servo-wpt-sync:wpt_update_15-03-2020, r=jdm
Sync WPT with upstream (15-03-2020)

Automated downstream sync of changes from upstream as of 15-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-15 22:31:24 -04:00
Josh Matthews
8e0cdd334b
Delete intermittent failure. 2020-03-15 21:20:11 -04:00
WPT Sync Bot
4bccffb415 Update web-platform-tests to revision 1ce25e2d4ece2d6ac03739b3cb4f5838d1f94e38 2020-03-15 13:34:57 +00:00
Anthony Ramine
3f30c7d8be Do not do weird scope things in MethodDefiner
Variable `m` comes from a previous list comprehension earlier in the
function is not actually properly defined.
2020-03-14 12:17:48 +01:00
Anthony Ramine
4930479ac8 Update the WebIDL parser
Upstream doesn't allow downloading .tar.gz archives so update.sh was changed
to use unzip.
2020-03-14 12:17:48 +01:00
bors-servo
d43e191449
Auto merge of #25945 - mrobinson:track-hoisted, r=nox
layout_2020: Paint hoisted positioned fragments in tree order

Instead of painting hoisted position fragments in the order to which
they are hoisted, paint them in tree order and properly incorporate them
into the stacking context.

We do this by creating a placeholder fragment in the original tree position
of hoisted fragments. The ghost fragment contains an atomic id which
links back to the hoisted fragment in the containing block.

While building the stacking context, we keep track of containing blocks
and their children. When encountering a placeholder fragment we look at
the containing block's hoisted children in order to properly paint the
hoisted fragment.

One notable design modification in this change is that hoisted fragments
no longer need an AnonymousFragment as their parent. Instead they are
now direct children of the fragment that establishes their containing block.

<!-- 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-03-13 19:15:08 -04:00
bors-servo
5737db81f9
Auto merge of #25940 - pylbrecht:image.handling, r=jdm
Handle nonexistent images in CanvasRenderingContext2D.createPattern()

<!-- 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-03-13 18:01:32 -04:00
bors-servo
a6736de099
Auto merge of #25904 - mmatyas:webgl_fns_framebuf_renderbuf, r=jdm
Add support for some more WebGL2 renderbuffer functions

Adds support for the following WebGL2 calls:

- `RenderbufferStorageMultisample`
- `GetInternalFormativ`

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

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

The test results depend on #25903.

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] 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-03-13 16:29:13 -04:00
pylbrecht
3ec848f4a8 Handle nonexistent images in CanvasRenderingContext2D.createPattern() 2020-03-13 20:48:27 +01:00
Josh Matthews
6cdbab5581 webgl: Don't panic on sampler3D and sampler2DArray uniforms. 2020-03-13 14:05:34 -04:00
Mátyás Mustoha
5eaa9ef8cb Add support for some more WebGL2 renderbuffer functions
Adds support for the following WebGL2 calls:

- `RenderbufferStorageMultisample`
- `GetInternalFormativ`

See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.5
2020-03-13 13:43:30 -04:00
bors-servo
13a349603d
Auto merge of #25959 - jdm:webgl_vertex_array, r=jdm
Add VertexArrayObject support for WebGL2

The implementation was already in place for OpenGL ES.
My approach with this patch is to add support for WebGL2 by
sharing the implementation between the WebGL2 and GLES.

Sadly I couldn't manage to place the WebGL2 and OpenGL ES variant to the same slot in `WebGLRenderingContext`, therefore I had to do same code duplication.

Fixes #25956.

<!-- 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] 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-03-13 11:40:43 -04:00
Istvan Miklos
1b4a3d8987 Add VertexArrayObject support for WebGL2
The implementation was already in place for OpenGL ES.
My approach with this patch is to add support for WebGL2 by
sharing the implementation between the WebGL2 and GLES.
2020-03-13 11:38:28 -04:00
bors-servo
63a5807540
Auto merge of #25958 - servo-wpt-sync:wpt_update_13-03-2020, r=servo-wpt-sync
Sync WPT with upstream (13-03-2020)

Automated downstream sync of changes from upstream as of 13-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-13 08:41:47 -04:00
WPT Sync Bot
168aa56f18 Update web-platform-tests to revision 72be34c4c6d45039320e271325cad0c99615d0c4 2020-03-13 11:25:45 +00:00
bors-servo
6ab923c8e8
Auto merge of #25948 - NeverHappened:accept-only-connected-attributes-for-checkbox-radio-activation, r=jdm
Accept only connected attributes for checkbox and radio activation behavior

<!-- Please describe your changes on the following line: -->
Accept only connected attributes for checkbox and radio activation behavior

---
<!-- 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 #25906
- [x] WPT tests were already here
2020-03-12 13:38:47 -04:00
bors-servo
38f0c35b74
Auto merge of #25953 - servo-wpt-sync:wpt_update_12-03-2020, r=servo-wpt-sync
Sync WPT with upstream (12-03-2020)

Automated downstream sync of changes from upstream as of 12-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-12 11:55:47 -04:00
WPT Sync Bot
33357a82e4 Update web-platform-tests to revision f7e2ea2c50c4d23549d07cd24c7a96fc3f203d96 2020-03-12 15:55:33 +00:00
Dmitry Kolupaev
6284795078 Accept only connected attributes for checkbox and radio activation behaviour 2020-03-11 22:55:37 +03:00
bors-servo
4b1bb895a3
Auto merge of #25946 - jdm:macos-fix, r=nox
Update mozjs for macOS 10.15 build fix.
2020-03-11 10:36:10 -04:00
bors-servo
c61988d293
Auto merge of #25947 - servo-wpt-sync:wpt_update_11-03-2020, r=servo-wpt-sync
Sync WPT with upstream (11-03-2020)

Automated downstream sync of changes from upstream as of 11-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-11 09:28:31 -04:00
WPT Sync Bot
57fbf23022 Update web-platform-tests to revision 4cec5596c806088cd8f1781bdaab1d10abb72394 2020-03-11 13:28:16 +00:00
Josh Matthews
ce1b65f1b5 Update mozjs for macOS 10.15 build fix. 2020-03-11 09:07:49 -04:00
Martin Robinson
c3b1c92ac1 layout_2020: Paint hoisted positioned fragments in tree order
Instead of painting hoisted position fragments in the order to which
they are hoisted, paint them in tree order and properly incorporate them
into the stacking context.

We do this by creating a placeholder fragment in the original tree position
of hoisted fragments. The ghost fragment contains an atomic id which
links back to the hoisted fragment in the containing block.

While building the stacking context, we keep track of containing blocks
and their children. When encountering a placeholder fragment we look at
the containing block's hoisted children in order to properly paint the
hoisted fragment.

One notable design modification in this change is that hoisted fragments
no longer need an AnonymousFragment as their parent. Instead they are
now direct children of the fragment that establishes their containing block.
2020-03-11 12:47:06 +01:00
bors-servo
58f3766c5b
Auto merge of #25939 - jdm:rustup2, r=asajeffrey
Update to 3/4 nightly rustc.

Now that #25918 has merged, this should be safe to use.
2020-03-10 20:04:17 -04:00
bors-servo
dd6699c49c
Auto merge of #25943 - servo:jdm-patch-40, r=Manishearth
Add cert scope to UWP nightly build task.
2020-03-10 19:52:21 -04:00
bors-servo
ec5315d76f
Auto merge of #25942 - asajeffrey:surfman-chains-multiup, r=jdm
Update surfman-chains multi branch

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

Updates the mutli branch of surfman-chains, which we get from git, so is broken when I rebase.

---
<!-- 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 it fixes CI bustage

<!-- 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-03-10 17:25:02 -04:00
Alan Jeffrey
9c2163cf89 Updated gst plugin for new surfman-chains API 2020-03-10 15:12:33 -05:00
Josh Matthews
3dacd6906f
Add cert scope to UWP nightly build task. 2020-03-10 15:48:19 -04:00
Alan Jeffrey
6e09fa092f Update surfman-chains multi branch 2020-03-10 14:43:41 -05:00
bors-servo
e3c91f7c49
Auto merge of #25938 - servo-wpt-sync:wpt_update_10-03-2020, r=jdm
Sync WPT with upstream (10-03-2020)

Automated downstream sync of changes from upstream as of 10-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-10 12:32:28 -04:00