summaryrefslogtreecommitdiff
path: root/runtime
AgeCommit message (Collapse)Author
2022-08-21feat: `queueMicrotask()` error handling (#15522)Nayeem Rahman
Adds error event dispatching for queueMicrotask(). Consequently unhandled errors are now reported with Deno.core.terminate(), which is immune to the existing quirk with plainly thrown errors (#14158).
2022-08-20feat(unstable): initial support for npm specifiers (#15484)David Sherret
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-08-19feat(unstable): change Deno.serve() API (#15498)Bartek Iwańczuk
- Merge "Deno.serve()" and "Deno.serveTls()" API - Remove first argument and use "fetch" field options instead - Update type declarations - Add more documentation
2022-08-19perf(runtime): optimize Deno.file open & stream (#15496)Divy Srivastava
2022-08-18feat(ext/flash): An optimized http/1.1 server (#15405)Divy Srivastava
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: Ben Noordhuis <info@bnoordhuis.nl> Co-authored-by: crowlkats <crowlkats@toaxl.com> Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2022-08-16feat(runtime): add pre_execute_module_cb (#15485)David Sherret
2022-08-11chore: forward v1.24.3 release commit to main (#15462)denobot
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-08-11perf(ops): Monomorphic sync op calls (#15337)Aapo Alasuutari
Welcome to better optimised op calls! Currently opSync is called with parameters of every type and count. This most definitely makes the call megamorphic. Additionally, it seems that spread params leads to V8 not being able to optimise the calls quite as well (apparently Fast Calls cannot be used with spread params). Monomorphising op calls should lead to some improved performance. Now that unwrapping of sync ops results is done on Rust side, this is pretty simple: ``` opSync("op_foo", param1, param2); // -> turns to ops.op_foo(param1, param2); ``` This means sync op calls are now just directly calling the native binding function. When V8 Fast API Calls are enabled, this will enable those to be called on the optimised path. Monomorphising async ops likely requires using callbacks and is left as an exercise to the reader.
2022-08-10refactor(runtime): split up `MainWorker` and `WebWorker`'s `preload_module` ↵David Sherret
method into two separate methods (#15451)
2022-08-10fix(permissions): ignore empty values (#15447)Leo Kettmeir
2022-08-10fix: allow setting `globalThis.location` when no `--location` is provided ↵Kayla Washburn
(#15448)
2022-08-09chore: temporarily disable `ext/node` and use unstable ops (#15438)David Sherret
2022-08-10fix: update deno_graph to fix importing config as JSON module (#15388)Kitson Kelly
Ref: denoland/deno_graph#166
2022-08-09feat: add ext/node for require support (#15362)Bartek Iwańczuk
This commit adds "ext/node" extension that implementes CommonJS module system. In the future this extension might be extended to actually contain implementation of Node compatibility layer in favor of "deno_std/node". Currently this functionality is not publicly exposed, it is available via "Deno[Deno.internal].require" namespace and is meant to be used by other functionality to be landed soon. This is a minimal first pass, things that still don't work: support for dynamic imports in CJS conditional exports
2022-08-05fix: various formatting fixes (#15412)David Sherret
2022-08-05chore: forward v1.24.2 release commit to main (#15410)denobot
2022-08-04fix: Update `Object.prototype.__proto__` related comments (#15394)Yongwook Choi
2022-07-29Forward 1.24.1 to main (#15333) (#15336)Colin Ihrig
1.24.1 (#15333) Co-authored-by: cjihrig <cjihrig@users.noreply.github.com>
2022-07-26chore(ops): Remove unused arguments from ops (#15315)Aapo Alasuutari
2022-07-23fix: unhandledrejection handling for sync throw in top level (#15279)Bartek Iwańczuk
Fixes an edge in "unhandledrejection" event that prevent synchronous errors being surfaced when throw from a top-level scope.
2022-07-22fix: Child.unref() unrefs stdio streams properly (#15275)Bartek Iwańczuk
2022-07-211.24.0 (#15262)denobot
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-07-20Reland "feat: add "unhandledrejection" event support" (#15211)Bartek Iwańczuk
2022-07-18feat(unstable): Ability to ref/unref "Child" in "Deno.spawnChild()" API (#15151)Leo Kettmeir
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: Colin Ihrig <cjihrig@gmail.com>
2022-07-18chore(repl): update rustyline to 10.0.0 (#15232)sigmaSd
2022-07-18BREAKING(unstable): Improve Deno.spawn() stdio API (#14919)Nayeem Rahman
- "SpawnOutput" extends "ChildStatus" instead of composing it - "SpawnOutput::stdout", "SpawnOutput::stderr", "Child::stdin", "Child::stdout" and "Child::stderr" are no longer optional, instead made them getters that throw at runtime if that stream wasn't set to "piped". - Remove the complicated "<T extends SpawnOptions = SpawnOptions>" which we currently need to give proper type hints for the availability of these fields. Their typings for these would get increasingly complex if it became dependent on more options (e.g. "SpawnOptions::pty" which if set should make the stdio streams unavailable)
2022-07-15refactor: allocate IDs for tests (#14729)Nayeem Rahman
2022-07-15chore: fix Windows specific clippy errors (#15212)David Sherret
2022-07-15Revert "feat: add "unhandledrejection" event support (#12994) (#15080)" (#15210)Bartek Iwańczuk
This reverts commit 1a7259b04b7229f6350a7a7c21b50497b5c80c17.
2022-07-14feat: add "unhandledrejection" event support (#12994) (#15080)Bartek Iwańczuk
Relanding #12994 This commit adds support for "unhandledrejection" event. This event will trigger event listeners registered using: "globalThis.addEventListener("unhandledrejection") "globalThis.onunhandledrejection" This is done by registering a default handler using "Deno.core.setPromiseRejectCallback" that allows to handle rejected promises in JavaScript instead of Rust. This commit will make it possible to polyfill "process.on("unhandledRejection")" in the Node compat layer. Co-authored-by: Colin Ihrig <cjihrig@gmail.com>
2022-07-13fix(cli): synchronize async stdio/file reads and writes (#15092)David Sherret
Fixes a regression where async writes and reads could get out of order.
2022-07-12chore: forward v1.23.4 release commit to main (#15172)Colin Ihrig
1.23.4 (#15168) Co-authored-by: cjihrig <cjihrig@users.noreply.github.com> Co-authored-by: denobot <33910674+denobot@users.noreply.github.com> Co-authored-by: cjihrig <cjihrig@users.noreply.github.com>
2022-07-11refactor: rename run_basic to run_local (#15068)cuobiezi
2022-07-051.23.3 (#15081)denobot
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-07-05Revert "refactor(snapshots): to their own crate (#14794)" (#15076)Bartek Iwańczuk
This reverts commit fd5a12d7e25dc53238e2bbcffe970e646c1035f3.
2022-07-04Revert "feat: add "unhandledrejection" event support (#12994)" (#15075)Bartek Iwańczuk
This reverts commit f7af0b01a59aaac91473e2f920137004d39a310a.
2022-07-04feat: add "unhandledrejection" event support (#12994)Bartek Iwańczuk
This commit adds support for "unhandledrejection" event. This event will trigger event listeners registered using: "globalThis.addEventListener("unhandledrejection") "globalThis.onunhandledrejection" This is done by registering a default handler using "Deno.core.setPromiseRejectCallback" that allows to handle rejected promises in JavaScript instead of Rust. This commit will make it possible to polyfill "process.on("unhandledRejection")" in the Node compat layer. Co-authored-by: Colin Ihrig <cjihrig@gmail.com>
2022-06-30chore: forward 1.23.2 to main (#15027)David Sherret
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-06-30fix(runtime): derive default for deno_runtime::ExitCode (#15017)Curtis Allen
2022-06-28fix(test): typo ('finsihed') if text decoder not closed during test (#14996)nkronlage
fix: typo ('finsihed') if text decoder not closed during test
2022-06-28feat(web): add beforeunload event (#14830)Colin Ihrig
This commit adds the 'beforeunload' event. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-06-26build: require safety comments on unsafe code (#13870)Luca Casonato
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2022-06-24refactor(snapshots): to their own crate (#14794)Aaron O'Mullan
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-06-24fix: don't error if Deno.bench() or Deno.test() are used in run subcommand ↵Bartek Iwańczuk
(#14946)
2022-06-23v1.23.1 (#14954)Kayla Washburn
1.23.1 (#14952) Co-authored-by: aslilac <aslilac@users.noreply.github.com> Co-authored-by: Kayla Washburn <mckayla@hey.com> Co-authored-by: denobot <33910674+denobot@users.noreply.github.com> Co-authored-by: aslilac <aslilac@users.noreply.github.com>
2022-06-20feat(ext/ffi): Callbacks (#14663)Aapo Alasuutari
This commit adds support for unstable FFI callbacks. A callback is registered using the `Deno.UnsafeCallback` API. The backing memory for the callback can be disposed of using `Deno.UnsafeCallback#close`. It is not safe to pass the callback after calling close. Callbacks from other than the isolate thread are not supported. Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com> Co-authored-by: Bert Belder <bertbelder@gmail.com>
2022-06-19refactor: make MainWorker::evaluate_module public (#14892)Mathias Lafeldt
2022-06-151.23.0 (#14878)denobot
* 1.23.0 * docs(Releases.md): update a few items for 1.23 * docs(Releases.md): revert bad formatting Co-authored-by: aslilac <aslilac@users.noreply.github.com> Co-authored-by: McKayla Washburn <mckayla@hey.com>
2022-06-15chore: upgrade various deps (#14876)Ryan Dahl
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-06-15chore(cli/cache): Remove CacheType::Declaration (#14873)Nayeem Rahman