1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-28 01:59:06 -05:00
Commit graph

513 commits

Author SHA1 Message Date
Divy Srivastava
57a8fc37fc
perf(http): optimize ReadableStreams backed by a resource (#14284) 2022-04-20 18:16:44 +05:30
David Sherret
a64e63c361
perf: move Deno.writeTextFile and like functions to Rust (#14221)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2022-04-18 18:00:14 -04:00
EduM22
181e378032
fix(ext/crypto): check extractable in exportKey (#14222) 2022-04-07 18:28:56 +05:30
Yongwook Choi
0df1854249
feat(test): Add "name", "origin" and "parent" to "Deno.TestContext" (#14007)
This commit adds following fields to "Deno.TestContext" interface:
- name
- origin
- parent

These are prerequisites for supporting snapshot functionality in
"std/testing".
2022-04-06 16:51:38 +02:00
David Sherret
1d24b2cf63
chore: disable wgpu tests in WSL (#14157) 2022-03-30 20:56:28 -04:00
Andreu Botella
d983b577bc
chore(wasm): Don't await on the argument to handleWasmStreaming (#14000)
`handleWasmStreaming` is the function that provides the binding with
the `fetch` API needed for `WebAssembly.instantiateStreaming()` and
`WebAssembly.compileStreaming()`. When I implemented it in #11200, I
thought V8 was calling these functions with the argument of the
`WebAssembly` streaming functions, without doing any resolving, and so
`handleWasmStreaming` awaits for the parameter to resolve. However,
as discovered in
https://github.com/denoland/deno/issues/13917#issuecomment-1065805565,
V8 does in fact resolve the parameter if it's a promise (and handles
rejections arising from that).

This change removes the `async` IIFE inside `handleWasmStreaming`,
letting initial errors be handled synchronously (which will however
not throw synchronously from the `WebAssembly` namespace functions).
Awaiting is still necessary for reading the bytes of the response,
though, and so there is an `async` IIFE for that.
2022-03-29 14:44:33 +02:00
David Sherret
4691bde429
fix: Deno.run - do not modify user provided cmd array (#14109) 2022-03-25 08:17:13 -04:00
Luca Casonato
25b73a366f
fix(ext/ffi): enforce unstable check on ops (#14115) 2022-03-25 12:29:54 +01:00
Yoshiya Hinosawa
7feb25d448
feat(unstable): add ref/unref to Listener (#13961)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-23 12:04:20 +09:00
Bartek Iwańczuk
85c60d23f2
refactor: remove loops in cli/tests/unit/http_test.ts (#14075) 2022-03-22 23:08:29 +01:00
Luca Casonato
daa7c6d32a
fix: actually don't inherit runtime permissions (#14024) 2022-03-20 22:46:39 +01:00
Jason
0bc286ab47
fix(ext/console): fix error with a Proxy of a Map (#14032) 2022-03-20 20:21:42 +09:00
Bartek Iwańczuk
52a6e9ef4a
feat(ext/net): Deno.upgradeHttp handles unix connections (#13987) 2022-03-19 14:21:49 +01:00
Bert Belder
c5270abad7
feat(unstable): Add Deno.upgradeHttp API (#13618)
This commit adds "Deno.upgradeHttp" API, which
allows to "hijack" connection and switch protocols, to eg.
implement WebSocket required for Node compat.

Co-authored-by: crowlkats <crowlkats@toaxl.com>
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-16 14:54:18 +01:00
Ryan Dahl
45b3aa22c0
feat(ext/fetch): Allow Response status 101 (#13969)
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-16 14:30:43 +01:00
Andreu Botella
9f494dc405
feat(ext/web): Add AbortSignal.timeout() (#13687) 2022-03-14 20:19:22 +01:00
Andreu Botella
c6bf07ec6d
fix(core): Don't override structured clone error messages from V8 (#13942)
In the implementation of structured serialization in
`Deno.core.serialize`, whenever there is a serialization error, an
exception will be thrown with the message "Failed to serialize
response", even though V8 provides a message to use in such cases.
This change instead throws an exception with the V8-provided message,
if there is one.
2022-03-14 19:35:15 +01:00
Yoshiya Hinosawa
b198bfd795
refactor(core): validate promise id in refOp (#13905) 2022-03-12 01:18:49 +09:00
Filip Skokan
f9b4d262b3
fix(ext/crypto): handle JWK import with "use" (#13912) 2022-03-11 20:26:16 +05:30
Divy Srivastava
a5957f46ee
chore(ext/crypto): remove old todos (#13887) 2022-03-09 18:13:11 +05:30
Satya Rohith
670aef5c1a
fix(ext/http): drop content-length header on compression (#13866) 2022-03-07 22:43:15 +05:30
Kitson Kelly
d1db500cda
feat(ext/http): auto-compression of fixed response bodies (#13769)
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
Co-authored-by: Satya Rohith <me@satyarohith.com>
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2022-03-04 16:04:39 +11:00
Divy Srivastava
8b2989c417
feat(ext/crypto): AES-GCM support for 128bit IVs (#13805) 2022-03-02 10:56:10 +05:30
Kitson Kelly
7fc5bfe51b
feat(cli): update to TypeScript 4.6.2 (#13474) 2022-03-02 07:44:43 +11:00
Antonio Musolino
6a030a5396
fix(runtime): disable console color for non tty stdout (#13782) 2022-03-01 12:37:50 +09:00
Bartek Iwańczuk
7e3d9084b6
feat: Add Deno.TcpConn class, change return type from Deno.connect (#13714) 2022-02-27 15:18:30 +01:00
Yoshiya Hinosawa
3e8180c793
feat(ext/net): support cert, key options in listenTls (#13740) 2022-02-24 13:16:56 +09:00
Luca Casonato
53088e16de
feat(test): improved op sanitizer errors + traces (#13676)
This commit improves the error messages for the `deno test` async op
sanitizer. It does this in two ways:
- it uses handwritten error messages for each op that could be leaking
- it includes traces showing where each op was started

This "async op tracing" functionality is a new feature in deno_core.
It likely has a significant performance impact, which is why it is only
enabled in tests.
2022-02-16 19:53:17 +01:00
Luca Casonato
be9c2fe267
tests: deflake a bunch of net related tests (#13685) 2022-02-16 16:51:32 +01:00
Luca Casonato
7a3ab6b164
tests: unflake httpServerIncompleteMessage (#13682) 2022-02-16 14:27:38 +01:00
Divy Srivastava
77a9683425
fix(ext/crypto): optional additionalData in encrypt/decrypt (#13669) 2022-02-16 16:27:14 +05:30
ylxdzsw
074f53234a
feat(ext/http): add support for unix domain sockets (#13628) 2022-02-16 00:16:12 +01:00
Luca Casonato
bdc8006a36
feat(runtime): web streams in fs & net APIs (#13615)
This commit adds `readable` and `writable` properties to `Deno.File` and
`Deno.Conn`. This makes it very simple to use files and network sockets
with fetch or the native HTTP server.
2022-02-15 13:35:22 +01:00
Divy Srivastava
e218d567d5
fix(ext/crypto): support EC p256 private key material in exportKey (#13547)
Co-authored-by: Luca Casonato <hello@lcas.dev>
2022-02-08 18:48:28 +05:30
Zach
a7850d7fe6
fix(ext/console): fix uncaught TypeError in css styling (#13567)
When using css coloring in the console, non-color values should be ignored rather than throw exceptions.
Fixes #13469
2022-02-06 19:00:06 +09:00
Leo Kettmeir
2f438f4106
feat(ext/console): better circular information in object inspection (#13555) 2022-02-04 21:10:47 +01:00
Yosi Pramajaya
3e566bb457
feat(ext/net): Add Conn.setNoDelay and Conn.setKeepAlive (#13103) 2022-01-31 16:36:54 +01:00
Yoshiya Hinosawa
49a0db0d2a
feat(unstable): add Deno.getUid (#13496) 2022-01-31 14:44:19 +09:00
Divy Srivastava
efa02ffa2a
fix(ext/crypto): enforce 128bits tagLength for AES-GCM decryption (#13536) 2022-01-30 18:42:29 +05:30
Aaron O'Mullan
bd5d445da9
chore: re-enable wgpu_sync (#13453) 2022-01-24 23:47:05 +01:00
Yoshiya Hinosawa
d08da94233
feat(unstable): add Deno.networkInterfaces (#13475) 2022-01-24 18:39:28 +09:00
Aaron O'Mullan
3ab68bd0a2
revert(#13402): experiment: wgpu sync (#13439) 2022-01-20 15:23:53 +01:00
Yoshiya Hinosawa
4c1053ad33
chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
Yoshiya Hinosawa
ee51c3ddd9
fix(cli/dts): add NotSupported error type (#13432) 2022-01-20 12:29:37 +09:00
Aaron O'Mullan
2ab21dafa7
experiment: wgpu sync (#13402) 2022-01-19 13:38:51 +01:00
Sean Michael Wykes
9139985180
feat(ext/crypto): implement pkcs8/JWK for P-384 curves (#13154) 2022-01-19 12:14:35 +05:30
Sean Michael Wykes
77e58fe7f9
feat(ext/crypto): implement pkcs8/spki/jwk exportKey for ECDSA and ECDH (#13104) 2022-01-19 09:08:35 +05:30
Andreu Botella
76c7b9abf9
fix(tsc): Add typings for Intl.ListFormat (#13301)
V8 has supported `Intl.ListFormat` since version 7.2, but TypeScript doesn't
have typings for it yet. This PR manually adds those typings, copying them from
microsoft/TypeScript#47254.
2022-01-17 06:50:10 +01:00
Divy Srivastava
919ded1a0b
feat(ext/crypto): implement AES-GCM decryption (#13319) 2022-01-14 14:18:53 +05:30
Sean Michael Wykes
91f6c5fc7e
feat(ext/crypto): implement AES-KW for wrapKey/unwrapKey (#13286) 2022-01-11 10:14:47 +05:30