1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-28 16:20:57 -05:00
Commit graph

673 commits

Author SHA1 Message Date
李瑞丰
46245b830a
fix(ext/webidl): correctly apply [SymbolToStringTag] to interfaces (#11851)
Co-authored-by: Luca Casonato <hello@lcas.dev>
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2021-09-25 02:07:22 +09:00
Kitson Kelly
87e78802b0
docs(tools): updates to cutting a release (#12177) 2021-09-23 09:12:56 +10:00
Kitson Kelly
f27902e749
1.14.1 2021-09-22 08:44:46 +10:00
Kitson Kelly
2a56cd545c
chore: bump crate versions for 1.14.1 (#12172) 2021-09-22 06:53:47 +10:00
David Sherret
4283e2907e
chore(scripts): improvements to the release scripts based on the 1.14 release (#12079) 2021-09-15 09:16:06 -04:00
David Sherret
f92cc66f0d
1.14.0 (#12074) 2021-09-14 16:46:36 -04:00
Divy Srivastava
c41460ecc4
feat(ext/crypto): import RSA pkcs#8 keys (#11891) 2021-09-14 15:21:20 +02:00
Luca Casonato
d0b5ff6db9
feat(ext/crypto): generate ECDH keys (#11870)
Add support for ECDH algorithm in SubtleCrypto#generateKey.
2021-09-13 11:35:49 +02:00
Feng Yu
464dcc1388
fix: FileReader onevent attributes don't conform to spec (#11908) 2021-09-12 09:35:05 -04:00
Divy Srivastava
0cb22d4cba
feat(ext/crypto): implement HKDF operations (#11865)
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-09-11 16:54:03 -04:00
Andreu Botella
1563088f06
fix: a Request whose URL is a revoked blob URL should still fetch (#11947)
In the spec, a URL record has an associated "blob URL entry", which for
`blob:` URLs is populated during parsing to contain a reference to the
`Blob` object that backs that object URL. It is this blob URL entry that
the `fetch` API uses to resolve an object URL.

Therefore, since the `Request` constructor parses URL inputs, it will
have an associated blob URL entry which will be used when fetching, even
if the object URL has been revoked since the construction of the
`Request` object. (The `Request` constructor takes the URL as a string
and parses it, so the object URL must be live at the time it is called.)

This PR adds a new `blobFromObjectUrl` JS function (backed by a new
`op_blob_from_object_url` op) that, if the URL is a valid object URL,
returns a new `Blob` object whose parts are references to the same Rust
`BlobPart`s used by the original `Blob` object. It uses this function to
add a new `blobUrlEntry` field to inner requests, which will be `null`
or such a `Blob`, and then uses `Blob.prototype.stream()` as the
response's body. As a result of this, the `blob:` URL resolution from
`op_fetch` is now useless, and has been removed.
2021-09-08 11:29:21 +02:00
Luca Casonato
e07f28d301
feat: add URLPattern API (#11941)
This adds support for the URLPattern  API.

The API is added in --unstable only, as it has not yet shipped in any
browser. It is targeted for shipping in Chrome 95.

Spec: https://wicg.github.io/urlpattern/

Co-authored-by: crowlKats < crowlkats@toaxl.com >
2021-09-08 11:14:29 +02:00
Luca Casonato
066f75ac07
chore: update wpt (#11950) 2021-09-07 23:50:22 +02:00
Ryan Dahl
c132c8690b
BREAKING(unstable): Remove Deno.Signals enum, Deno.signals.* (#11909) 2021-09-06 10:05:33 -04:00
Luca Casonato
cee5be4539
feat(ext/crypto): AES key generation (#11869)
Support AES-CTR, AES-CBC, AES-GCM, and AES-KW in
SubtleCrypto#generateKey.
2021-08-31 11:25:44 +02:00
David Sherret
ca75752e5a
chore: release scripts should update Cargo.lock file when bumping versions (#11879) 2021-08-30 13:35:48 -04:00
Divy Srivastava
1f57cd2c0f
feat(ext/crypto): support JWK import for HMAC (#11716) 2021-08-27 13:19:41 +02:00
Divy Srivastava
23a9bc099d
feat(ext/crypto): implement importKey and deriveBits for PBKDF2 (#11642) 2021-08-26 12:48:07 +02:00
David Sherret
dce70d32a4
chore: add scripts for helping with a release (#11832) 2021-08-25 09:02:22 -04:00
Luca Casonato
5d814a4c24
feat: ArrayBuffer in structured clone transfer (#11840) 2021-08-25 13:48:53 +02:00
Divy Srivastava
85a56e7144
feat(ext/crypto): implement encrypt, decrypt & generateKey for RSA-OAEP (#11654) 2021-08-24 21:59:02 +02:00
Luca Casonato
50f69a6996
fix: FileReader.readAsText compat (#11814)
Fixes a WPT test.
2021-08-24 13:13:22 +02:00
David Sherret
6db8cbb650
chore: release crates for 1.13.2 (#11820) 2021-08-23 15:48:08 -04:00
Yusuke Tanaka
4ae57d185e
chore: upgrade dlint and run prefer-primordials rule (#11777) 2021-08-20 01:14:20 +02:00
Luca Casonato
a66218d457
fix(runtime): event loop panics in classic workers (#11756)
Classic worker scripts are now executed in the context of a Tokio
runtime. This does mean we can not spawn more tokio runtimes in
"op_worker_sync_fetch". We instead spawn a new thread there, that can
create a new Tokio runtime that we can use to block the worker thread.
2021-08-18 15:19:22 +02:00
David Sherret
5d24ddf9b2
chore: sort items in Releases.md for 1.13.1 release (#11734) 2021-08-17 12:03:33 +02:00
David Sherret
a66a7bebbe
chore: release crates for 1.13.1 (#11729) 2021-08-16 16:49:14 -04:00
Divy Srivastava
eea6f578fc
fix(ext/crypto): enable non-extractable keys (#11705) 2021-08-16 18:11:36 +02:00
Andreu Botella
ddbb7b83f2
feat(runtime): support classic workers for internal testing (#11338)
This commit implements classic workers, but only when the `--enable-testing-features-do-not-use` flag is provided. This change is not user facing. Classic workers are used extensively in WPT tests. The classic workers do not support loading from disk, and do not support TypeScript.

Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-08-16 14:29:54 +02:00
Luca Casonato
47b7cd5a7e
chore: roll wpt (#11692)
This PR rolls WPT to 7eb7372a61
2021-08-14 13:27:09 +02:00
Divy Srivastava
71f79097c6
fix(ext/crypto): importKey() SecurityError on non-extractable keys (#11662)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-08-13 23:20:44 +02:00
Luca Casonato
eae9d5b647
fix: Blob#slice arguments should be optional (#11665) 2021-08-12 19:16:23 +02:00
Divy Srivastava
b1799e6771
chore(tools): use local std in wpt utils (#11644) 2021-08-12 10:09:27 +02:00
David Sherret
15a763152f
chore: move test files to testdata directory (#11601) 2021-08-11 10:20:47 -04:00
Ryan Dahl
a0285e2eb8
Rename extensions/ directory to ext/ (#11643) 2021-08-11 12:27:05 +02:00
Bartek Iwańczuk
548e466112
chore: release crates (#11628) 2021-08-10 14:19:42 +02:00
Leo K
2db381eba9
feat: add experimental WebSocketStream API (#10365)
This commit adds the experimental WebSocketStream API when
using the --unstable flag.

The explainer for the API can be found here:
https://github.com/ricea/websocketstream-explainer
2021-08-10 00:28:17 +02:00
Luca Casonato
4d4ce4c4d8
chore: update wpt (#11621) 2021-08-09 18:49:31 +02:00
Divy Srivastava
87de8e82a1
feat(extensions/crypto): implement verify() for HMAC (#11387) 2021-08-04 21:49:27 +02:00
Divy Srivastava
86f89f9222
feat(extensions/crypto): implement importKey and exportKey for raw HMAC keys (#11367)
This commit introduces "SubtleCrypto.importKey()" and 
"SubtleCrypto.exportKey()" APIs.
2021-08-03 21:24:02 +02:00
Bartek Iwańczuk
505d253436
Revert "fix(extensions/fetch): Add Origin header to outgoing requests for fetch (#11557)" (#11565)
This reverts commit f87aa44d94.
2021-08-02 15:56:52 +02:00
Feng Yu
f87aa44d94
fix(extensions/fetch): Add Origin header to outgoing requests for fetch (#11557) 2021-08-02 02:19:21 -07:00
Bartek Iwańczuk
a05bb3924a
chore: update cut_a_release.md (#11522) 2021-07-27 00:26:39 +02:00
Luca Casonato
08d2c7250b
fix: Big{U|}Int64Array in crypto.getRandomValues (#11447)
Relevant spec change: https://github.com/w3c/webcrypto/pull/266
2021-07-19 15:35:47 +02:00
Luca Casonato
7b82ef9ded
chore: update wpt (#11446) 2021-07-19 13:46:02 +02:00
Andreu Botella
5b771e7e83
fix(extensions/web): aborting a FileReader should not affect later reads (#11381)
Currently, calling the `abort()` method on a `FileReader` object aborts
any current read operation, but it also prevents any read operation
started at some later point from starting. The File API instead
specifies that calling `abort()` should reset the `FileReader`'s state
and result, as well as removing any queued tasks from the current
operation that haven't yet run.
2021-07-14 12:08:42 +02:00
Bartek Iwańczuk
642dd3d3c4
chore: release crates (#11378) 2021-07-13 02:16:49 +02:00
Andreu Botella
2c7c130f0a
chore(wpt): Mark a WPT test as failed if it exits before completion (#11371)
Currently, a WPT test is considered failed if its status code is
anything other than 0, regardless of whether the test suite completed
running or not, and any subtests that haven't finished running are not
considered to be failures.

But a test can exit with a zero status code before it has completed
running, if the event loop has run out of tasks because of a bug in one
of the ops, leading to false positives. This change fixes that.
2021-07-12 21:15:07 +02:00
Divy Srivastava
00484d24ba
feat(extensions/crypto): implement verify() for RSA (#11312) 2021-07-12 14:45:36 +02:00
Divy Srivastava
b3f22d3fdd
fix(extensiosn/web): AddEventListenerOptions.signal shouldn't be nullable (#11348) 2021-07-10 07:13:58 -07:00
Divy Srivastava
391bf17479
chore(extensions/crypto): enable WPT stringification test (#11336) 2021-07-09 17:04:50 +02:00
Luca Casonato
48e7c871d9
Revert "tests: parallelize test runs in wpt" (#11321)
This reverts commit 7edb1d713c.
2021-07-07 20:19:47 +02:00
Andreu Botella
c972fe6cec
tests: escape lone surrogates in wptreport (#11310) 2021-07-07 19:56:47 +02:00
Luca Casonato
7edb1d713c
tests: parallelize test runs in wpt (#11306) 2021-07-06 22:42:30 +02:00
Divy Srivastava
570309d795
feat(crypto): implement generateKey() and sign() (#9614)
Co-authored-by: Luca Casonato <hello@lcas.dev>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-07-06 14:16:04 +02:00
Jimmy Wärting
2c0b0e45b7
refactor: asynchronous blob backing store (#10969)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-07-05 15:34:37 +02:00
Leo K
220104f577
fix: spec conformance for performance API (#10887) 2021-07-05 13:17:11 +02:00
Luca Casonato
3c0267dbb5
fix: align DOMException to webidl spec (#11259) 2021-07-04 16:08:53 +02:00
Andreu Botella
ffa75be480
feat: enable WebAssembly.instantiateStreaming and wasm async compilation (#11200)
The WebAssembly streaming APIs used to be enabled, but used to take
buffer sources as their first argument (see #6154 and #7259). This
change re-enables them, requiring a Promise<Response> instead, as well as
enabling asynchronous compilation of WebAssembly modules.
2021-07-03 23:33:36 +02:00
Luca Casonato
14104c4e5b chore: update wpt submodule 2021-07-03 22:20:28 +02:00
Luca Casonato
bf39b883d6
refactor: introduce primordials for ext/web (#11228) 2021-07-03 21:32:28 +02:00
Bartek Iwańczuk
bce662d5bb
chore: upgrade rusty_v8 and serde_v8 (#11216) 2021-07-02 09:32:48 +02:00
Luca Casonato
32b9aa5720
build: switch to wpt.fyi prod (#11201) 2021-07-01 15:44:44 +02:00
Andreu Botella
015f252066
fix(fetch): encode and decode headers as byte strings (#11070) 2021-06-26 17:34:24 +02:00
Bartek Iwańczuk
59696df9e0
chore: use local deno_std in tools scripts (#11122) 2021-06-26 02:02:31 +02:00
Andreu Botella
be5d2983b4
chore(wpt): clean up temporary files created by the WPT test runner (#11108)
Fixes #11107.
2021-06-24 15:07:36 -04:00
Andreu Botella
40310eaebf
fix(url): use USVStrings in URLSearchParams constructor (#11101) 2021-06-24 11:38:37 +02:00
Bert Belder
5a250b9e55
tests: fix bug in WPT test harness (#10920) 2021-06-23 19:36:04 +00:00
Andreu Botella
edab21ebab
fix(fetch): proxy body for requests created from other requests (#11093)
Additionally, if the existing `Request`'s body is disturbed, the Request creation
should fail.

This change also updates the step numbers in the Request constructor to match
whatwg/fetch#1249.
2021-06-23 16:00:23 +02:00
William Perron
9c0b41e24b
chore: update release instructions (#11079)
Add instructions for the release process of `deno_std` and `deno_docker`
repos
2021-06-22 10:39:44 -04:00
Luca Casonato
f9ff981daf
feat: MessageChannel and MessagePort (#11051)
This commit introduces support for MessageChannel and MessagePort.
MessagePorts can be transfered across other MessagePorts.
2021-06-21 19:53:52 +02:00
Bartek Iwańczuk
2c0e482221
v1.11.2 2021-06-21 17:47:25 +02:00
Leo K
afe89e8850
fix(websocket): spec conformance & WPT (#11010) 2021-06-21 12:15:08 +02:00
Yasser A.Idrissi
0cbaeca026
fix: fetch with method HEAD should not have body (#11003) 2021-06-18 11:14:14 +02:00
Luca Casonato
2a66d5de01
fix: align URL / URLSearchParams to spec (#11005) 2021-06-16 18:40:35 +02:00
Luca Casonato
77ab2bee9f
fix: some more console spec compliance (#10983) 2021-06-16 15:48:39 +02:00
Luca Casonato
ac431ca076
fix: closing / aborting WritableStream is racy (#10982) 2021-06-16 02:46:08 +02:00
Luca Casonato
b6fd39377e
fix: pass some more WHATWG streams WPT (#10970) 2021-06-15 17:48:25 +02:00
Luca Casonato
4cbc4a7eb3
fix: make WHATWG streams more compliant (#10967) 2021-06-15 13:46:02 +02:00
Luca Casonato
f48d66b2b0
tests: fix wpt epoch ci job (#10960) 2021-06-14 20:57:02 +02:00
Luca Casonato
d837445e44
build: add wpt epoch/daily run (#10937)
This adds a daily scheduled CI pipeline that runs WPT tests against
the most recent epochs/daily every night. Results are uploaded to
wpt.fyi.

WPTs are run on all supported platforms, on both stable and canary.
2021-06-14 13:48:57 +02:00
Luca Casonato
614dc1bce7
fix: propagate top level thrown errors in WPT (#10932)
Previously top level errors were swallowed.
2021-06-11 21:31:53 +02:00
Bartek Iwańczuk
6091ea098a
refactor: merge deno_file crate into deno_web (#10914)
This refactor makes it so there's one less crate to publish on each release.
2021-06-10 15:26:10 +02:00
Bartek Iwańczuk
e75ffab0c8
chore: move serde_v8 to separate repo (#10909)
Now available at https://github.com/denoland/serde_v8
2021-06-09 20:37:43 +02:00
Bartek Iwańczuk
b98293e21c
v1.11.0 2021-06-08 21:38:36 +02:00
Bartek Iwańczuk
3a96fe55a0
chore: release crates (#10896) 2021-06-08 20:34:18 +02:00
David Sherret
6ee983b127
chore(tools): Fix stdout buffer of launched process getting full causing tools/lint.js to hang on Windows (#10888)
Also fix Windows only clippy issues.
2021-06-07 22:29:47 -04:00
Luca Casonato
8e96961f0e
chore: update wpt (#10884)
This commit updates wpt. It tries to get us ever closer to eventually
stop floating patches, and being able to use wpt upstream.
2021-06-07 19:16:27 +02:00
Luca Casonato
7b9c59fd71
tests: upload WPT reports to wpt.fyi (#10883) 2021-06-07 17:41:33 +02:00
Luca Casonato
3a4a47799f
refactor: clean up webidl protype configuration (#10871) 2021-06-07 10:04:10 +02:00
Luca Casonato
a66f327250
tests: run wpt scripts with Deno.core.evalContext (#10852)
This means wpts are now run in script context, and there are better
stack traces.
2021-06-06 18:32:06 +02:00
Luca Casonato
f1deed41e7
tests: generate and upload wptreport.json (#10869)
These reports can be consumed by tools like `wptreport` or
https://wpt.fyi. The old style report could be removed in a future PR
when wpt.deno.land is updated.
2021-06-06 18:08:50 +02:00
Luca Casonato
1fb2e23a67
feat(fetch): implement abort (#10863)
This commit introduces fetch aborting via an AbortSignal.
2021-06-06 15:37:17 +02:00
Casper Beyer
3f9187c366
feat(extensions/crypto): implement subtle.digest (#10796)
Co-authored-by: Yacine Hmito yacinehmito@users.noreply.github.com
2021-06-06 12:57:10 +02:00
Andreu Botella
62bf403157
feat(web): Implement TextDecoderStream and TextEncoderStream (#10842) 2021-06-06 03:23:16 +02:00
Luca Casonato
c73ef5fa14
refactor(web): use encoding_rs for text encoding (#10844)
This commit removes all JS based text encoding / text decoding. Instead
encoding now happens in Rust via encoding_rs (already in tree). This
implementation retains stream support, but adds the last missing
encodings. We are incredibly close to 100% WPT on text encoding now.

This should reduce our baseline heap by quite a bit.
2021-06-05 23:10:07 +02:00
Leo K
bb0c90cadb
fix(crypto): change Crypto to interface (#10853)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-06-05 22:56:59 +02:00
Luca Casonato
368c784d7f
tests: disable failing stream idl test (#10860)
Didn't catch failure in original PR due to #10856 and merge ordering.
2021-06-05 21:59:03 +02:00
Leo K
b748415baf
fix(streams): expose ReadableByteStreamController & TransformStreamDefaultController (#10855) 2021-06-05 19:32:05 +02:00
Luca Casonato
706b75d742
tests: fix wpt runner expected test file failures (#10856) 2021-06-05 19:29:41 +02:00