Commit graph

41314 commits

Author SHA1 Message Date
Simon Sapin
d2041e5b47 Add a minimal alternative to cargo graph
I tried `cargo graph` and some of its successors,
but didn’t manage to make them produce what I wanted
(or in some cases make them work at all.)

This Python script reimplements similar functionality
based on parsing the (JSON) output of `cargo metadata`.

Graphviz graphs can become hard to read very quickly as the number of nodes grows.
Servo’s dependency graph is very large, so pruning as much as possible is important.
This only shows `path` dependencies (that have their source in this repo),
and can take a parameter to only show recursive dependencies of a given crate.

See https://github.com/servo/servo/issues/19422#issuecomment-617038366 for an example.

I find that `xdot` is best for visualization since it is interactive.

This script is not used by anything.
I am making this PR only so that we have it somewhere
in case it becomes useful again at some point.
2020-04-21 10:54:21 +02:00
bors-servo
4c8413d532
Auto merge of #26229 - servo:jdm-patch-36, r=SimonSapin
Use python binary to run multiprocess tests.

The python2 binary doesn't exist in the path on macOS. This change uses an existing python2 on macOS and whatever the default python version is on linux.
2020-04-20 15:02:26 -04:00
Josh Matthews
a3587e608e Pass a protocol to the TimedRunner constructor instead of a session. 2020-04-20 13:12:58 -04:00
Josh Matthews
34c3030ddd
Propagate pipe failure. 2020-04-20 12:02:41 -04:00
bors-servo
4c4f588178
Auto merge of #26227 - servo:layout-2020-rule-tree-threadsafe, r=emilio
Make the rule tree actually threadsafe

RuleTree::gc is now a safe method that any thread can call
at any time, and StrongRuleNode values can all be dropped
whenever their owner want to, on any thread.
2020-04-20 11:45:59 -04:00
Anthony Ramine
7f54d14904 Make the rule tree actually threadsafe
RuleTree::gc is now a safe method that any thread can call
at any time, and StrongRuleNode values can all be dropped
whenever their owner want to, on any thread.
2020-04-20 17:39:19 +02:00
Josh Matthews
2777134efb
Use python binary to run multiprocess tests. 2020-04-20 11:22:01 -04:00
bors-servo
5f5643e7aa
Auto merge of #26228 - servo-wpt-sync:wpt_update_20-04-2020, r=servo-wpt-sync
Sync WPT with upstream (20-04-2020)

Automated downstream sync of changes from upstream as of 20-04-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-04-20 08:24:30 -04:00
Anthony Ramine
1c2de5641c Change Map::get_or_insert_with to Map::entry 2020-04-20 14:17:14 +02:00
WPT Sync Bot
10112eddce Update web-platform-tests to revision 9b5bdedc2ad7797a6b99895157aeaa2b3a2d61e6 2020-04-20 11:12:41 +00:00
bors-servo
99cd30eaad
Auto merge of #26171 - Manishearth:hittest, r=asajeffrey
Implement hit testing API

Depends on https://github.com/servo/webxr/pull/149 , https://github.com/servo/servo/pull/26170

This implements non-transient hit tests.

The tests that do not pass are due to https://github.com/web-platform-tests/wpt/issues/22898 , https://github.com/web-platform-tests/wpt/issues/22900, https://github.com/web-platform-tests/wpt/issues/22901 , and https://github.com/immersive-web/hit-test/issues/86
2020-04-20 00:30:46 -04:00
Manish Goregaokar
2a579668f5 Update interfaces.html test 2020-04-19 20:29:14 -07:00
Manish Goregaokar
9659243e72 Update dependencies to dedup autocfg 2020-04-19 20:29:14 -07:00
Manish Goregaokar
30cd89d2d8 Add feature gating for hit tests 2020-04-19 20:29:14 -07:00
Manish Goregaokar
1b07b77323 Add XRSession::requestHitTestSource() 2020-04-19 20:29:14 -07:00
Manish Goregaokar
f1d6a89150 Add XRFrame::getHitTestResults() 2020-04-19 20:29:14 -07:00
Manish Goregaokar
87bce8cde9 Add XRHitTestResult::getPose 2020-04-19 20:29:14 -07:00
Manish Goregaokar
c7b91523d0 Add XRHitTestResult 2020-04-19 20:29:14 -07:00
Manish Goregaokar
341d36a826 Add XRHitTestSource 2020-04-19 20:29:14 -07:00
Manish Goregaokar
83f92a3181 Update XRRay semantics
Implements changes from https://github.com/immersive-web/hit-test/pull/85
2020-04-19 20:29:14 -07:00
Manish Goregaokar
7dd2a71d6d Add XRRay.matrix 2020-04-19 20:29:14 -07:00
Manish Goregaokar
e7ba4e5a47 Add XRRay(transform) constructor 2020-04-19 20:29:14 -07:00
Manish Goregaokar
977b36d855 Add XRRay constructors 2020-04-19 20:29:14 -07:00
Manish Goregaokar
98ff97783e Add origin/direction methods to XRRay 2020-04-19 20:29:14 -07:00
Manish Goregaokar
b6a9e41bb8 Add stub XRRay 2020-04-19 20:29:14 -07:00
Manish Goregaokar
7f353033f4 Support .supportedModes to enable newer tests 2020-04-19 20:29:14 -07:00
bors-servo
bc1e740973
Auto merge of #26222 - servo-wpt-sync:wpt_update_19-04-2020, r=jdm
Sync WPT with upstream (19-04-2020)

