summaryrefslogtreecommitdiff
path: root/cli/tests
AgeCommit message (Collapse)Author
2022-03-30feat(lsp): add experimental testing API (#13798)Kitson Kelly
Ref: denoland/vscode_deno#629
2022-03-29feat(cli/fmt): ignore .git folder when formatting files (#14138)TrickyPi
2022-03-29chore(wasm): Don't await on the argument to `handleWasmStreaming` (#14000)Andreu Botella
`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-29feat(lsp): support API for config file (#14139)Kitson Kelly
Closes: #13910
2022-03-28chore: fix compile_windows_ext test (#14142)David Sherret
2022-03-25fix: `Deno.run` - do not modify user provided `cmd` array (#14109)David Sherret
2022-03-25fix(ext/ffi): enforce unstable check on ops (#14115)Luca Casonato
2022-03-24tests(cli): ignore previously unignored test (#14104)Kitson Kelly
Ref: #14103
2022-03-23fix(bench): require --unstable flag in JavaScript (#14091)Bartek Iwańczuk
2022-03-23feat(unstable): add ref/unref to Listener (#13961)Yoshiya Hinosawa
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-23fix(test): don't error on missing op details (#14074)Bartek Iwańczuk
2022-03-22refactor: remove loops in cli/tests/unit/http_test.ts (#14075)Bartek Iwańczuk
2022-03-22chore: replace `.expect("...")` calls with `.unwrap()` in test code (#14081)David Sherret
2022-03-22fix(tests): do not use global env vars in install tests (#14078)David Sherret
2022-03-22fix(ext/fetch): Connect async error stack with user code (#13899)Nayeem Rahman
2022-03-22fix(fetch): Fix uncaught rejection panic with ↵Andreu Botella
`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-21chore: fix development issues on Windows (#14030)David Sherret
2022-03-21feat(lsp): support deno.enablePaths setting (#13978)Kitson Kelly
Ref: denoland/vscode_deno#633
2022-03-20fix: actually don't inherit runtime permissions (#14024)Luca Casonato
2022-03-20fix(ext/console): fix error with a Proxy of a Map (#14032)Jason
2022-03-19feat(ext/net): Deno.upgradeHttp handles unix connections (#13987)Bartek Iwańczuk
2022-03-18fix(cli): improve `deno compile` error messages (#13944)TrickyPi
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-03-18chore(ops): include argument position in serde_v8 errors (#14027)Divy Srivastava
2022-03-16feat(unstable): Add Deno.upgradeHttp API (#13618)Bert Belder
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-16feat(ext/fetch): Allow Response status 101 (#13969)Ryan Dahl
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-15feat(task): add unstable warning to `deno task` (#13966)David Sherret
2022-03-15disable flakes (#13962)Ryan Dahl
2022-03-14feat(ext/web): Add `AbortSignal.timeout()` (#13687)Andreu Botella
2022-03-14fix(core): Don't override structured clone error messages from V8 (#13942)Andreu Botella
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-12feat(task): log task script (#13922)Bartek Iwańczuk
Logs task name and associated script with additional args. This is disabled if "--quiet/-q" flag is present.
2022-03-12test: fix flaky compat tests (#13921)Bartek Iwańczuk
2022-03-11feat: "deno bench" subcommand (#13713)Bartek Iwańczuk
This commit adds "deno bench" subcommand and "Deno.bench()" API that allows to register bench cases. The API is modelled after "Deno.test()" and "deno test" subcommand. Currently the output is rudimentary and bench cases and not subject to "ops" and "resource" sanitizers. Co-authored-by: evan <github@evan.lol>
2022-03-12refactor(core): validate promise id in refOp (#13905)Yoshiya Hinosawa
2022-03-11fix(ext/crypto): handle JWK import with "use" (#13912)Filip Skokan
2022-03-10feat: "deno task" subcommand (#13725)Bartek Iwańczuk
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-03-11fix(compat): cjs/esm interop for dynamic imports (#13792)Bartek Iwańczuk
This commit fixes CJS/ESM interop in compat mode for dynamically imported modules. "ProcState::prepare_module_load" was changed to accept a list of "graph roots" without associated "module kind". That module kind was always hardcoded to "ESM" which is not true for CJS/ESM interop - a CommonJs module might be imported using "import()" function. In such case the root of the graph should have "CommonJs" module kind instead of "ESM".
2022-03-11fix(test): skip typechecking for blocks inside HTML comments (#13889)Geert-Jan Zwiers
2022-03-10fix(info): print deno info paths with unescaped backslashes on windows (#13847)Geert-Jan Zwiers
2022-03-09test: update expected test output for 'deno test' (#13882)Bartek Iwańczuk
2022-03-09chore(ext/crypto): remove old todos (#13887)Divy Srivastava
2022-03-08fix(test): typecheck blocks annotated with long js/ts notations (#13785)Geert-Jan Zwiers
2022-03-07fix(ext/http): drop content-length header on compression (#13866)Satya Rohith
2022-03-04feat(ext/http): auto-compression of fixed response bodies (#13769)Kitson Kelly
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-02feat(ext/crypto): AES-GCM support for 128bit IVs (#13805)Divy Srivastava
2022-03-02fix(repl): fix null eval result (#13804)Yoshiya Hinosawa
Co-authored-by: Satya Rohith <me@satyarohith.com>
2022-03-02feat(cli): update to TypeScript 4.6.2 (#13474)Kitson Kelly
2022-03-01fix(runtime): disable console color for non tty stdout (#13782)Antonio Musolino
2022-02-27feat: Add Deno.TcpConn class, change return type from Deno.connect (#13714)Bartek Iwańczuk
2022-02-27feat(compat): CJS/ESM interoperability (#13553)Bartek Iwańczuk
This commit adds CJS/ESM interoperability when running in --compat mode. Before executing files, they are analyzed and all CommonJS modules are transformed on the fly to a ES modules. This is done by utilizing analyze_cjs() functionality from deno_ast. After discovering exports and reexports, an ES module is rendered and saved in memory for later use. There's a caveat that all files ending with ".js" extension are considered as CommonJS modules (unless there's a related "package.json" with "type": "module").
2022-02-26fix(test): use --no-prompt by default (#13777)Bartek Iwańczuk
This commit changes "deno test" subcommand, to always never prompt for permissions (ie. as if "deno test" was run with "--no-prompt" flag).