David Sherret
49012cbc33
feat: upgrade to swc_ecmascript 0.137.0 ( #14067 )
2022-03-22 09:19:53 -04:00
Andreu Botella
12d28dffc6
fix(fetch): Fix uncaught rejection panic with WebAssembly.instantiateStreaming
( #13925 )
...
When an exception is thrown during the processing of streaming WebAssembly,
`op_wasm_streaming_abort` is called. This op calls into V8, which synchronously
rejects the promise and calls into the promise rejection handler, if applicable.
But calling an op borrows the isolate's `JsRuntimeState` for the duration of the
op, which means it is borrowed when V8 calls into `promise_reject_callback`,
which tries to borrow it again, panicking.
This change changes `op_wasm_streaming_abort` from an op to a binding
(`Deno.core.abortWasmStreaming`). Although that binding must borrow the
`JsRuntimeState` in order to access the `WasmStreamingResource` stored in the
`OpTable`, it also takes ownership of that `WasmStreamingResource` instance,
which means it can drop any borrows of the `JsRuntimeState` before calling into
V8.
2022-03-22 11:33:29 +01:00
Aaron O'Mullan
c5792d6d1d
fix(core): variadic opSync/opAsync ( #14062 )
2022-03-21 18:04:57 +01:00
David Sherret
b410937556
chore: fix development issues on Windows ( #14030 )
2022-03-21 14:30:43 +01:00
Aaron O'Mullan
45ef3c91c2
perf(http): avoid per header alloc ( #14051 )
2022-03-21 12:56:30 +01:00
Kitson Kelly
1414dc503b
feat(lsp): support deno.enablePaths setting ( #13978 )
...
Ref: denoland/vscode_deno#633
2022-03-21 12:33:37 +11:00
Luca Casonato
daa7c6d32a
fix: actually don't inherit runtime permissions ( #14024 )
2022-03-20 22:46:39 +01:00
Aaron O'Mullan
d0a7305676
cleanup(core): drop op_void_async's state arg ( #14045 )
2022-03-20 14:54:38 +01:00
Andreu Botella
593801e265
cleanup(web, fetch): dedupe minesniff / "extract a MIME type" algorithm ( #14044 )
...
Closes #14002
2022-03-20 14:31:12 +01:00
Jason
0bc286ab47
fix(ext/console): fix error with a Proxy of a Map ( #14032 )
2022-03-20 20:21:42 +09:00
Divy Srivastava
5e82bcf0e4
chore(core): update deno_core README ( #14042 )
...
Co-authored-by: Andreu Botella <andreu@andreubotella.com>
2022-03-20 16:08:35 +05:30
Divy Srivastava
7c2722201e
chore(ops): hide implementation details from rustdoc ( #14038 )
...
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2022-03-19 22:13:53 +01:00
Aaron O'Mullan
52459faf0b
fix(ops): throw TypeError on op return failure ( #14033 )
...
Fixes #14028
2022-03-19 15:59:44 +01:00
Bartek Iwańczuk
52a6e9ef4a
feat(ext/net): Deno.upgradeHttp handles unix connections ( #13987 )
2022-03-19 14:21:49 +01:00
Leo Kettmeir
e55dee7fd8
refactor: cleanup assert() & AssertionError definitions ( #13859 )
2022-03-19 13:57:37 +01:00
Aapo Alasuutari
ad8e238348
chore(core,ext): minor JS optimisations ( #13950 )
2022-03-19 18:26:54 +09:00
TrickyPi
b01bc7faff
fix(cli): improve deno compile
error messages ( #13944 )
...
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-03-18 19:18:50 -04:00
Sylvain Cau
c98c976294
fix(cli): add support for DENO_CERT in upgrade command ( #13862 )
2022-03-18 18:40:44 -04:00
Divy Srivastava
2799b0b7b4
chore(ops): include argument position in serde_v8 errors ( #14027 )
2022-03-18 20:53:31 +05:30
David Sherret
9c403f146e
fix(config-file): fix config-file.v1.json schema to allow colons in the task name ( #14013 )
2022-03-17 13:55:24 -04:00
Divy Srivastava
3c47500975
chore: add Rust toolchain components ( #14004 )
2022-03-17 21:54:24 +05:30
Ryan Dahl
fce60f2cc2
v1.20.1
2022-03-16 21:40:31 -04:00
Ryan Dahl
18f998fbee
chore: fix build ( #13997 )
2022-03-16 21:37:02 -04:00
David Sherret
92bb251058
chore: release script should automatically figure out CLI crate dependencies ( #13992 )
2022-03-16 20:33:14 -04:00
Ryan Dahl
f7ab41583e
fix: cargo publish fails without absolute paths ( #13993 )
...
This reverts commit 4e3ed37037
.
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-17 01:25:44 +01:00
Ryan Dahl
418c1eb4b3
v1.20.0
2022-03-16 16:07:35 -04: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
Divy Srivastava
89a41d0a67
chore(cli): Disallow cross compiling for snapshots ( #13976 )
2022-03-16 19:17:15 +05:30
Divy Srivastava
7044bf523b
perf(web): optimize Blob.text and Blob.arrayBuffer ( #13981 )
2022-03-16 19:16:52 +05:30
Ryan Dahl
bfa4ed92bc
chore: uploading WPT shouldn't make CI fail ( #13984 )
2022-03-16 09:35:45 -04: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
Divy Srivastava
426ca98527
chore: add CODEOWNERS for deno_ops
( #13982 )
2022-03-16 16:26:09 +05:30
Aaron O'Mullan
895e474295
cleanup(core): recursive get & ensure helpers ( #13972 )
2022-03-16 09:04:38 +01:00
Divy Srivastava
697b60a335
perf(web): use DOMString for BlobParts ( #13979 )
2022-03-16 12:58:38 +05:30
木杉
395f527238
chore(ext/webidl): change spec link ( #13960 )
2022-03-16 03:17:50 +01:00
David Sherret
748aff1e94
feat(task): add unstable warning to deno task
( #13966 )
2022-03-15 21:24:07 -04:00
Luca Casonato
a7bef54d3f
BREAKING: don't inherit permissions by default ( #13668 )
...
Previously specifying permissions: {} was the same as specifying
permissions: "inherit". Now it will be the same as permissions: "none".
Not specifying any permissions (permissions: undefined) still means
permissions: "inherit".
2022-03-16 01:43:14 +01:00
Aaron O'Mullan
bd481bf095
feat(ops): optional OpState ( #13954 )
2022-03-16 00:33:46 +01:00
Andreu Botella
672f66dde1
perf(web): Optimize TextDecoder
by adding a new U16String
type ( #13923 )
2022-03-16 00:22:00 +01:00
Aaron O'Mullan
bb53135ed8
cleanup(core): OpPair => OpDecl ( #13952 )
2022-03-15 23:43:17 +01:00
David Sherret
5d60ee7f12
chore(test_util): use pretty_assertions::assert_eq when not pattern matching ( #13965 )
2022-03-15 18:15:56 -04:00
Aaron O'Mullan
60466de5d5
cleanup(core): remove void_op_a?sync ( #13953 )
...
In favour of `op_void_sync` & `op_void_async`
2022-03-15 22:58:03 +01:00
Aaron O'Mullan
07d8431f10
fix(core): nuke Deno.core.ops pre-snapshot ( #13970 )
...
To avoid OOB & other ExternalReference snapshot serialization issues
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2022-03-15 22:50:17 +01:00
Ryan Dahl
163e1d6192
disable flakes ( #13962 )
2022-03-15 11:19:59 -04:00
wspsxing
fe606c52e1
fix: upgrade reqwest to 0.11.10 ( #13951 )
2022-03-14 23:12:59 -04:00
Aaron O'Mullan
88d0f01948
feat(ops): custom arity ( #13949 )
...
Also cleanup & drop ignored wildcard op-args
2022-03-14 23:38:53 +01:00
Andreu Botella
9f494dc405
feat(ext/web): Add AbortSignal.timeout()
( #13687 )
2022-03-14 20:19:22 +01:00
Leo Kettmeir
5eb0e4c2df
fix: shell completion hints ( #13876 )
2022-03-14 19:41:35 +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
Divy Srivastava
b4e42953e1
feat(core): codegen ops ( #13861 )
...
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2022-03-14 18:44:15 +01:00