Commit graph

41021 commits

Author SHA1 Message Date
bors-servo
98e13c3d21
Auto merge of #25999 - servo-wpt-sync:wpt_update_20-03-2020, r=servo-wpt-sync
Sync WPT with upstream (20-03-2020)

Automated downstream sync of changes from upstream as of 20-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-20 07:05:58 -04:00
WPT Sync Bot
96fc7662dc Update web-platform-tests to revision a587550f729c270ae55b56a92c94605461cc919a 2020-03-20 11:05:42 +00:00
bors-servo
c76a995ba2
Auto merge of #25992 - servo:tree-sha, r=jdm
Index tasks by git tree hash instead of parent commits hashes

This makes it (sligthly) easier to query the index and find those tasks from other scripts.
2020-03-20 04:08:00 -04:00
Simon Sapin
fa625a7388 Index tasks by git tree hash instead of parent commits hashes 2020-03-20 09:06:43 +01:00
Josh Matthews
3a3397fbce webgl: Ignore webgl communication errors when dropping vertex array objects. 2020-03-19 23:34:26 -04:00
bors-servo
07f6d783a3
Auto merge of #25994 - GabrielMajeri:replace-irc-with-matrix, r=Manishearth
Replace IRC channel with Matrix link

This PR updates the `HACKING_QUICKSTART.md` file to mention the Matrix Servo channel instead of the now-defunct `#servo` IRC channel.
2020-03-19 20:42:24 -04:00
bors-servo
d2e60ae2c3
Auto merge of #25996 - humancalico:mach_pop, r=jdm
added pop!_os support for ./mach bootstrap

<!-- Please describe your changes on the following line: -->
Added ./mach bootstrap support for Pop!_OS

---
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
- [X] These changes fix #25965 (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-19 19:18:07 -04:00
bors-servo
c57e246f3d
Auto merge of #25989 - servo:jdm-patch-45, r=SimonSapin
Reuse layout-2013 WPT results with layout-2020 when syncing.

This should fix #25666, or at least the most common failure case. If new test results actually have different behaviour between the layout-2013 and layout-2020 engines there's not much we can do without a proper build with 2020 enabled.
2020-03-19 18:07:21 -04:00
Akshat Agarwal
1c8d2cb505 Merge branch 'master' of https://github.com/servo/servo into mach_pop 2020-03-20 03:28:01 +05:30
Akshat Agarwal
d26ff91c3c added pop!_os support for ./mach bootstrap 2020-03-20 03:11:13 +05:30
bors-servo
1634f4e6ed
Auto merge of #25987 - servo-wpt-sync:wpt_update_19-03-2020, r=jdm
Sync WPT with upstream (19-03-2020)

Automated downstream sync of changes from upstream as of 19-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-19 16:57:59 -04:00
Gabriel Majeri
126a0981f7 Replace IRC channel with Matrix link 2020-03-19 21:54:29 +02:00
bors-servo
ddee627ae5
Auto merge of #25839 - servo:jdm-patch-36, r=SimonSapin
Remove requirement to install pkg-config on Windows.

I recently set up a new Windows laptop to build Servo and never bothered to install pkg-config. The build was successful, so we should remove it from the requirements.
2020-03-19 15:47:59 -04:00
bors-servo
d9c84b74cd
Auto merge of #25988 - mrobinson:fix-doc, r=SimonSapin
layout_2020: Fix a documentation comment

I inadvertently failed to complete this doc comment.

<!-- 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: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they don't change behavior.

<!-- 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-19 14:40:03 -04:00
bors-servo
ffdb83b644
Auto merge of #25782 - kaiakz:master, r=jdm
Add a simple implementation of CanvasRenderingContext2d.fillText

<!-- Please describe your changes on the following line: -->
I added a simple implementation of CanvasRenderingContext2d.fillText.
Some code are merged from @mikrut, and I fixed a bug about text scaling.
Also, the bug of text rotation should be fixed after `raqote` merged my other PR.

