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

236 commits

Author SHA1 Message Date
Sean Michael Wykes
91cbd1ab52
fix(ext/crypto) - exportKey JWK for AES/HMAC must use base64url (#13264)
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2022-01-05 16:48:17 +01:00
Andreu Botella
49ccfdd696
refactor(ext/web): Don't rely on NaN comparisons in TextEncoderStream (#13151)
In the `transform` function to `TextEncoderStream`'s internal
`TransformStream`, if `chunk` is the empty string and
`this.#pendingHighSurrogate` is null, then `lastCodeUnit` will be NaN.
As it turns out, this does not cause a bug because the comparison to
check for lone surrogates turns out to be false for NaN, but to rely on
it makes the code brittle.
2022-01-05 16:48:06 +01:00
Sean Michael Wykes
de99d60959
fix(ext/crypto): use forgiving base64 encoding for JWK (#13240)
Implements "forgiving" in JWK decode passing suitable config to base64::decode_config
2022-01-05 16:47:29 +01:00
Andreu Botella
4e1fd69760
fix(doc): Make private types which show up in the rustdocs public (#13230)
`CrossIsolateStore`, `ExtensionBuilder` and `InMemoryChannelResource`
are private types which are referred to by other public APIs, and so
don't show up as links in the rustdoc. This is especially confusing for
`ExtensionBuilder`, since there is nothing in the docs that explains how
to build an extension.

Exposing these three types doesn't add any new capabilities:
`ExtensionBuilder` can be created from `Extension::builder()`,
`SharedArrayBufferStore` and `CompiledWasmModuleStore` already enable
doing anything that `CrossIsolateStore` can do by itself, and
`InMemoryChannelResource` isn't constructable.
2022-01-05 16:46:41 +01:00
Sean Michael Wykes
8b9cf4b857
fix(ext/crypto) include AES-CTR for deriveKey (#13174) 2022-01-05 16:46:04 +01:00
Zach
662432a31d
fix(ext/console): map basic css color keywords to ansi (#13175) 2022-01-05 16:45:40 +01:00
Bartek Iwańczuk
615717bc59
chore: release crates for v1.17.1 (#13179) 2021-12-22 17:38:50 +01:00
Divy Srivastava
04fe513003
refactor(ext/crypto): cleanup decrypt code (#13120) 2021-12-20 16:07:36 +01:00
Leo Kettmeir
ef95d7b1e9
fix(ext/websocket): WebSocketStream don't error with "sending after closing" when closing (#13134) 2021-12-20 11:36:46 +01:00
Divy Srivastava
6de53b631f
refactor: use once_cell instead of lazy_static (#13135) 2021-12-18 16:14:42 -05:00
Luke Channings
e5a8588370
fix(ext/ffi): use c_char instead of i8 for reading strings (#13118) 2021-12-17 10:42:45 +01:00
Bartek Iwańczuk
e0cba6b19b
chore: release crates for v1.17.0 (#13112) 2021-12-16 18:51:23 +01:00
Sean Michael Wykes
60faf7a0ed
feat(ext/crypto): support importing ECSDA and ECDH (#13088)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-12-16 17:28:43 +01:00
Andreu Botella
8efe829fca
feat(fetch): support abort reasons in fetch (#13106) 2021-12-16 12:58:24 +01:00
Andreu Botella
01a6b66034
feat: support abort reasons in Deno APIs and WebSocketStream (#13066) 2021-12-16 12:57:26 +01:00
Luca Casonato
f0e1a6b84c
refactor(ext/crypto): clean up encrypt rust code (#13094) 2021-12-15 22:18:26 +01:00
Luca Casonato
ec7d90666f
fix(ext/crypto): various cleanup in JWK imports (#13092)
This aligns all of the error messages, and makes falsey comparisons
more strict.
2021-12-15 15:46:29 +01:00
Elias Sjögreen
ee49cce726
feat(ext/ffi): implement UnsafePointer and UnsafePointerView (#12828) 2021-12-15 15:41:49 +01:00
Ben Noordhuis
4d176b7b7c
fix(ext/net): make unix and tcp identical on close (#13075)
std/http/server knows how to handle "Listener has been closed"
exceptions but not "operation canceled" errors.

Make "unix" listen sockets throw the same exception as "tcp" listen
sockets when the socket is closed and has a pending accept operation.

There is still a discrepancy when multiple accept requests are posted
but that's probably a less visible issue and something for another day.

Fixes #13033
2021-12-14 23:27:04 +01:00
Luca Casonato
b220a58d1a
feat(ext/crypto): support exporting RSA JWKs (#13081)
This commit adds support for exporting RSA JWKs in the Web Crypto API.
It also does some minor fixes for RSA JWK imports.

Co-authored-by: Sean Michael Wykes <sean.wykes@nascent.com.br>
2021-12-14 17:02:14 +01:00
Luca Casonato
5fe4d5c818
feat(ext/crypto): support importing RSA JWKs (#13071)
This commit adds support for importing RSA JWKs in the Web Crypto API.

Co-authored-by: Sean Michael Wykes <sean.wykes@nascent.com.br>
2021-12-14 12:25:07 +01:00
Luca Casonato
8fdade79da
refactor(ext/crypto): generateKey rust cleanup (#13069) 2021-12-13 18:45:08 +01:00
Yoshiya Hinosawa
308813ae29
fix(ext/web): set location undefined when --location is not specified (#13046) 2021-12-14 00:35:59 +09:00
Luca Casonato
5afb2cca65
refactor(ext/crypto): clean up exportKey rust code (#13052) 2021-12-13 13:22:03 +01:00
Luca Casonato
cbfc8dd59d
refactor(ext/crypto): symmetric jwk decode in rust (#13047) 2021-12-10 22:23:19 +01:00
Andreu Botella
0f0dd5b7ec
feat(ext/web): implement AbortSignal.prototype.throwIfAborted() (#13044)
See whatwg/dom#1034.
2021-12-10 15:12:38 +01:00
Luca Casonato
2926827726
refactor(ext/crypto): clean up rust side importKey (#13036)
This commit cleans up the Rust side of `import_key` by using a bunch of
enums instead of structs with "type" and "data" fields.

This commit does add some duplicated code for the time being, because
a lot of the other ops still need to get the same cleanup treatment.
2021-12-10 15:06:03 +01:00
Kitson Kelly
616ff1d482
chore: place @deprecated tag after documentation block (#13037) 2021-12-10 11:05:50 +11:00
Sean Michael Wykes
0129c74fd9
refactor(ext/crypto): various cleanups in js code (#13027)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2021-12-09 23:32:10 +01:00
Kitson Kelly
345f0fbe5c
feat(cli): update to TypeScript 4.5 (#12410)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-12-10 09:12:21 +11:00
Yacine Hmito
a3d024ac2e
feat(crypto): support importKey in SPKI format (#12921)
This commit adds support for `spki` key format for `crypto.subtle.importKey` for the RSA* algorithms.
2021-12-09 20:32:55 +01:00
Luca Casonato
e70dc53460
refactor(ext/crypto): de-duplicate copyBuffer code (#13030)
This commit de-duplicates the buffer copying code in ext/crypto.

Co-authored-by: yacinehmito <yacinehmito@users.noreply.github.com>
2021-12-09 16:50:04 +01:00
Luca Casonato
fce7e4bd31
refactor(ext/crypto): clean up exportKey logic (#13029)
This commit de-duplicates and cleans up some logic in `exportKey`. There
are no functional changes in this commit (just moves code around).
2021-12-09 16:47:17 +01:00
Luca Casonato
abd25e5982
refactor(ext/crypto): clean up importKey logic (#13028)
This commit de-duplicates and cleans up some logic in `importKey`. There
are no functional changes in this commit (just moves code around).
2021-12-09 16:20:14 +01:00
Yoshiya Hinosawa
69ad5f0e78
feat(ext/timers): add refTimer, unrefTimer API (#12953) 2021-12-09 17:00:55 +09:00
Andreu Botella
318f48f9ad
feat(streams): support abort reasons in streams (#12991) 2021-12-08 23:31:22 +01:00
Andreu Botella
33da15ae5a
refactor(timers): refactor timers to use one async op per timer (#12862)
This change also makes the timers implementation closer to the spec, and
sets up the stage to implement AbortSignal.timeout() (whatwg/dom#1032).

Fixes #8965
Fixes #10974
Fixes #11398
2021-12-07 13:39:58 +01:00
Ryan Dahl
a2f1357fe8
chore: upgrade to rustls 0.20 (#12488)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2021-12-07 00:48:11 +01:00
Divy Srivastava
d31378726e
feat(ext/crypto): implement unwrapKey (#12539) 2021-12-05 04:55:11 +01:00
Bartek Iwańczuk
c59f90d01f
chore: upgrade to Rust 1.57.0 (#12968) 2021-12-04 14:19:06 +01:00
Luca Casonato
72e9720e91
chore: merge v1.16.4 into main (#12984) 2021-12-04 01:26:54 +01:00
Leo Kettmeir
46794d4e43
refactor(ext/fetch): pass opstate in FetchHandler::fetch_file 2021-12-03 14:25:16 +01:00
Ryan Dahl
14f4102ece
refactor: deno_tls does not depend on reqwest (#12961) 2021-12-01 13:20:34 -05:00
Ryan Dahl
084caffc08
refactor: cli doesn't need to depend on deno_tls (#12952)
also move create_http_client to deno_fetch
2021-12-01 11:13:11 -05:00
Ryan Dahl
f3b74350da
refactor: remove deno_fetch::HttpClientDefaults (#12931)
More clean up that should have been in cc83ad3
2021-11-29 10:29:41 -05:00
Michael Busby
6c09e02304
feat(ext/net): enable sending to broadcast address (#12860)
You can now send UDP datagrams to the broadcast address.
2021-11-29 11:14:46 +01:00
Ryan Dahl
cc83ad39ce
refactor: add deno_fetch::Options for init (#12904)
deno_fetch::init has a lot of parameters and generic on two types 
that keeps expanding over time. This refactor adds deno_fetch::Options 
struct for more clearly defining the various parameters.
2021-11-28 13:07:03 -05:00
Divy Srivastava
96d02deed6
feat(ext/crypto): support importing exporting AES JWK keys (#12444) 2021-11-28 16:48:49 +01:00
Andreu Botella
1974eb1021
fix(websocket): bad rid on WebSocketStream abort(#12913)
Fix a bad resource ID error when aborting a WebSocketStream immediately
after its creation.
2021-11-28 12:25:49 +01:00
Yury Selivanov
1d3f734e18
feat(ext/net): ALPN support in Deno.connectTls() (#12786) 2021-11-26 19:59:53 +01:00