deno/runtime/js
Bartek Iwańczuk 24c3c96958
feat: granular --unstable-* flags (#20968)
This commit adds granular `--unstable-*` flags:
- "--unstable-broadcast-channel"
- "--unstable-ffi"
- "--unstable-fs"
- "--unstable-http"
- "--unstable-kv"
- "--unstable-net"
- "--unstable-worker-options"
- "--unstable-cron"

These flags are meant to replace a "catch-all" flag - "--unstable", that
gives a binary control whether unstable features are enabled or not. The
downside of this flag that allowing eg. Deno KV API also enables the FFI
API (though the latter is still gated with a permission).

These flags can also be specified in `deno.json` file under `unstable`
key.

Currently, "--unstable" flag works the same way - I will open a follow
up PR that will print a warning when using "--unstable" and suggest to use
concrete "--unstable-*" flag instead. We plan to phase out "--unstable"
completely in Deno 2.
2023-11-01 23:15:08 +01:00
..
01_errors.js feat: add more Deno.errors classes (#19514) 2023-06-29 01:46:16 +02:00
01_version.ts refactor: internal runtime code TS support (#17672) 2023-02-08 22:40:18 +01:00
06_util.js feat(runtime): add WorkerLogLevel (#19316) 2023-05-30 15:34:50 +00:00
10_permissions.js feat(permissions): add "--deny-*" flags (#19070) 2023-08-03 13:19:19 +02:00
11_workers.js fix: call setIsTrusted for generated events (MessageEvent) (#19919) 2023-07-31 23:22:07 +02:00
13_buffer.js chore: Turn back on dlintPreferPrimordials (#17715) 2023-04-02 19:41:41 +02:00
30_os.js fix(core): Use primordials for methods (#18839) 2023-05-01 15:30:02 +02:00
40_fs_events.js feat: disposable Deno resources (#20845) 2023-11-01 20:26:12 +01:00
40_http.js refactor: rename InternalModuleLoader to ExtModuleLoader, use ext: scheme for snapshotted modules (#18041) 2023-03-08 12:44:54 +01:00
40_process.js feat: disposable Deno resources (#20845) 2023-11-01 20:26:12 +01:00
40_signals.js fix(core): Use safe primordials wrappers (#18687) 2023-04-14 22:23:28 +02:00
40_tty.js chore(cli): remove atty crate (#20275) 2023-08-25 07:43:07 -06:00
41_prompt.js chore: restore pty tests and make them run on the Linux CI (#18424) 2023-03-28 21:49:00 +00:00
90_deno_ns.js feat: granular --unstable-* flags (#20968) 2023-11-01 23:15:08 +01:00
98_global_scope.js feat(ext/web): EventSource (#14730) 2023-10-31 18:16:27 +01:00
99_main.js feat: granular --unstable-* flags (#20968) 2023-11-01 23:15:08 +01:00
README.md feat: add --location=<href> and globalThis.location (#7369) 2021-01-07 19:06:08 +01:00

Runtime JavaScript Code

This directory contains Deno runtime code written in plain JavaScript.

Each file is a plain, old script, not ES modules. The reason is that snapshotting ES modules is much harder, especially if one needs to manipulate global scope (like in case of Deno).

Each file is prefixed with a number, telling in which order scripts should be loaded into V8 isolate. This is temporary solution and we're striving not to require specific order (though it's not 100% obvious if that's feasible).

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