---
<!-- 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) #11681 (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-03-19 13:24:08 -04:00
Simon Sapin
8fff3e206f Remove indexing of daily decision tasks by date
Treeherder does this job better
2020-03-19 17:39:08 +01:00
Simon Sapin
0c10e3ab8e Remove dead code for disabled CI tasks 2020-03-19 17:34:10 +01:00
Simon Sapin
0cd734fd7a Remove unused task indexing by task definition hash 2020-03-19 17:30:29 +01:00
Simon Sapin
cdb80c1966
Renumber steps after the removed one 2020-03-19 16:18:23 +01:00
Josh Matthews
2b46d557ab
Reuse layout-2013 WPT results with layout-2020 when syncing. 2020-03-19 10:47:26 -04:00
WPT Sync Bot
ee944e769d Update web-platform-tests to revision 6a665f63ae39b552f60b971f11c34b215861fcb3 2020-03-19 10:44:50 -04:00
bors-servo
3d03b3bca0
Auto merge of #25960 - servo:jdm-patch-40, r=SimonSapin
Don't run 2dcontext tests in layout-2020.

The vast majority of these tests only test the DOM APIs, not the actual layout via reftests. That means we just duplicate the results and have to update them every time we change the canvas behaviour.
2020-03-19 09:43:57 -04:00
bors-servo
19c2ac2ed3
Auto merge of #25985 - mrobinson:inline-positioning-context, r=nox
layout_2020: Add support for hoisting positioned fragments in inline boxes

Add support for tracking containing blocks when doing inline layout.
This requires setting up a PositioningContext for inline boxes when
necessary. Instead of using the PositioningContext helper methods
and we reuse the contexts between line breaks.

Fixes #25279.

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

<!-- 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-19 08:12:23 -04:00
Martin Robinson
cc75c6f5d4 layout_2020: Fix a documentation comment
I inadvertently failed to complete this doc comment.
2020-03-19 12:43:01 +01:00
Martin Robinson
bd06227a60 layout_2020: Add support for hoisting positioned fragments in inline boxes
Add support for tracking containing blocks when doing inline layout.
This requires setting up a PositioningContext for inline boxes when
necessary. Instead of using the PositioningContext helper methods
and we reuse the contexts between line breaks.

Fixes #25279.
2020-03-19 10:50:49 +01:00
kaiakz
777b9d791b Update wpt expectations: offscreen-canvas && 2dcontext 2020-03-19 17:16:23 +08:00
bors-servo
b945de4ea9
Auto merge of #25984 - mrobinson:refactor-positioning-context, r=nox
layout_2020: Refactor PositioningContext to be simpler and smaller

Add a few helper methods which allow removing duplicate code in
PositioningContext. These methods will also be used to properly
implement hoisting in inline layout.

<!-- 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: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because this shouldn't change any behavior.

