deno/runtime/js
Bartek Iwańczuk a434ac2a1e
feat(unstable): use Node.js setTimeout and setInterval (#29993)
This commit repurposes `--unstable-node-globals` flag that was
deprecated
in https://github.com/denoland/deno/pull/29887 to switch out timers
implemention that is used.

Ie. using this flag cause `setTimeout`, `setInterval`, `clearTimeout`
and `clearInterval` globals to use functions from `node:timers` 
module instead of the Web version.

This is also enabled using `DENO_COMPAT=1` env var. 

TODO:
<s>make typechecking be conditional depending on this, most likely
requires
changes in our TS fork.</s> This has been deferred until Deno 3

Towards https://github.com/denoland/deno/issues/29703

---------

Signed-off-by: Bartek Iwańczuk <biwanczuk@gmail.com>
Co-authored-by: David Sherret <dsherret@users.noreply.github.com>
2025-09-09 00:48:58 +02:00
..
01_errors.js chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
01_version.ts chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
06_util.js chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
10_permissions.js fix: support Deno.permissions.query({name:"import"}) (#29610) 2025-06-26 22:13:56 +02:00
11_workers.js chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
40_fs_events.js chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
40_tty.js chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
41_prompt.js fix: remove unnecessary whitespace in prompt function (#28868) 2025-04-16 17:49:06 +00:00
90_deno_ns.js feat(bundle): runtime API for deno bundle (#29949) 2025-09-04 09:47:27 -07:00
98_global_scope_shared.js feat(unstable): use Node.js setTimeout and setInterval (#29993) 2025-09-09 00:48:58 +02:00
98_global_scope_window.js refactor: object wrap WebGPU (#27665) 2025-02-12 13:45:41 +00:00
98_global_scope_worker.js refactor: object wrap WebGPU (#27665) 2025-02-12 13:45:41 +00:00
99_main.js feat(unstable): use Node.js setTimeout and setInterval (#29993) 2025-09-09 00:48:58 +02:00
README.md chore: fix outdated note in runtime/js/README.md (#23673) 2024-05-05 01:30:53 +00:00

Runtime JavaScript Code

This directory contains Deno runtime code written in plain JavaScript.

Each file is an ES module and is prefixed with a number, telling in which order scripts should be loaded into V8 isolate.

Deno Web APIs

This directory facilities Web APIs that are available in Deno.

Please note, that some implementations might not be completely aligned with specification.

Some Web APIs are using ops under the hood, eg. console, performance.

Implemented Web APIs