summaryrefslogtreecommitdiff
path: root/runtime
AgeCommit message (Collapse)Author
2022-01-27chore: forward v1.18.1 to main (#13514)Bartek Iwańczuk
2022-01-27Revert "refactor: update runtime code for primordial checks for "instanceof" ↵Bartek Iwańczuk
(#13497)" (#13511) This reverts commit 884143218fad0e18f7553aaf079d52de703f7601.
2022-01-27refactor: update runtime code for primordial checks for "instanceof" (#13497)Bartek Iwańczuk
2022-01-25feat(test): better errors for resource sanitizer (#13296)Luca Casonato
This commit makes the errors produced from the resource sanitizer much more human readable. It does this by using real words rather than our "resource names" when referring to resources, and by giving helpful hints on how to clean up each of the resources.
2022-01-24feat(ext/web): add CompressionStream API (#11728)Leo Kettmeir
Co-authored-by: Luca Casonato <hello@lcas.dev> Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
2022-01-24feat(unstable): add Deno.networkInterfaces (#13475)Yoshiya Hinosawa
2022-01-20chore: bump crate version for 0.18.0 (#13441)Divy Srivastava
2022-01-20chore: update netif to 0.1.1 (#13425)Divy Srivastava
2022-01-18feat: stabilize test steps API (#13400)David Sherret
2022-01-18fix(runtime): don't crash when window is deleted (#13392)Bartek Iwańczuk
This commit fixes an error when user deletes "window" global JS variable. Instead of relying on "window" or "globalThis" to dispatch "load" and "unload" events, we are default to global scope of the worker.
2022-01-17fix(ext/console): don't depend on globalThis present (#13387)Bartek Iwańczuk
2022-01-15chore: upgrade to rust 1.58 (#13377)David Sherret
2022-01-13chore: forward v1.17.3 to main (#13364)Bartek Iwańczuk
2022-01-12feat(ext/ffi): UnsafeFnPointer API (#13340)DjDeveloper
2022-01-10feat(cli, runtime): compress snapshots (#13320)evan
2022-01-09fix: expose "Deno.memoryUsage()" in worker context (#13293)Rodney van den Velden
2022-01-07chore: update copyright to 2022 (#13306)Ryan Dahl
Co-authored-by: Erfan Safari <erfanshield@outlook.com>
2022-01-06chore: forward 1.17.2 to main (#13295)Bartek Iwańczuk
2022-01-04fix(signals): prevent panic when listening to forbidden signals (#13273)Leo Kettmeir
2021-12-29cleanup(cli): use op Extensions (#13223)Aaron O'Mullan
Enabling op-middleware for overrides in lieu of imperative .replace_op() etc... Impacts #13219, #12938, #13122
2021-12-28refactor(core): cleanup Inspector implementation (#12962)Bartek Iwańczuk
2021-12-23feat(runtime): add op_network_interfaces (#12964)Ben Noordhuis
Add an op to list the network interfaces on the system. Prep work for #8137 and `os.networkInterfaces()` Node compat in std. Refs denoland/deno_std#1436.
2021-12-22chore: merge v1.17.1 into main (#13184)Bartek Iwańczuk
2021-12-21refactor: cleanup cli/main.rs (#13160)Bartek Iwańczuk
2021-12-18refactor: use `once_cell` instead of `lazy_static` (#13135)Divy Srivastava
2021-12-17fix: inspector prompts (#13123)Bartek Iwańczuk
This commit fixes prompts printed to the terminal when running with "--inspect" or "--inspect-brk" flags. When debugger disconnects error is no longer printed as users don't care about the reason debugger did disconnect. A message suggesting to go to "chrome://inspect" is printed if debugger is active. Additionally and information that process is waiting for debugger to connect is printed if running with "--inspect-brk" flag.
2021-12-16chore: release crates for v1.17.0 (#13112)Bartek Iwańczuk
2021-12-16feat: support abort reasons in Deno APIs and `WebSocketStream` (#13066)Andreu Botella
2021-12-16fix(test): wait for inspector session in side modules (#13065)Jesper van den Ende
This commit fixes inspector integration with "deno test" subcommand by waiting for inspector sessions to connect if "--inspect-brk" flag is passed. Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-12-15feat(ext/ffi): implement UnsafePointer and UnsafePointerView (#12828)Elias Sjögreen
2021-12-11Revert "fix(cli): don't add colors for non-tty outputs (#13031)" (#13054)Bartek Iwańczuk
This reverts commit 38f163022373c9adb050f17140f7d29bb403abe2.
2021-12-11fix: op_set_exit_code (#13034)Bartek Iwańczuk
Fixes "op_set_exit_code" by sharing a single "Arc" between all workers (via "op state") instead of having a "global" value stored in "deno_runtime" crate. As a consequence setting an exit code is always scoped to a tree of workers, instead of being overridable if there are multiple worker tree (like in "deno test --jobs" subcommand). Refactored "cli/main.rs" functions to return "Result<i32, AnyError>" instead of "Result<(), AnyError>" so they can return exit code.
2021-12-10fix(test): Make the op sanitizer delay macrotask into a queue (#12966)Andreu Botella
Fixes #12945.
2021-12-10fix(cli): don't add colors for non-tty outputs (#13031)VishnuJin
2021-12-09feat(ext/timers): add refTimer, unrefTimer API (#12953)Yoshiya Hinosawa
2021-12-04chore: upgrade to Rust 1.57.0 (#12968)Bartek Iwańczuk
2021-12-04chore: merge v1.16.4 into main (#12984)Luca Casonato
2021-12-03refactor(ext/fetch): pass opstate in `FetchHandler::fetch_file`Leo Kettmeir
2021-11-30fix(test): Improve reliability of `deno test`'s op sanitizer with timers ↵Andreu Botella
(#12934) Although not easy to replicate in the wild, the `deno test` op sanitizer can fail when there are intervals that started before a test runs, since the op sanitizer can end up running in the time between the timer op for an interval's run resolves and the op for the next run starts. This change fixes that by adding a new macrotask callback that will run after the timer macrotask queue has drained. This ensures that there is a timer op if there are any timers which are unresolved by the time the op sanitizer runs.
2021-11-29fix(workers): Make `worker.terminate()` not immediately kill the isolate ↵Andreu Botella
(#12831) Due to a bug in V8, terminating an isolate while a module with top-level await is being evaluated would crash the process. This change makes it so calling `worker.terminate()` will signal the worker to terminate at the next iteration of the event loop, and it schedules a proper termination of the worker's isolate after 2 seconds.
2021-11-29Revert "fix(test): Improve reliability of `deno test`'s op sanitizer with ↵Bartek Iwańczuk
timers (#12908)" (#12929) This reverts commit d335343a79afbcfe719109af510fe7a1dd0df2e8.
2021-11-28chore: re-export `deno_core` from `deno_runtime` (#12923)DjDeveloper
2021-11-28refactor: add deno_fetch::Options for init (#12904)Ryan Dahl
deno_fetch::init has a lot of parameters and generic on two types that keeps expanding over time. This refactor adds deno_fetch::Options struct for more clearly defining the various parameters.
2021-11-28fix(test): Improve reliability of `deno test`'s op sanitizer with timers ↵Andreu Botella
(#12908) Although not easy to replicate in the wild, the `deno test` op sanitizer can fail when there are intervals that started before a test runs, since the op sanitizer can end up running in the time between the timer op for an interval's run resolves and the op for the next run starts. This change fixes that by adding a new macrotask callback that will run after the timer macrotask queue has drained. This ensures that there is a timer op if there are any timers which are unresolved by the time the op sanitizer runs.
2021-11-28feat(runtime): add op_set_exit_code (#12911)Ben Noordhuis
Set the exit code to use if none is provided to Deno.exit(), or when Deno exits naturally. Needed for process.exitCode Node compat. Paves the way for #12888.
2021-11-25feat(core): Add ability to "ref" and "unref" pending ops (#12889)Bartek Iwańczuk
This commit adds an ability to "ref" or "unref" pending ops. Up to this point Deno had a notion of "async ops" and "unref async ops"; the former keep event loop alive, while the latter do not block event loop from finishing. It was not possible to change between op types after dispatching, one had to decide which type to use before dispatch. Instead of storing ops in two separate "FuturesUnordered" collections, now ops are stored in a single collection, with supplemental "HashSet" storing ids of promises that were "unrefed". Two APIs were added to "Deno.core": "Deno.core.refOp(promiseId)" which allows to mark promise id to be "refed" and keep event loop alive (the default behavior) "Deno.core.unrefOp(promiseId)" which allows to mark promise id as "unrefed" which won't block event loop from exiting
2021-11-24chore: merge v1.16.3 into main (#12892)Bert Belder
2021-11-23feat(test): Add more overloads for "Deno.test" (#12749)Bartek Iwańczuk
This commit adds 4 more overloads to "Deno.test()" API. ``` // Deno.test(function testName() { }); export function test(fn: (t: TestContext) => void | Promise<void>): void; // Deno.test("test name", { only: true }, function() { }); export function test( name: string, options: Omit<TestDefinition, "name">, fn: (t: TestContext) => void | Promise<void>, ): void; // Deno.test({ name: "test name" }, function() { }); export function test( options: Omit<TestDefinition, "fn">, fn: (t: TestContext) => void | Promise<void>, ): void; // Deno.test({ only: true }, function testName() { }); export function test( options: Omit<TestDefinition, "fn" | "name">, fn: (t: TestContext) => void | Promise<void>, ): void; ```
2021-11-23fix: support "other" event type in FSWatcher (#12836)Luca Casonato
This commit adds support for "other" events in `FSWatcher`. Flags on events are now exposed via the `flag` property on `FsEvent`.
2021-11-22fix(runtime): support reading /proc using readFile (#12839)Luca Casonato