<!-- 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-19 04:17:29 -04:00
kaiakz
0d0ac986b7 Add a simple implementation of CanvasRenderingContext2d.fillText 2020-03-19 15:40:14 +08:00
bors-servo
2b0a48f291
Auto merge of #25983 - vbkaisetsu:fix/come-back-21532, r=jdm
Update x11-dl to pickup the fix for x11 startup crash (recurrence of #21530)

This branch updates x11-dl to 2.18.5 to get erlepereira/x11-rs#99

```
% ./mach run --release https://duckduckgo.com
attempted to leave type `std::mem::ManuallyDrop<xlib_xcb::Xlib_xcb>` uninitialized, which is invalid (thread main, at /rustc/45ebd5808afd3df7ba842797c0fcd4447ddf30fb/src/libcore/mem/mod.rs:536)
stack backtrace:
   0: servo::backtrace::print
   1: servo::main::{{closure}}
   2: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:513
   3: rust_begin_unwind
             at src/libstd/panicking.rs:417
   4: core::panicking::panic_fmt
             at src/libcore/panicking.rs:111
   5: core::panicking::panic
             at src/libcore/panicking.rs:54
   6: x11_dl::xlib_xcb::Xlib_xcb::open
   7: winit::platform::platform::x11::xdisplay::XConnection::new
   8: std::sync::once::Once::call_once::{{closure}}
   9: std::sync::once::Once::call_inner
             at src/libstd/sync/once.rs:416
  10: winit::platform::platform::EventsLoop::new_x11
  11: winit::platform::platform::EventsLoop::new
  12: winit::EventsLoop::new
  13: servo::events_loop::EventsLoop::new
  14: servo::app::App::run
  15: servo::main
  16: std::rt::lang_start::{{closure}}
  17: std::rt::lang_start_internal::{{closure}}
             at src/libstd/rt.rs:52
      std::panicking::try::do_call
             at src/libstd/panicking.rs:329
      std::panicking::try::do_try
             at src/libstd/panicking.rs:285
      std::panicking::try
             at src/libstd/panicking.rs:274
      std::panic::catch_unwind
             at src/libstd/panic.rs:394
      std::rt::lang_start_internal
             at src/libstd/rt.rs:51
  18: main
  19: __libc_start_main
  20: _start
Servo exited with return value 101
```

This patch is created by `cargo update -p x11-dl`.

---
<!-- 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 it fixes a startup crash

<!-- 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-18 23:38:17 -04:00
Koichi Akabe
9f892eb2c2 Update x11-dl to pickup the fix for erlepereira/x11-rs#99 2020-03-19 11:05:12 +09:00
bors-servo
0fef1bfbec
Auto merge of #25981 - servo-wpt-sync:wpt_update_18-03-2020, r=servo-wpt-sync
Sync WPT with upstream (18-03-2020)

Automated downstream sync of changes from upstream as of 18-03-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-03-18 08:41:33 -04:00
WPT Sync Bot
bd54acb29d Update web-platform-tests to revision 7d24adef541b2e836f2b2f9534ce3f0e078f5782 2020-03-18 11:05:52 +00:00
Martin Robinson
712f9340e8 layout_2020: Refactor PositioningContext to be simpler and smaller
Add a few helper methods which allow removing duplicate code in
PositioningContext. These methods will also be used to properly
implement hoisting in inline layout.
2020-03-18 11:31:11 +01:00
bors-servo
5bf45b2622
Auto merge of #25957 - pcwalton:layout-2020-atomic-refcell, r=nox
Start using `AtomicRefCell` in layout 2020 as preparation for incremental layout

This makes `BlockLevelBox` and `InlineLevelBox` use `AtomicRefCell` for incremental layout, per @nox's suggestion in https://github.com/servo/servo/issues/25168.

As part of this, it reworks inline layout to use recursion, per https://github.com/servo/servo/issues/25950. LLVM should be able to optimize this into a loop (though I have not verified this).

r? @nox
2020-03-18 06:14:20 -04:00
Patrick Walton
0d6c60f03e Make whitespace preservation computation recursive in order to fix lifetime issues 2020-03-17 20:13:57 -07:00
Patrick Walton
42058681a5 Switch the standard slice iterator in inline layout to a custom one in order to
avoid lifetime problems
2020-03-17 20:13:57 -07:00
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
Patrick Walton
1d9f669cf0 Switch some uses of Arc<AtomicRefCell<T>> over to ArcRefCell<T> 2020-03-17 11:15:17 -07:00
Patrick Walton
5b3f277465 Implement Default for ArcRefCell 2020-03-17 11:15:17 -07:00
Patrick Walton
9cb824e77c Wrap BlockLevelBox and InlineLevelBox with AtomicRefCell 2020-03-17 11:15:17 -07:00
Patrick Walton
2ff776b241 Add an ArcRefCell<T> type 2020-03-17 11:15:17 -07:00
Anthony Ramine
c3932185ec Make AbsolutelyPositionedBox be 'static 2020-03-17 11:15:17 -07:00
Anthony Ramine
7ade924683 Update atomic_refcell
Required for Debug impl on AtomicRefCell<T>.
2020-03-17 11:15:17 -07: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