Automated downstream sync of changes from upstream as of 19-04-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-04-19 15:04:17 -04:00
Manish Goregaokar
ef6ee5e2a1 Add hit test mocking after initialization 2020-04-19 11:43:50 -07:00
Manish Goregaokar
d01d9065aa Add hit test mocking at initialization 2020-04-19 11:43:50 -07:00
Manish Goregaokar
3f88310e23 Update webxr 2020-04-19 11:43:49 -07:00
bors-servo
4f8de6fd02
Auto merge of #26221 - duckinator:patch-1, r=jdm
[python/servo/bootstrap.py] Add missing comma

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

Add a missing comma in `pkgs_dnf` list, so `python3 ./mach bootstrap` works on Fedora.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
Unfortunately I can't actually build Servo right now because of lack of RAM (whoops), but hopefully adding a single comma between elements of a list is small enough of a change for you to overlook that. 😅

- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] (N/A) 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's in the bootstrap script, which afaik doesn't have 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-04-19 12:59:47 -04:00
Josh Matthews
4f7bea50b4
Remove intermittent failure. 2020-04-19 11:21:20 -04:00
bors-servo
240b58a826
Auto merge of #26223 - Eijebong:dirs, r=nox
Dedupe the dirs dependency
2020-04-19 11:18:06 -04:00
Bastien Orivel
3c895666e1 Dedupe the dirs dependency 2020-04-19 13:54:02 +02:00
WPT Sync Bot
e116a19f0b Update web-platform-tests to revision 9d583db6a1a16763322dce912bf057490cd7b0c7 2020-04-19 11:09:10 +00:00
Ellen Marie Dash
04c38042a8
[python/servo/bootstrap.py] Add missing comma
Add a missing comma in `pkgs_dnf` list.
2020-04-18 22:48:29 -04:00
bors-servo
306e8ac5f9
Auto merge of #25853 - asajeffrey:surfmanup, r=jdm
Replace glutin by winit + surfman 0.2

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

This PR updates surfman to 0.2, and replaces glutin with winit+surfman.

---
<!-- 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 this should all be invisible

<!-- 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-04-18 21:03:25 -04:00
bors-servo
00ac447966
Auto merge of #26220 - servo:layout-2020-rule-tree-new-on-write, r=emilio
Always upgrade existing weak child references in the rule tree

Just because we didn't find a child when read-locking a node children list
doesn't mean it still won't exist while we wait to upgrade the read lock
into a write lock to create the child.
2020-04-18 14:06:19 -04:00
bors-servo
3a1531f18f
Auto merge of #26214 - mrobinson:animation-eliminate-animation-frame, r=emilio
Eliminate `AnimationFrame`

This intermediate data structure doesn't really buy us anything and is a
bit confusing.

<!-- 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 do not 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-04-18 10:34:44 -04:00
Martin Robinson
a0b495750e Eliminate AnimationFrame
This intermediate data structure doesn't really buy us anything and is a
bit confusing.
2020-04-18 13:48:52 +02:00
Anthony Ramine
c113fbb640 Always upgrade existing weak child references in the rule tree
Just because we didn't find a child when read-locking a node children list
doesn't mean it still won't exist while we wait to upgrade the read lock
into a write lock to create the child.
2020-04-18 12:11:34 +02:00
bors-servo
c6ec063a31
Auto merge of #26217 - servo:jdm-patch-40, r=asajeffrey
Disable RUST_BACKTRACE in unit tests on macOS.

This works around #26192 which is a new relatively frequent intermittent crash on CI.
2020-04-18 02:59:52 -04:00
bors-servo
7799dccb25
Auto merge of #26218 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See individual commits for details.

This fixes some rebase mistakes from #26201 and such.
2020-04-18 01:31:29 -04:00
Alan Jeffrey
8bb1732258 Update surfman to 0.2 and remove glutin 2020-04-17 23:44:53 -05:00
Emilio Cobos Álvarez
ee8e98bc04 style: Run rustfmt. 2020-04-18 03:48:22 +02:00
Emilio Cobos Álvarez
b80d79863c style: Fix some rebase messups from the rule tree refactoring.
This code was all long gone already from Gecko :)
2020-04-18 03:48:21 +02:00
Emilio Cobos Álvarez
83ea321096 style: Implement parsing / selector-matching for :is() and :where().
This implements the easy / straight-forward parts of the :where / :is
selectors.

The biggest missing piece is to handle properly invalidation when there
are combinators present inside the :where. That's the hard part of this,
actually.

But this is probably worth landing in the interim. This fixes some of
the visitors that were easy to fix.

Differential Revision: https://phabricator.services.mozilla.com/D70788
2020-04-18 03:48:15 +02:00
bors-servo
66f14773c6
Auto merge of #26207 - servo:jdm-patch-36, r=Manishearth
Publish new UWP package

This fixes an issue where the latest UWP package is published at http://download.servo.org/nightly/uwp/servo-latest.0.0.0_Test.zip because the full filename contains "1.0.0.0" and we don't detect file extensions correctly.
2020-04-17 19:30:04 -04:00
Josh Matthews
0e158b1129
Rename taskcluster artifact for UWP. 2020-04-17 19:29:36 -04:00
Josh Matthews
b54b3aca64
Disable RUST_BACKTRACE in unit tests on macOS. 2020-04-17 18:20:35 -04:00