summaryrefslogtreecommitdiff
path: root/cli/tests/unit
AgeCommit message (Collapse)Author
2021-04-30Rename crate_ops to extensions (#10431)Andy Hayden
2021-04-29fix(op_crate/fetch): infinite loop on fill headers (#10406)William Perron
Fixes a pesky bug in the fetch implementation where if the init part is specified in `fetch` instead of the `Request` constructor, the fillHeaders function receives two references to the same object, causing it to append to the same list being iterated over.
2021-04-28feat(test): run test modules in parallel (#9815)Casper Beyer
This commit adds support for running test in parallel. Entire test runner functionality has been rewritten from JavaScript to Rust and a set of ops was added to support reporting in Rust. A new "--jobs" flag was added to "deno test" that allows to configure how many threads will be used. When given no value it defaults to 2.
2021-04-28core: introduce extensions (#9800)Aaron O'Mullan
Extensions allow declarative extensions to "JsRuntime" (ops, state, JS or middleware). This allows for: - `op_crates` to be plug-and-play & self-contained, reducing complexity leaked to consumers - op middleware (like metrics_op) to be opt-in and for new middleware (unstable, tracing,...) - `MainWorker` and `WebWorker` to be composable, allowing users to extend workers with their ops whilst benefiting from the other infrastructure (inspector, etc...) In short extensions improve deno's modularity, reducing complexity and leaky abstractions for embedders and the internal codebase.
2021-04-27test(cli): run unit tests using Deno.test (#10330)Casper Beyer
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-04-27fix(console): circular customInspect (#10338)Aaron O'Mullan
2021-04-26fix(tls): throw meaningful error when hostname is invalid (#10387)Bert Belder
`InvalidDNSNameError` is thrown when a string is not a valid hostname, e.g. it contains invalid characters, or starts with a numeric digit. It does not involve a (failed) DNS lookup.
2021-04-23fix(op_crates/fetch): Prevent throwing when inspecting a request (#10335)Jesse Jackson
Fixes: #10334
2021-04-23refactor(core): rename send() to opcall() (#10307)Aaron O'Mullan
I think it's a better fit since recv() was killed and opcall <> syscall (send/recv was too reminiscent of request/response and custom payloads)
2021-04-23fix(runtime/js/http): cancel body on response failure (#10225)Nayeem Rahman
2021-04-21fix(fetch): Response inspect regression (#10295)Aaron O'Mullan
2021-04-20chore: align fetch to spec (#10203)Luca Casonato
This commit aligns the `fetch` API and the `Request` / `Response` classes belonging to it to the spec. This commit enables all the relevant `fetch` WPT tests. Spec compliance is now at around 90%. Performance is essentially identical now (within 1% of 1.9.0).
2021-04-20revert: Conn type changes in #10012 and #10061 (#10255)Kitson Kelly
Fixes #10200 (again) This reverts commit 9c7c9a35c12625bd4793c21539391d6b08d17e73 and a8057e3e06962a8d7c6330a085704bb4493eed04.
2021-04-19fix(rt/http): correct URL in Request (#10256)Luca Casonato
This commit fixes the URL returned from `request.url` in the HTTP server to be fully qualified. This previously existed, but was removed and accidentially not readded during optimizations of the HTTP ops. Returning a non fully qualified URL from `Request#url` is not spec compliant.
2021-04-19chore: align `Headers` to spec (#10199)Luca Casonato
This commit aligns `Headers` to spec. It also removes the now unused 03_dom_iterable.js file. We now pass all relevant `Headers` WPT. We do not implement any sort of header filtering, as we are a server side runtime. This is likely not the most efficient implementation of `Headers` yet. It is however spec compliant. Once all the APIs in the `HTTP` hot loop are correct we can start optimizing them. It is likely that this commit reduces bench throughput temporarily.
2021-04-15fix(#10182): hang during http server response (#10197)Ryan Dahl
2021-04-14chore: align FormData to spec (#10169)Luca Casonato
This PR aligns `FormData` to spec. All WPT tests are passing.
2021-04-13feat(cli/dts): stricter typings for Listener & Conn (#10012)crowlKats
2021-04-12refactor(deno): remove concept of bin & json ops (#10145)Aaron O'Mullan
2021-04-12fix(runtime/js/http): Correctly parse user response headers (#10076)Nayeem Rahman
2021-04-12feat(runtime): add truncate and truncateSync methods to Deno.File (#10130)Casper Beyer
2021-04-12feat(runtime): add stat and statSync methods to Deno.File (#10107)Casper Beyer
2021-04-12fix(runtime/js/timers): Use (0, eval) instead of eval() (#10103)Nayeem Rahman
2021-04-11fix(op_crates/console): console.table value misalignment with varying keys ↵Liam Murphy
(#10127)
2021-04-09chore: upgrade dependencies (#10094)Bartek Iwańczuk
This commit upgrades: - swc_ecmascript - swc_bundler - deno_doc - deno_lint - dprint-plugin-typescript
2021-04-09fix: async op error stacktraces (#10080)Nayeem Rahman
Co-authored-by: Aaron O'Mullan <aaron.omullan@gmail.com>
2021-04-09API change: Deno.startHttp -> Deno.serveHttp (#10087)Ryan Dahl
2021-04-08feat: native HTTP bindings (#9935)Bartek Iwańczuk
Co-authered-by: Luca Casonato <lucacasonato@yahoo.com> Co-authered-by: Ben Noordhuis <info@bnoordhuis.nl> Co-authered-by: Ryan Dahl <ry@tinyclouds.org>
2021-04-08fix(core): error handling in examples (#9867)Inteon
2021-04-08fix(runtime/readFile*): close resources on error during read (#10059)Satya Rohith
This commit ensures readFile, readFileSync, readTextFile, and readTextFileSync does not leak resources on error.
2021-04-06chore: deprecate Deno.Buffer and read/write utils (#9793)Luca Casonato
This commit marks the `Deno.Buffer` / `Deno.readAll` / `Deno.readAllSync` / `Deno.writeAll` / `Deno.writeAllSync` utils as deprecated, and schedules them for removal in Deno 2.0. These utilities are implemented in pure JS, so should not be part of the Deno namespace. These utilities are now available in std/io/buffer and std/io/util: https://github.com/denoland/deno_std/pull/808. This additionallty removes all internal dependance on Deno.Buffer.
2021-04-05chore: update std submodule (#10017)Luca Casonato
2021-03-31refactor: new optimized op-layer using serde_v8 (#9843)Aaron O'Mullan
- Improves op performance. - Handle op-metadata (errors, promise IDs) explicitly in the op-layer vs per op-encoding (aka: out-of-payload). - Remove shared queue & custom "asyncHandlers", all async values are returned in batches via js_recv_cb. - The op-layer should be thought of as simple function calls with little indirection or translation besides the conceptually straightforward serde_v8 bijections. - Preserve concepts of json/bin/min as semantic groups of their inputs/outputs instead of their op-encoding strategy, preserving these groups will also facilitate partial transitions over to v8 Fast API for the "min" and "bin" groups
2021-03-20refactor: Move bin ops to deno_core and unify logic with json ops (#9457)Inteon
This commit moves implementation of bin ops to "deno_core" crates as well as unifying logic between bin ops and json ops to reuse as much code as possible (both in Rust and JavaScript).
2021-03-18fix: fallback to default UA and CA data for Deno.createHttpClient() (#9830)Aaron O'Mullan
2021-03-18chore(console): distinguish between log levels (#9824)Luca Casonato
Change `Console.#printFunc` to pass a log level as the second argument (0 = debug, 3 = error), instead of a boolean for `isErr`. This does not change the Deno runtime behaviour at all.
2021-03-18refactor: update minimal ops & rename to buffer ops (#9719)Inteon
This commit rewrites "dispatch_minimal" into "dispatch_buffer". It's part of an effort to unify JS interface for ops for both json and minimal (buffer) ops. Before this commit "minimal ops" could be either sync or async depending on the return type from the op, but this commit changes it to have separate signatures for sync and async ops (just like in case of json ops).
2021-03-17refactor: clean up permission handling (#9367)crowlKats
2021-03-12refactor: move Console to op_crates/console (#9770)Luca Casonato
2021-03-08fix(runtime/js): add navigator interface objects (#9685)Nayeem Rahman
2021-03-02test(op_crates/web): add regression tests for past URL bugs (#9639) (#9639)Bert Belder
Closes: #9383
2021-03-02chore: upgrade crates (#9632)Bartek Iwańczuk
2021-03-02refactor(op_crates/web): Move URL parsing to Rust (#9276)Nayeem Rahman
2021-03-01feat: WebGPU API (#7977)crowlKats
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-02-25fix(runtime): do not panic on irregular dir entries (#9579)Casper Beyer
2021-02-25feat(cli): update to TypeScript 4.2 (#9341)Kitson Kelly
2021-02-25feat(runtime): stabilise permissions and add event target capabilities (#9573)Kitson Kelly
2021-02-23fix: panic caused by Deno.env.set("", "") (#9583)Kohei Ueno
2021-02-22fix(tests): fix fetchConnectionError test if port is in use (#9465)David DeSimone
Fixes #9379
2021-02-21feat(unstable): per op metrics (#9240)Luca Casonato