1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-21 23:04:45 -05:00
denoland-deno/runtime/js
Andreu Botella fbcbbd7ae3
fix(runtime): Declare Window.self and DedicatedWorkerGlobalScope.name with util.writable() (#12378)
`Window`'s `self` property and `DedicatedWorkerGlobalScope`'s `name`
property are defined as Web IDL read-only attributes with the
`[Replaceable]` extended attribute, meaning that their setter will
redefine the property as a data property with the set value, rather than
changing some internal state. Deno currently defines them as read-only
data properties instead.

Given that Web IDL requires all attributes to be accessor properties
rather than data properties, but Deno exposes almost all of those
properties as either read-only or writable data properties, it makes
sense to expose `[Replaceable]` properties as writable as well – as is
already the case with `WindowOrWorkerGlobalScope`'s `performance`
property.
2021-10-11 18:50:18 +02:00
..
01_build.js refactor: use primordials in runtime/, part1 (#11241) 2021-07-03 16:58:08 +02:00
01_errors.js refactor: use primordials in runtime/, part1 (#11241) 2021-07-03 16:58:08 +02:00
01_version.js refactor: use primordials in runtime/, part1 (#11241) 2021-07-03 16:58:08 +02:00
01_web_util.js refactor: deduplicate defineEventHandler util (#12367) 2021-10-08 09:53:31 +02:00
06_util.js feat(workers): Make the Deno namespace configurable and unfrozen (#11888) 2021-08-31 19:33:03 +02:00
11_workers.js refactor: deduplicate defineEventHandler util (#12367) 2021-10-08 09:53:31 +02:00
12_io.js perf(runtime/fs): optimize readFile by using a single large buffer (#12057) 2021-09-16 20:28:15 +02:00
13_buffer.js refactor: use primordials for 13_buffer.js and 30_fs.js (#11247) 2021-07-03 17:17:23 +02:00
30_fs.js feat(unstable): Add file locking APIs (#11746) 2021-08-24 15:21:31 +02:00
30_os.js chore: various op cleanup (#12329) 2021-10-05 22:38:27 +02:00
40_compiler_api.js refactor: use primordials in runtime/, part2 (#11248) 2021-07-04 00:17:52 +02:00
40_diagnostics.js chore: use strict mode for internal runtime, core, and op_crates js (#9391) 2021-02-04 23:18:32 +01:00
40_error_stack.js fix(cli/fmt_errors): Abbreviate long data URLs in stack traces (#12127) 2021-09-18 15:40:04 +02:00
40_files.js refactor: use primordials in runtime/, part2 (#11248) 2021-07-04 00:17:52 +02:00
40_fs_events.js refactor: use primordials in runtime/, part2 (#11248) 2021-07-04 00:17:52 +02:00
40_http.js refactor: deno_http op crate (#11335) 2021-07-12 12:44:49 +02:00
40_permissions.js feat(fmt): add basic JS doc formatting (#11902) 2021-09-02 18:28:12 -04:00
40_process.js cleanup(runtime): flatten op_kill's args (#12214) 2021-09-25 01:33:15 +02:00
40_read_file.js perf(runtime/fs): optimize readFile by using a single large buffer (#12057) 2021-09-16 20:28:15 +02:00
40_signals.js chore: add better error message for signal API on Windows (#11935) 2021-09-07 13:17:44 +02:00
40_testing.js feat: provide ops details for ops sanitizer failures (#12188) 2021-10-11 17:00:33 +02:00
40_tty.js refactor(deno): remove concept of bin & json ops (#10145) 2021-04-12 15:55:05 -04:00
40_write_file.js feat: support AbortSignal in writeFile (#11568) 2021-08-06 10:21:29 -07:00
41_prompt.js refactor: use primordials in runtime/, part2 (#11248) 2021-07-04 00:17:52 +02:00
90_deno_ns.js refactor(metrics): move to core (#12386) 2021-10-10 17:20:30 +02:00
99_main.js fix(runtime): Declare Window.self and DedicatedWorkerGlobalScope.name with util.writable() (#12378) 2021-10-11 18:50:18 +02: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