Commit graph

25052 commits

Author SHA1 Message Date
Bastien Orivel
13c632e739 Switch from webidl to weedle in script_plugins
This removes the dependency on lalrpop and should speed up compilation
quite a bit.
2019-05-15 23:03:25 +02:00
bors-servo
36c75c4e5f
Auto merge of #23382 - servo:rustup, r=jdm
Upgrade to rustc 1.36.0-nightly (a9ec99f42 2019-05-13)

<!-- 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/23382)
<!-- Reviewable:end -->
2019-05-14 11:38:52 -04:00
Simon Sapin
06b99983fc Upgrade to rustc 1.36.0-nightly (a9ec99f42 2019-05-13) 2019-05-14 17:37:40 +02:00
bors-servo
3f30720bba
Auto merge of #23363 - Darkspirit:https, r=jdm
More https

* Disabled unused legacy TLS.
It will be disabled for Nightly 72 or 73 in 5-7 months and ride the [trains](https://wiki.mozilla.org/Release_Management/Calendar).
https://blog.mozilla.org/security/2018/10/15/removing-old-versions-of-tls/
* Updated MPL license in a few files.
It would be nice if a new version of https://pypi.org/project/servo_tidy/ could be released to update WebRender as well.
* Switched servo-deps.s3.amazonaws.com back to https.
This was recently regressed by 10585be25c and fc28073dfb.
* Made https the default protocol for address bar on desktop.
Press Ctrl+L on the Glutin port and enter `example.com`:
Servo previously assumed you meant `http://example.com/`, now it is `https://example.com/`.

---

- [x] `./mach build --release` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- 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/23363)
<!-- Reviewable:end -->
2019-05-14 08:21:17 -04:00
bors-servo
fdafc833ae
Auto merge of #23135 - maharsh312:master, r=jdm
Create CanvasRect for OffscreenCanvas

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

Created CanvasRect fot OffscreenCanvas and Updated Testcases

---
<!-- 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
- [ ] `./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. -->

<!-- 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/23135)
<!-- Reviewable:end -->
2019-05-13 16:19:57 -04:00
Maharsh
cbff66928f removed comments 2019-05-13 14:17:12 -04:00
Maharsh
854ba8d514 Borrow Layout Change 2019-05-13 12:04:17 -04:00
Maharsh
65e1f1fb3e Updated Testcases and Formatting 2019-05-11 21:58:15 -04:00
bors-servo
965f57e3f8
Auto merge of #23309 - CYBAI:update-workers, r=nox
Support WorkerOptions for Worker

I'd like to start working on updating SW related codes and I found it will have some algorithms related to module workers. And I found parts of the spec update is related to [fetch a module worker script graph](https://html.spec.whatwg.org/multipage/#fetch-a-module-worker-script-tree), maybe it's worth being a separate PR?

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #23308
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because ___

<!-- 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/23309)
<!-- Reviewable:end -->
2019-05-11 03:36:23 -04:00
bors-servo
d9559499b2
Auto merge of #23163 - jdm:smup66, r=asajeffrey
Upgrade to SpiderMonkey 66

<!-- 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/23163)
<!-- Reviewable:end -->
2019-05-10 23:51:12 -04:00
CYBAI
dececad390 Update Worker webidl to support WorkerOptions 2019-05-11 12:14:25 +09:00
CYBAI
261c8d9e0c Introduce parser metadata for request 2019-05-11 12:10:28 +09:00
CYBAI
ffdcd3aa7a Fix mode and credential-mode for fetching classic worker script
Ref to step 1 in https://html.spec.whatwg.org/multipage/#fetch-a-classic-script
2019-05-11 12:08:55 +09:00
Josh Matthews
4328713f71 Update to SpiderMonkey 66. 2019-05-10 22:43:43 -04:00
bors-servo
887f43b65b
Auto merge of #23353 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See each individual commit for details.

<!-- 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/23353)
<!-- Reviewable:end -->
2019-05-10 21:20:50 -04:00
bors-servo
623c5d0645
Auto merge of #23322 - pylbrecht:sync.network.fetch, r=jdm
Create performance resource timing entry for synchronous network fetch

<!-- 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 #23150 (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. -->

<!-- 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/23322)
<!-- Reviewable:end -->
2019-05-10 10:11:40 -04:00
Jan Andre Ikenmeyer
97deef4e19
Update MPL license to https 2019-05-10 15:03:19 +02:00
Jan Andre Ikenmeyer
25333b6451
Disable TLS 1.0 and 1.1 2019-05-10 14:53:32 +02:00
bors-servo
b604a87003
Auto merge of #23349 - ceyusa:no-clone-data, r=ferjm
No need to clone again the raw data.

Players frame's get_data() already delivers a cloned raw data.

<!-- 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 there's not functional 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. -->

<!-- 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/23349)
<!-- Reviewable:end -->
2019-05-10 07:43:53 -04:00
Emilio Cobos Álvarez
db2f6aa8ca style: Rustfmt + build fix. 2019-05-10 12:43:06 +02:00
Emilio Cobos Álvarez
f429c28f23 style: Add bindings for ArcSlice and ThinArc, and use them to reduce copies of SVG path data.
As I said over bug 1549593, the eventual goal is to use ArcSlice in all
inherited properties. But this seemed like a good first candidate that doesn't
require me to move around a lot more code, since we were already using cbindgen
for the path commands.

Differential Revision: https://phabricator.services.mozilla.com/D30134
2019-05-10 12:43:05 +02:00
Emilio Cobos Álvarez
0d5c4481b8 style: Introduce ArcSlice, a small wrapper over ThinArc but without an explicit header.
We could make the header PhantomData or something, but then we wouldn't be able
to bind to C++, since C++ doesn't have ZSTs. So add a canary instead to add a
runtime check of stuff being sane.

Differential Revision: https://phabricator.services.mozilla.com/D30133
2019-05-10 12:43:04 +02:00
Emilio Cobos Álvarez
2ed2151b3d style: Move OwnedSlice to style_traits.
Differential Revision: https://phabricator.services.mozilla.com/D30126
2019-05-10 12:43:04 +02:00
Emilio Cobos Álvarez
559235edad style: Use the owned slice type for basic shape polygon coordinates.
This enables destructors for tagged unions in cbindgen, implemented in:

 * https://github.com/eqrion/cbindgen/pull/333

Which allow us to properly generate a destructor for the cbindgen-generated
StyleBasicShape (which now contains an OwnedSlice).

For now, we still use the glue code to go from Box<BasicShape> to
UniquePtr<BasicShape>. But that will change in the future when we generate even
more stuff and remove all the glue.

I could add support for copy-constructor generation to cbindgen for tagged
enums, but I'm not sure if it'll end up being needed, and copy-constructing
unions in C++ is always very tricky.

Differential Revision: https://phabricator.services.mozilla.com/D29769
2019-05-10 12:43:03 +02:00
Emilio Cobos Álvarez
330bccd659 style: Add an owned slice type which cbindgen can understand.
Passing these by value won't be ok of course, but that's fine.

I plan to combine this with https://github.com/eqrion/cbindgen/pull/333 to
actually be able to share representation for ~all the things, this is just the
first bit.

Box<T>, Atom and Arc<T> will be much easier since cbindgen can understand them
without issues.

It's boxed slices the only ones I should need something like this. I could avoid
it if I rely on Rust's internal representation, which we can per [1], but then I
need to teach cbindgen all about slices, which is generally hard, I think.

[1]: https://github.com/rust-lang/unsafe-code-guidelines/blob/master/reference/src/layout/pointers.md

Differential Revision: https://phabricator.services.mozilla.com/D29768
2019-05-10 12:43:02 +02:00
Emilio Cobos Álvarez
4b761848a0 style: Remove unnecessary mut usage. 2019-05-10 12:43:01 +02:00
Cameron McCormack
ca756a8550 style: Implement -webkit-line-clamp.
Differential Revision: https://phabricator.services.mozilla.com/D20115
2019-05-10 12:43:00 +02:00
Emilio Cobos Álvarez
81e706469d style: Fix an assertion that doesn't account for alignment padding.
I'm hitting this when trying to add bindings for box shadows, which are 32-bit
aligned.

Differential Revision: https://phabricator.services.mozilla.com/D30353
2019-05-10 12:42:59 +02:00
Emilio Cobos Álvarez
99b97737fe style: Don't panic when creating empty ThinArcs.
The change from [T; 1] to [T; 0] shouldn't change behavior since they have the
right alignment and we never poke at that particular array, but feels more
correct to avoid creating types that point to uninitialized data or outside of
their allocation, now that we allow empty slices.

Differential Revision: https://phabricator.services.mozilla.com/D30352
2019-05-10 12:42:58 +02:00
Emilio Cobos Álvarez
dd6252e34f style: Don't report errors for properties for which we've parsed another value in the same declaration block.
I thought a bit about how to test it and it's not particularly great.
test_css_parse_error_smoketest.html is great to assert that something _gets_
reported, but not that it doesn't :)

Differential Revision: https://phabricator.services.mozilla.com/D30201
2019-05-10 12:42:57 +02:00
Emilio Cobos Álvarez
02210264e7 style: Centralize a bit invalid value error reporting.
Also, buffer the errors, since we're going to want to look at the whole
declaration block to skip reporting them.

This shouldn't change behavior, just moves some work to the caller, and defers a
bit the work so that it happens only when error reporting is enabled.

Differential Revision: https://phabricator.services.mozilla.com/D30200
2019-05-10 12:42:56 +02:00
Emilio Cobos Álvarez
29cecf65b8 style: Use PhantomData<T> in servo_arc.
See https://github.com/rust-lang/rust/pull/60594#issuecomment-489966933

Differential Revision: https://phabricator.services.mozilla.com/D30169
2019-05-10 12:42:55 +02:00
Emilio Cobos Álvarez
1fba297bbc style: ThinArc should use NonNull.
If only for parallelism with Arc<>.

Differential Revision: https://phabricator.services.mozilla.com/D30131
2019-05-10 12:42:53 +02:00
bors-servo
b1b47d8046
Auto merge of #22856 - jdm:angle, r=paulrouget
Add optional ANGLE support to glutin port

Supporting ANGLE in Servo has two important benefits:
* we can actually run Servo instances on our Windows CI machines, which gives us more confidence that we're not breaking it
* we can continue to use OpenGL on devices like the Hololens, rather than creating platform-specific graphical backends

<!-- 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/22856)
<!-- Reviewable:end -->
2019-05-10 00:04:20 -04:00
Maharsh
1de8ddd89c Changes for sender reciever 2019-05-09 21:54:48 -04:00
Maharsh
30cc087526 Changes for gitignore 2019-05-09 18:30:25 -04:00
Josh Matthews
79938affb3 Upgrade mozangle to 0.2 for libEGL.dll. 2019-05-09 15:24:18 -04:00
Josh Matthews
3bfbfa79d9 Add ANGLE support to default embedding. 2019-05-09 15:24:18 -04:00
Víctor Manuel Jáquez Leal
f643740c15 No need to clone again the raw data.
Players frame's get_data() already delivers a cloned raw data.
2019-05-09 11:59:56 +02:00
bors-servo
17590fd48f
Auto merge of #23342 - Manishearth:webrtc-streams, r=ferjm
Receive streams in WebRTC (and MediaStreamTrack support)

This adds the `ontrack` event handler to webrtc, and all the `MediaStreamTrack` stuff necessary to make it work.

WebRTC has the ability to group media tracks into streams using MSIDs, but I haven't yet figured out how to do this. For now, `ontrack` should work.

This _should_ be complete, but it hasn't yet been tested (hence the WIP)

r? @ferjm or @jdm

<!-- 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/23342)
<!-- Reviewable:end -->
2019-05-09 00:26:02 -04:00
Manish Goregaokar
7d5e493759
pref-gate RTCTrackEvent 2019-05-08 19:14:53 -07:00
bors-servo
e39b2b96fe
Auto merge of #23296 - codehag:evaluate-js-fix, r=Manishearth
Enable evaluating javascript in the firefox devtools console

This enables one to use the Firefox Devtools console to evaluate things in servo.

Steps:
start servo: ./mach run tests/html/about-mozilla.html -d --devtools 6000
start firefox and go to Tools -> Web Developer -> Connect...
Set the port to connect to as 6000
Try evaluating things in the console.

<img width="901" alt="Screenshot 2019-05-01 at 13 02 37" src="https://user-images.githubusercontent.com/26968615/57015054-0aa0ce80-6c13-11e9-8031-9299f2da5dba.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
- [ ] 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. -->

<!-- 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/23296)
<!-- Reviewable:end -->
2019-05-08 21:57:19 -04:00
bors-servo
c3a79e8711
Auto merge of #23318 - asajeffrey:magicleap-debugmozjs, r=jdm
Fix magicleap debugmozjs

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

These changes get magicleap servo to compile with `--debugmozjs`.

---
<!-- 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 #23074 and fix #22069
- [X] These changes do not require tests because we're not building debugmozjs servo for magicleap

<!-- 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/23318)
<!-- Reviewable:end -->
2019-05-08 16:04:26 -04:00
pylbrecht
e5217eed0e Create resource timing entry for sync network fetch 2019-05-08 17:33:39 +02:00
Manish Goregaokar
b4ddf6837f Add constructors for MediaStream 2019-05-08 08:15:01 -07:00
Manish Goregaokar
72701d96c4 Add RTCPeerConnection.ontrack 2019-05-08 08:15:01 -07:00
Manish Goregaokar
318c6857a9 Add RTCTrackEvent 2019-05-08 08:15:01 -07:00
Manish Goregaokar
229ce36431 Add {MediaStream, MediaStreamTrack}.clone() 2019-05-08 08:15:01 -07:00
Manish Goregaokar
477ca175e3 Add MediaStream.addTrack() and MediaStream.removeTrack() 2019-05-08 08:15:01 -07:00
bors-servo
ea71b35220
Auto merge of #23325 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See each individual commit for details.

<!-- 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/23325)
<!-- Reviewable:end -->
2019-05-08 07:46:34 -04:00