mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-22 05:59:31 +08:00
- Stamp all publishable packages at v0.0.20. - Publish release notes for the contract-sidecar improvements. - Refresh the compiler surface manifest for the release.
2667 lines
85 KiB
JSON
2667 lines
85 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"compilerVersion": "0.0.20",
|
|
"coverage": [
|
|
"Entries are projected mechanically from the compiler's own decision tables: the diagnostics registry, the unsupported-syntax dispatch tables, the stdlib and node-builtin lowering tables, and the supported-builtin-module list. Nothing is hand-maintained; the manifest regenerates byte-identically from the source tree at this version.",
|
|
"Absence from this manifest means 'not projected', never 'unsupported'. Surfaces lowered through dedicated code paths rather than tables are not yet projected: console, JSON, Promise/async and the timer surface, the net/http/tls/https/dgram/dns/assert/test/stream/readline module member surfaces, template literals, the regex slice, global functions (parseInt, parseFloat, isNaN, isFinite), and the process surface outside its ambient slice.",
|
|
"The ambient-nondeterminism and ambient-authority surfaces the library sidecar's determinism attestation scans ARE projected even where they lower through dedicated code paths — the Date compositions (stdlib.date.*), perf_hooks' performance.now, and the process global's ambient reads and authority calls (node-builtin.process.*) — so a determinism fence can name every surface the attestation demotes on.",
|
|
"stdlib and node-builtin member entries name surface whose LOWERED call forms are constrained (arity, argument shapes); declared call forms outside the lowered set are refused per site, with code SC2020 for standard-library and node-builtin surface.",
|
|
"Entries with status 'unsupported' or 'dynamic-only' describe where the named code is raised: forms of the construct outside the supported subset are refused with that code — not that every form of the named feature is refused. Supported forms appear as their own static entries where a table projects them.",
|
|
"Entries with status 'dynamic-only' compile when the build embeds the dynamic engine (--dynamic); without the flag each use site is refused with the entry's code.",
|
|
"Process-level diagnostic codes are not surface entries: SC0001-SC0004 are preflight gates, SC1110 is a comptime evaluation failure, SC3001 is the alternate-backend tier refusal, SC9001/SC9002 are internal errors.",
|
|
"No scheduling metadata is published; entry ids are the stable diff keys across releases."
|
|
],
|
|
"entries": [
|
|
{
|
|
"id": "diagnostic.sc1010",
|
|
"kind": "diagnostic-fence",
|
|
"name": "package imports",
|
|
"status": "unsupported",
|
|
"code": "SC1010",
|
|
"note": "relative imports (./file, ../dir/file), package.json-mediated project imports (#alias via the imports field, self-name references via exports), installed npm packages (their code runs under --dynamic), and the built-in fs, fs/promises, path, os, url, crypto, zlib, child_process, net, http, tls, https, http2, dgram, dns, util, util/types, string_decoder, querystring, readline, events, stream, stream/promises, stream/consumers, buffer, assert, assert/strict, worker_threads, cluster, tty, async_hooks, timers, timers/promises, diagnostics_channel, perf_hooks, and module modules (bare or node:-prefixed) and node:test (node:-prefixed only, like in Node) are supported"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1012",
|
|
"kind": "diagnostic-fence",
|
|
"name": "default exports/imports",
|
|
"status": "unsupported",
|
|
"code": "SC1012",
|
|
"note": "use named exports: export function f() {} / import { f } from \"./m\""
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1013",
|
|
"kind": "diagnostic-fence",
|
|
"name": "namespace imports (* as ns)",
|
|
"status": "unsupported",
|
|
"code": "SC1013"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1014",
|
|
"kind": "diagnostic-fence",
|
|
"name": "re-exports and export lists",
|
|
"status": "unsupported",
|
|
"code": "SC1014",
|
|
"note": "export declarations directly: export function f() {}"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1015",
|
|
"kind": "diagnostic-fence",
|
|
"name": "dynamic import()",
|
|
"status": "unsupported",
|
|
"code": "SC1015"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1016",
|
|
"kind": "diagnostic-fence",
|
|
"name": "circular imports",
|
|
"status": "unsupported",
|
|
"code": "SC1016",
|
|
"note": "cycles of ES modules with declaration-only top levels whose cycle-crossing bindings are only used inside function bodies compile as-is; move the named top-level read or call into a function body (or break the named edge) so nothing runs during the cycle's init window"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1020",
|
|
"kind": "diagnostic-fence",
|
|
"name": "class expressions",
|
|
"status": "unsupported",
|
|
"code": "SC1020"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1030",
|
|
"kind": "diagnostic-fence",
|
|
"name": "var declarations",
|
|
"status": "unsupported",
|
|
"code": "SC1030"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1031",
|
|
"kind": "diagnostic-fence",
|
|
"name": "destructuring",
|
|
"status": "unsupported",
|
|
"code": "SC1031"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1040",
|
|
"kind": "diagnostic-fence",
|
|
"name": "loose equality (== and !=)",
|
|
"status": "unsupported",
|
|
"code": "SC1040",
|
|
"note": "use === / !== ('x == null' / 'x != null' — the null-or-undefined test — is supported; other loose comparisons need dynamic coercion semantics)"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1042",
|
|
"kind": "diagnostic-fence",
|
|
"name": "logical operators on mixed operand types",
|
|
"status": "unsupported",
|
|
"code": "SC1042",
|
|
"note": "give both operands the same type (number, string, or boolean)"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1043",
|
|
"kind": "diagnostic-fence",
|
|
"name": "comparing non-number, non-string values",
|
|
"status": "unsupported",
|
|
"code": "SC1043"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1045",
|
|
"kind": "diagnostic-fence",
|
|
"name": "increment/decrement in expression position",
|
|
"status": "unsupported",
|
|
"code": "SC1045",
|
|
"note": "use ++/-- as a standalone statement, or write x = x + 1"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1050",
|
|
"kind": "diagnostic-fence",
|
|
"name": "labeled break/continue",
|
|
"status": "unsupported",
|
|
"code": "SC1050"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1052",
|
|
"kind": "diagnostic-fence",
|
|
"name": "for-in loops",
|
|
"status": "unsupported",
|
|
"code": "SC1052"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1062",
|
|
"kind": "diagnostic-fence",
|
|
"name": "destructuring catch clause bindings",
|
|
"status": "unsupported",
|
|
"code": "SC1062",
|
|
"note": "bind an identifier (catch (e)) and narrow it — 'e instanceof Error' exposes .name/.message, typeof tests expose primitives"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1063",
|
|
"kind": "diagnostic-fence",
|
|
"name": "this use of a catch binding",
|
|
"status": "unsupported",
|
|
"code": "SC1063",
|
|
"note": "a catch binding is typed by what was thrown — narrow before reading: 'if (e instanceof Error)' (then .name/.message), 'typeof e === \"string\"/\"number\"/\"boolean\"', or rethrow with 'throw e'; String(e) and `${e}` also compile ('Error: msg' for Error payloads — Node's String(), which has no stack), so 'e instanceof Error ? e.message : String(e)' works as-is"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1070",
|
|
"kind": "diagnostic-fence",
|
|
"name": "async/await",
|
|
"status": "unsupported",
|
|
"code": "SC1070"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1071",
|
|
"kind": "diagnostic-fence",
|
|
"name": "generators",
|
|
"status": "unsupported",
|
|
"code": "SC1071"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1080",
|
|
"kind": "diagnostic-fence",
|
|
"name": "'this' outside a class method",
|
|
"status": "unsupported",
|
|
"code": "SC1080"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1090",
|
|
"kind": "diagnostic-fence",
|
|
"name": "this syntax",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1100",
|
|
"kind": "diagnostic-fence",
|
|
"name": "operations on 'unknown' values",
|
|
"status": "unsupported",
|
|
"code": "SC1100",
|
|
"note": "validate with 'as <type>' first — the cast checks the dynamic value at runtime and throws on mismatch"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1101",
|
|
"kind": "diagnostic-fence",
|
|
"name": "converting typed values to 'unknown'",
|
|
"status": "unsupported",
|
|
"code": "SC1101",
|
|
"note": "numbers, strings, booleans, JSON-safe records/arrays/unions (a deep copy — the 'unknown' value never aliases the original), and functions over those (boxed, identity preserved) convert into 'unknown' slots; this value's type has no dynamic representation yet"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1120",
|
|
"kind": "diagnostic-fence",
|
|
"name": "this regex feature",
|
|
"status": "unsupported",
|
|
"code": "SC1120",
|
|
"note": "supported: literal regexes with the g/i/m/s/u/y flags — .test(), .exec()/.match()/.matchAll(), named capture groups (.groups, $<name> templates, \\k<name>), .source/.flags, and string replace/replaceAll/split with string replacement templates"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc1121",
|
|
"kind": "diagnostic-fence",
|
|
"name": "'.test()' on a regex with the 'g' or 'y' flag",
|
|
"status": "unsupported",
|
|
"code": "SC1121",
|
|
"note": "g/y regexes carry mutable lastIndex state between calls, which is not modeled; drop the flag for a plain match test, or use replace/replaceAll/split (their iteration is internal)"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2001",
|
|
"kind": "diagnostic-fence",
|
|
"name": "values of types outside the compilable set (bigint and symbol primitives, constructor objects, and library-derived or unresolved generic shapes)",
|
|
"status": "unsupported",
|
|
"code": "SC2001"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2002",
|
|
"kind": "diagnostic-fence",
|
|
"name": "record shape flows outside the width-copy rules (shapes must match exactly or width-coerce)",
|
|
"status": "unsupported",
|
|
"code": "SC2002"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2003",
|
|
"kind": "diagnostic-fence",
|
|
"name": "union-to-union conversions outside the re-tagging rule",
|
|
"status": "unsupported",
|
|
"code": "SC2003"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2004",
|
|
"kind": "diagnostic-fence",
|
|
"name": "uses of a binding whose declaration did not compile (cascade marker)",
|
|
"status": "unsupported",
|
|
"code": "SC2004"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2005",
|
|
"kind": "diagnostic-fence",
|
|
"name": "values whose type keeps a generic call signature (a compiled function is one concrete signature)",
|
|
"status": "unsupported",
|
|
"code": "SC2005"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2006",
|
|
"kind": "diagnostic-fence",
|
|
"name": "index-signature object types outside the supported shape",
|
|
"status": "unsupported",
|
|
"code": "SC2006"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2007",
|
|
"kind": "diagnostic-fence",
|
|
"name": "values of overloaded function type (a compiled function value is one signature)",
|
|
"status": "unsupported",
|
|
"code": "SC2007"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2008",
|
|
"kind": "diagnostic-fence",
|
|
"name": "intersection types with no resolved lowering",
|
|
"status": "unsupported",
|
|
"code": "SC2008"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2009",
|
|
"kind": "diagnostic-fence",
|
|
"name": "supported container and function shapes over a component type outside its slot",
|
|
"status": "unsupported",
|
|
"code": "SC2009"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2010",
|
|
"kind": "diagnostic-fence",
|
|
"name": "constructs that exist only in the embedded dynamic engine",
|
|
"status": "dynamic-only",
|
|
"code": "SC2010"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2011",
|
|
"kind": "diagnostic-fence",
|
|
"name": "'any'-typed values and the operations on them",
|
|
"status": "dynamic-only",
|
|
"code": "SC2011"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2012",
|
|
"kind": "diagnostic-fence",
|
|
"name": "standard-library surface that runs in the embedded dynamic engine",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2013",
|
|
"kind": "diagnostic-fence",
|
|
"name": "npm package imports and values (the package's implementation runs in the embedded engine)",
|
|
"status": "dynamic-only",
|
|
"code": "SC2013"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2020",
|
|
"kind": "diagnostic-fence",
|
|
"name": "standard-library or @types/node surface with no lowering",
|
|
"status": "unsupported",
|
|
"code": "SC2020"
|
|
},
|
|
{
|
|
"id": "diagnostic.sc2030",
|
|
"kind": "diagnostic-fence",
|
|
"name": "npm package code that cannot be embedded for the dynamic engine",
|
|
"status": "unsupported",
|
|
"code": "SC2030"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert",
|
|
"kind": "node-builtin",
|
|
"name": "assert",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.AssertionError",
|
|
"kind": "node-builtin",
|
|
"name": "assert.AssertionError",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the class itself has no lowering — catch and test err.name === \"AssertionError\" or err.code === \"ERR_ASSERTION\""
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.deepEqual",
|
|
"kind": "node-builtin",
|
|
"name": "assert.deepEqual",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "loose == equality has no lowering — the strict forms compare with Object.is/structural equality like Node's assert/strict module, where equal IS strictEqual"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.doesNotReject",
|
|
"kind": "node-builtin",
|
|
"name": "assert.doesNotReject",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "await the promise directly — an unexpected rejection already fails the test"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.doesNotThrow",
|
|
"kind": "node-builtin",
|
|
"name": "assert.doesNotThrow",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "call the function directly — an unexpected throw already fails the test"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.equal",
|
|
"kind": "node-builtin",
|
|
"name": "assert.equal",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "loose == equality has no lowering — the strict forms compare with Object.is/structural equality like Node's assert/strict module, where equal IS strictEqual"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.ifError",
|
|
"kind": "node-builtin",
|
|
"name": "assert.ifError",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "test explicitly instead: assert.strictEqual(err, null) / assert.strictEqual(err, undefined)"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.notDeepEqual",
|
|
"kind": "node-builtin",
|
|
"name": "assert.notDeepEqual",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "loose == equality has no lowering — the strict forms compare with Object.is/structural equality like Node's assert/strict module, where equal IS strictEqual"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.notEqual",
|
|
"kind": "node-builtin",
|
|
"name": "assert.notEqual",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "loose == equality has no lowering — the strict forms compare with Object.is/structural equality like Node's assert/strict module, where equal IS strictEqual"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.rejects",
|
|
"kind": "node-builtin",
|
|
"name": "assert.rejects",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "await the promise inside assert.throws's callback story instead: try { await p; assert.fail(\"expected rejection\") } catch { ... }"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict.AssertionError",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict.AssertionError",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the class itself has no lowering — catch and test err.name === \"AssertionError\" or err.code === \"ERR_ASSERTION\""
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict.doesNotReject",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict.doesNotReject",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "await the promise directly — an unexpected rejection already fails the test"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict.doesNotThrow",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict.doesNotThrow",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "call the function directly — an unexpected throw already fails the test"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict.ifError",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict.ifError",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "test explicitly instead: assert.strictEqual(err, null) / assert.strictEqual(err, undefined)"
|
|
},
|
|
{
|
|
"id": "node-builtin.assert.strict.rejects",
|
|
"kind": "node-builtin",
|
|
"name": "assert/strict.rejects",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "await the promise inside assert.throws's callback story instead: try { await p; assert.fail(\"expected rejection\") } catch { ... }"
|
|
},
|
|
{
|
|
"id": "node-builtin.async_hooks",
|
|
"kind": "node-builtin",
|
|
"name": "async_hooks",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.buffer",
|
|
"kind": "node-builtin",
|
|
"name": "buffer",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process",
|
|
"kind": "node-builtin",
|
|
"name": "child_process",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process.execFile",
|
|
"kind": "node-builtin",
|
|
"name": "child_process.execFile",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the callback form has no lowering — promisify it: const execFileAsync = promisify(execFile) (from node:util), or use execFileSync"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process.execFileSync",
|
|
"kind": "node-builtin",
|
|
"name": "child_process.execFileSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process.execSync",
|
|
"kind": "node-builtin",
|
|
"name": "child_process.execSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process.spawn",
|
|
"kind": "node-builtin",
|
|
"name": "child_process.spawn",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.child_process.spawnSync",
|
|
"kind": "node-builtin",
|
|
"name": "child_process.spawnSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.cluster",
|
|
"kind": "node-builtin",
|
|
"name": "cluster",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.cluster.isMaster",
|
|
"kind": "node-builtin",
|
|
"name": "cluster.isMaster",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.cluster.isPrimary",
|
|
"kind": "node-builtin",
|
|
"name": "cluster.isPrimary",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.cluster.isWorker",
|
|
"kind": "node-builtin",
|
|
"name": "cluster.isWorker",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto",
|
|
"kind": "node-builtin",
|
|
"name": "crypto",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createCipheriv",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createCipheriv",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createDecipheriv",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createDecipheriv",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createDiffieHellman",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createDiffieHellman",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createDiffieHellmanGroup",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createDiffieHellmanGroup",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createECDH",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createECDH",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createHash",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createHash",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the one lowered shape is the composed chain createHash(\"sha256\").update(data).digest(\"hex\") — the Hash handle itself has no lowering"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createHmac",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createHmac",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "HMAC has no lowering yet — the lowered crypto surface is randomUUID, randomBytes, the createHash(\"sha256\"|\"sha1\") chain, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createPrivateKey",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createPrivateKey",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createPublicKey",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createPublicKey",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createSecretKey",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createSecretKey",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createSign",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createSign",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.createVerify",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.createVerify",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.diffieHellman",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.diffieHellman",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.generateKey",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.generateKey",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.generateKeyPair",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.generateKeyPair",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.generateKeyPairSync",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.generateKeyPairSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.generateKeySync",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.generateKeySync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.getCipherInfo",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.getCipherInfo",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "symmetric ciphers need a cipher stack the static runtime does not vendor — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.getDiffieHellman",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.getDiffieHellman",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.hash",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.hash",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the one-shot digest has no lowering — the composed chain createHash(\"sha256\").update(data).digest(\"hex\") is the lowered hashing surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.hkdf",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.hkdf",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.hkdfSync",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.hkdfSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.pbkdf2",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.pbkdf2",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.pbkdf2Sync",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.pbkdf2Sync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.privateDecrypt",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.privateDecrypt",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.privateEncrypt",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.privateEncrypt",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.publicDecrypt",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.publicDecrypt",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.publicEncrypt",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.publicEncrypt",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.randomBytes",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.randomBytes",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.randomUUID",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.randomUUID",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.scrypt",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.scrypt",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.scryptSync",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.scryptSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "key-derivation functions have no lowering yet — the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.setFips",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.setFips",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "a compiled binary has no FIPS provider to enable, and Node itself throws on setFips(true) in a non-FIPS build — getFips() answers 0 here"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.sign",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.sign",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.verify",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.verify",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "asymmetric-key operations need a public-key stack (bignum, RSA/EC/EdDSA math) and a KeyObject value model — neither exists in the static runtime, so no faithful lowering can be small; the lowered crypto surface is hashing, randomness, and the introspection statics"
|
|
},
|
|
{
|
|
"id": "node-builtin.crypto.webcrypto",
|
|
"kind": "node-builtin",
|
|
"name": "crypto.webcrypto",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the WebCrypto object has no lowering — the lowered crypto surface is randomUUID, randomBytes, and the createHash chain"
|
|
},
|
|
{
|
|
"id": "node-builtin.dgram",
|
|
"kind": "node-builtin",
|
|
"name": "dgram",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel.channel",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel.channel",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel.hasSubscribers",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel.hasSubscribers",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel.subscribe",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel.subscribe",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel.tracingChannel",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel.tracingChannel",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.diagnostics_channel.unsubscribe",
|
|
"kind": "node-builtin",
|
|
"name": "diagnostics_channel.unsubscribe",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.dns",
|
|
"kind": "node-builtin",
|
|
"name": "dns",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.events",
|
|
"kind": "node-builtin",
|
|
"name": "events",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs",
|
|
"kind": "node-builtin",
|
|
"name": "fs",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.accessSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.accessSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.appendFileSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.appendFileSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.chmodSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.chmodSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.chownSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.chownSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.closeSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.closeSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.copyFileSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.copyFileSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.existsSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.existsSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.lstatSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.lstatSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.mkdirSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.mkdirSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.mkdtempSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.mkdtempSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.openSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.openSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.chmod",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.chmod",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.mkdir",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.mkdir",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.readFile",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.readFile",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.readdir",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.readdir",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.rm",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.rm",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.stat",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.stat",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.unlink",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.unlink",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.promises.writeFile",
|
|
"kind": "node-builtin",
|
|
"name": "fs/promises.writeFile",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.readFileSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.readFileSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.readSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.readSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.readdirSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.readdirSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.realpathSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.realpathSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.rmSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.rmSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.rmdirSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.rmdirSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.statSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.statSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.unlinkSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.unlinkSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.watch",
|
|
"kind": "node-builtin",
|
|
"name": "fs.watch",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.fs.writeFileSync",
|
|
"kind": "node-builtin",
|
|
"name": "fs.writeFileSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.http",
|
|
"kind": "node-builtin",
|
|
"name": "http",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.http2",
|
|
"kind": "node-builtin",
|
|
"name": "http2",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.http2.connect",
|
|
"kind": "node-builtin",
|
|
"name": "http2.connect",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "HTTP/2 client sessions have no lowering — the lowered http2 surface is the SERVER side: createSecureServer({ allowHTTP1: true, cert, key }), which serves HTTP/1.1 only (ALPN never offers h2 — h2-capable clients negotiate down); an HTTP/1.1 client is https.request"
|
|
},
|
|
{
|
|
"id": "node-builtin.http2.createServer",
|
|
"kind": "node-builtin",
|
|
"name": "http2.createServer",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "cleartext (h2c) servers have no lowering — the lowered http2 surface is createSecureServer({ allowHTTP1: true, cert, key }), which serves HTTP/1.1 over TLS (plain HTTP/1.1 is http.createServer)"
|
|
},
|
|
{
|
|
"id": "node-builtin.https",
|
|
"kind": "node-builtin",
|
|
"name": "https",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.module",
|
|
"kind": "node-builtin",
|
|
"name": "module",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.module.createRequire",
|
|
"kind": "node-builtin",
|
|
"name": "module.createRequire",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the lowered shape is a const binding over createRequire(import.meta.url) (or __filename) whose require calls take STATIC string literals — builtins, relative .json documents, and installed npm packages (under --dynamic) resolve at build time; dynamic specifiers cannot exist in a compiled binary's fixed module graph"
|
|
},
|
|
{
|
|
"id": "node-builtin.module.isBuiltin",
|
|
"kind": "node-builtin",
|
|
"name": "module.isBuiltin",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "builtinModules.includes(name) answers the same question over the baked list (strip a node: prefix first; the prefix-only builtins appear with it, as node:test)"
|
|
},
|
|
{
|
|
"id": "node-builtin.module.syncBuiltinESMExports",
|
|
"kind": "node-builtin",
|
|
"name": "module.syncBuiltinESMExports",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "a compiled program has no live builtin ESM namespace bindings to synchronize — nothing a compiled surface can mutate makes the call observable; remove it"
|
|
},
|
|
{
|
|
"id": "node-builtin.net",
|
|
"kind": "node-builtin",
|
|
"name": "net",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.net.getDefaultAutoSelectFamilyAttemptTimeout",
|
|
"kind": "node-builtin",
|
|
"name": "net.getDefaultAutoSelectFamilyAttemptTimeout",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.net.setDefaultAutoSelectFamilyAttemptTimeout",
|
|
"kind": "node-builtin",
|
|
"name": "net.setDefaultAutoSelectFamilyAttemptTimeout",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os",
|
|
"kind": "node-builtin",
|
|
"name": "os",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.EOL",
|
|
"kind": "node-builtin",
|
|
"name": "os.EOL",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.homedir",
|
|
"kind": "node-builtin",
|
|
"name": "os.homedir",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.networkInterfaces",
|
|
"kind": "node-builtin",
|
|
"name": "os.networkInterfaces",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.platform",
|
|
"kind": "node-builtin",
|
|
"name": "os.platform",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.release",
|
|
"kind": "node-builtin",
|
|
"name": "os.release",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.tmpdir",
|
|
"kind": "node-builtin",
|
|
"name": "os.tmpdir",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.totalmem",
|
|
"kind": "node-builtin",
|
|
"name": "os.totalmem",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.type",
|
|
"kind": "node-builtin",
|
|
"name": "os.type",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.os.userInfo",
|
|
"kind": "node-builtin",
|
|
"name": "os.userInfo",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path",
|
|
"kind": "node-builtin",
|
|
"name": "path",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.basename",
|
|
"kind": "node-builtin",
|
|
"name": "path.basename",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.delimiter",
|
|
"kind": "node-builtin",
|
|
"name": "path.delimiter",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.dirname",
|
|
"kind": "node-builtin",
|
|
"name": "path.dirname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.extname",
|
|
"kind": "node-builtin",
|
|
"name": "path.extname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.isAbsolute",
|
|
"kind": "node-builtin",
|
|
"name": "path.isAbsolute",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.join",
|
|
"kind": "node-builtin",
|
|
"name": "path.join",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.normalize",
|
|
"kind": "node-builtin",
|
|
"name": "path.normalize",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.basename",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.basename",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.delimiter",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.delimiter",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.dirname",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.dirname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.extname",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.extname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.isAbsolute",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.isAbsolute",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.join",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.join",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.normalize",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.normalize",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.relative",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.relative",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.resolve",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.resolve",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.sep",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.sep",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.posix.toNamespacedPath",
|
|
"kind": "node-builtin",
|
|
"name": "path/posix.toNamespacedPath",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.relative",
|
|
"kind": "node-builtin",
|
|
"name": "path.relative",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.resolve",
|
|
"kind": "node-builtin",
|
|
"name": "path.resolve",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.sep",
|
|
"kind": "node-builtin",
|
|
"name": "path.sep",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.toNamespacedPath",
|
|
"kind": "node-builtin",
|
|
"name": "path.toNamespacedPath",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.basename",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.basename",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.delimiter",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.delimiter",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.dirname",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.dirname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.extname",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.extname",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.isAbsolute",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.isAbsolute",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.join",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.join",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.normalize",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.normalize",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.relative",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.relative",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.resolve",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.resolve",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.sep",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.sep",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.path.win32.toNamespacedPath",
|
|
"kind": "node-builtin",
|
|
"name": "path/win32.toNamespacedPath",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.perf_hooks",
|
|
"kind": "node-builtin",
|
|
"name": "perf_hooks",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.perf_hooks.performance.now",
|
|
"kind": "node-builtin",
|
|
"name": "perf_hooks.performance.now",
|
|
"status": "static",
|
|
"note": "the global performance object and the performance.now.bind(performance) function value reach the same clock"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.argv",
|
|
"kind": "node-builtin",
|
|
"name": "process.argv",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.availableMemory",
|
|
"kind": "node-builtin",
|
|
"name": "process.availableMemory",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.chdir",
|
|
"kind": "node-builtin",
|
|
"name": "process.chdir",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.columns",
|
|
"kind": "node-builtin",
|
|
"name": "process.columns",
|
|
"status": "static",
|
|
"note": "the columns read on the process stdio streams (terminal geometry)"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.constrainedMemory",
|
|
"kind": "node-builtin",
|
|
"name": "process.constrainedMemory",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.cpuUsage",
|
|
"kind": "node-builtin",
|
|
"name": "process.cpuUsage",
|
|
"status": "static",
|
|
"note": "the plain-sample and previous-value diff forms are one surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.cwd",
|
|
"kind": "node-builtin",
|
|
"name": "process.cwd",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.env",
|
|
"kind": "node-builtin",
|
|
"name": "process.env",
|
|
"status": "static",
|
|
"note": "reads, writes, deletes, and enumeration of the process environment (the process global)"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.execPath",
|
|
"kind": "node-builtin",
|
|
"name": "process.execPath",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.exit",
|
|
"kind": "node-builtin",
|
|
"name": "process.exit",
|
|
"status": "static",
|
|
"note": "process.exit and the process._exiting flag read are one surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.getgid",
|
|
"kind": "node-builtin",
|
|
"name": "process.getgid",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.getuid",
|
|
"kind": "node-builtin",
|
|
"name": "process.getuid",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.isTTY",
|
|
"kind": "node-builtin",
|
|
"name": "process.isTTY",
|
|
"status": "static",
|
|
"note": "the isTTY read on process.stdin/stdout/stderr — one surface across the three streams"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.kill",
|
|
"kind": "node-builtin",
|
|
"name": "process.kill",
|
|
"status": "static",
|
|
"note": "the signal-name and signal-number forms are one surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.pid",
|
|
"kind": "node-builtin",
|
|
"name": "process.pid",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.resourceUsage",
|
|
"kind": "node-builtin",
|
|
"name": "process.resourceUsage",
|
|
"status": "static",
|
|
"note": "getrusage's 16 fields — every field read samples live machine state"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.threadCpuUsage",
|
|
"kind": "node-builtin",
|
|
"name": "process.threadCpuUsage",
|
|
"status": "static",
|
|
"note": "the plain-sample and previous-value diff forms are one surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.umask",
|
|
"kind": "node-builtin",
|
|
"name": "process.umask",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.process.uptime",
|
|
"kind": "node-builtin",
|
|
"name": "process.uptime",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring",
|
|
"kind": "node-builtin",
|
|
"name": "querystring",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.decode",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.decode",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.encode",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.encode",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.escape",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.escape",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.parse",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.parse",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.stringify",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.stringify",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.querystring.unescape",
|
|
"kind": "node-builtin",
|
|
"name": "querystring.unescape",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.readline",
|
|
"kind": "node-builtin",
|
|
"name": "readline",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.readline.createInterface",
|
|
"kind": "node-builtin",
|
|
"name": "readline.createInterface",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.stream",
|
|
"kind": "node-builtin",
|
|
"name": "stream",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.stream.consumers",
|
|
"kind": "node-builtin",
|
|
"name": "stream/consumers",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.stream.consumers.arrayBuffer",
|
|
"kind": "node-builtin",
|
|
"name": "stream/consumers.arrayBuffer",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "no free-standing ArrayBuffer value exists here (typed arrays own their storage) — buffer(stream) collects the same bytes as a Buffer"
|
|
},
|
|
{
|
|
"id": "node-builtin.stream.consumers.blob",
|
|
"kind": "node-builtin",
|
|
"name": "stream/consumers.blob",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "Blob values have no representation in a compiled binary — buffer(stream) collects the same bytes as a Buffer, text(stream) the decoded text"
|
|
},
|
|
{
|
|
"id": "node-builtin.stream.promises",
|
|
"kind": "node-builtin",
|
|
"name": "stream/promises",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.string_decoder",
|
|
"kind": "node-builtin",
|
|
"name": "string_decoder",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.test",
|
|
"kind": "node-builtin",
|
|
"name": "node:test",
|
|
"status": "static",
|
|
"note": "recognized module (node:-prefixed specifier only, matching Node)"
|
|
},
|
|
{
|
|
"id": "node-builtin.timers",
|
|
"kind": "node-builtin",
|
|
"name": "timers",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.timers.promises",
|
|
"kind": "node-builtin",
|
|
"name": "timers/promises",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.timers.promises.setImmediate",
|
|
"kind": "node-builtin",
|
|
"name": "timers/promises.setImmediate",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.timers.promises.setTimeout",
|
|
"kind": "node-builtin",
|
|
"name": "timers/promises.setTimeout",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls",
|
|
"kind": "node-builtin",
|
|
"name": "tls",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls.connect",
|
|
"kind": "node-builtin",
|
|
"name": "tls.connect",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the lowered TLS client is https.request({ hostname, port, path, method, ca?, rejectUnauthorized? }); raw tls.connect sockets have no lowering yet"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls.createSecureContext",
|
|
"kind": "node-builtin",
|
|
"name": "tls.createSecureContext",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the lowered form is createSecureContext({ cert, key }) — an opaque SecureContext handle for SNI callbacks (http2.createSecureServer accepts SNICallback); other options fence by name"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls.getCACertificates",
|
|
"kind": "node-builtin",
|
|
"name": "tls.getCACertificates",
|
|
"status": "static",
|
|
"note": "the per-type cached PEM bundle: 'default' and 'extra' additionally read NODE_EXTRA_CA_CERTS, 'system' the platform store"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls.rootCertificates",
|
|
"kind": "node-builtin",
|
|
"name": "tls.rootCertificates",
|
|
"status": "static",
|
|
"note": "the value read; answers the same bundled array as getCACertificates('bundled'), but fenced under its own id — the spelling an author writes"
|
|
},
|
|
{
|
|
"id": "node-builtin.tls.setDefaultCACertificates",
|
|
"kind": "node-builtin",
|
|
"name": "tls.setDefaultCACertificates",
|
|
"status": "static",
|
|
"note": "replaces the default set and the client trust anchors for the rest of the process"
|
|
},
|
|
{
|
|
"id": "node-builtin.tty",
|
|
"kind": "node-builtin",
|
|
"name": "tty",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.url",
|
|
"kind": "node-builtin",
|
|
"name": "url",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.url.fileURLToPath",
|
|
"kind": "node-builtin",
|
|
"name": "url.fileURLToPath",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.url.pathToFileURL",
|
|
"kind": "node-builtin",
|
|
"name": "url.pathToFileURL",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.util",
|
|
"kind": "node-builtin",
|
|
"name": "util",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.util.promisify",
|
|
"kind": "node-builtin",
|
|
"name": "util.promisify",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "the one lowered shape is a const binding over child_process.execFile: const execFileAsync = promisify(execFile), then call execFileAsync directly"
|
|
},
|
|
{
|
|
"id": "node-builtin.util.types",
|
|
"kind": "node-builtin",
|
|
"name": "util/types",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.worker_threads",
|
|
"kind": "node-builtin",
|
|
"name": "worker_threads",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.worker_threads.isMainThread",
|
|
"kind": "node-builtin",
|
|
"name": "worker_threads.isMainThread",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.worker_threads.threadId",
|
|
"kind": "node-builtin",
|
|
"name": "worker_threads.threadId",
|
|
"status": "static",
|
|
"note": "constant value read"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib",
|
|
"kind": "node-builtin",
|
|
"name": "zlib",
|
|
"status": "static",
|
|
"note": "recognized module (bare and node:-prefixed specifiers)"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.brotliCompressSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.brotliCompressSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "deflateSync and inflateSync are the lowered zlib surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.brotliDecompressSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.brotliDecompressSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "deflateSync and inflateSync are the lowered zlib surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.deflateSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.deflateSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.gunzipSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.gunzipSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "deflateSync and inflateSync are the lowered zlib surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.gzipSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.gzipSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "deflateSync and inflateSync are the lowered zlib surface"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.inflateSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.inflateSync",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "node-builtin.zlib.unzipSync",
|
|
"kind": "node-builtin",
|
|
"name": "zlib.unzipSync",
|
|
"status": "unsupported",
|
|
"code": "SC2020",
|
|
"note": "deflateSync and inflateSync are the lowered zlib surface"
|
|
},
|
|
{
|
|
"id": "stdlib.array.at",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.at",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.concat",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.concat",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.every",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.every",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.filter",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.filter",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.find",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.find",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.findIndex",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.findIndex",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.findLast",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.findLast",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.findLastIndex",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.findLastIndex",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.flatMap",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.flatMap",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.forEach",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.forEach",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.includes",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.includes",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.indexOf",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.indexOf",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.join",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.join",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.map",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.map",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.pop",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.pop",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.push",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.push",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.reduce",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.reduce",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.reduceRight",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.reduceRight",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.slice",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.slice",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.some",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.some",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.toReversed",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.toReversed",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.toSorted",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.toSorted",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.toSpliced",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.toSpliced",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.array.with",
|
|
"kind": "stdlib",
|
|
"name": "Array.prototype.with",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.date.UTC",
|
|
"kind": "stdlib",
|
|
"name": "Date.UTC",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 7 number arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.date.getTime",
|
|
"kind": "stdlib",
|
|
"name": "Date.prototype.getTime",
|
|
"status": "static",
|
|
"note": "the composed new Date(dateString).getTime() form; new Date().getTime() is stdlib.date.now's surface"
|
|
},
|
|
{
|
|
"id": "stdlib.date.now",
|
|
"kind": "stdlib",
|
|
"name": "Date.now",
|
|
"status": "static",
|
|
"note": "the live clock; the zero-argument new Date() compositions read it too"
|
|
},
|
|
{
|
|
"id": "stdlib.date.toISOString",
|
|
"kind": "stdlib",
|
|
"name": "Date.prototype.toISOString",
|
|
"status": "static",
|
|
"note": "the composed new Date(ms?).toISOString() form"
|
|
},
|
|
{
|
|
"id": "stdlib.map.clear",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.clear",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.map.delete",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.delete",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.map.forEach",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.forEach",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.map.get",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.get",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.map.has",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.has",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.map.set",
|
|
"kind": "stdlib",
|
|
"name": "Map.prototype.set",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.math.E",
|
|
"kind": "stdlib",
|
|
"name": "Math.E",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.PI",
|
|
"kind": "stdlib",
|
|
"name": "Math.PI",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.abs",
|
|
"kind": "stdlib",
|
|
"name": "Math.abs",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)"
|
|
},
|
|
{
|
|
"id": "stdlib.math.acos",
|
|
"kind": "stdlib",
|
|
"name": "Math.acos",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.asin",
|
|
"kind": "stdlib",
|
|
"name": "Math.asin",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.atan",
|
|
"kind": "stdlib",
|
|
"name": "Math.atan",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.atan2",
|
|
"kind": "stdlib",
|
|
"name": "Math.atan2",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.cbrt",
|
|
"kind": "stdlib",
|
|
"name": "Math.cbrt",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.ceil",
|
|
"kind": "stdlib",
|
|
"name": "Math.ceil",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)"
|
|
},
|
|
{
|
|
"id": "stdlib.math.cos",
|
|
"kind": "stdlib",
|
|
"name": "Math.cos",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.exp",
|
|
"kind": "stdlib",
|
|
"name": "Math.exp",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.floor",
|
|
"kind": "stdlib",
|
|
"name": "Math.floor",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 1"
|
|
},
|
|
{
|
|
"id": "stdlib.math.hypot",
|
|
"kind": "stdlib",
|
|
"name": "Math.hypot",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.log",
|
|
"kind": "stdlib",
|
|
"name": "Math.log",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.log10",
|
|
"kind": "stdlib",
|
|
"name": "Math.log10",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.log2",
|
|
"kind": "stdlib",
|
|
"name": "Math.log2",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.max",
|
|
"kind": "stdlib",
|
|
"name": "Math.max",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 2"
|
|
},
|
|
{
|
|
"id": "stdlib.math.min",
|
|
"kind": "stdlib",
|
|
"name": "Math.min",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 2"
|
|
},
|
|
{
|
|
"id": "stdlib.math.pow",
|
|
"kind": "stdlib",
|
|
"name": "Math.pow",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.random",
|
|
"kind": "stdlib",
|
|
"name": "Math.random",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 0"
|
|
},
|
|
{
|
|
"id": "stdlib.math.round",
|
|
"kind": "stdlib",
|
|
"name": "Math.round",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)"
|
|
},
|
|
{
|
|
"id": "stdlib.math.sign",
|
|
"kind": "stdlib",
|
|
"name": "Math.sign",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.sin",
|
|
"kind": "stdlib",
|
|
"name": "Math.sin",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.sqrt",
|
|
"kind": "stdlib",
|
|
"name": "Math.sqrt",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.tan",
|
|
"kind": "stdlib",
|
|
"name": "Math.tan",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.math.trunc",
|
|
"kind": "stdlib",
|
|
"name": "Math.trunc",
|
|
"status": "static",
|
|
"note": "compiles statically at arity 1; other declared call shapes run only in the embedded dynamic engine (SC2012 without --dynamic)"
|
|
},
|
|
{
|
|
"id": "stdlib.number.toFixed",
|
|
"kind": "stdlib",
|
|
"name": "number.prototype.toFixed",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 0 to 1 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.number.toPrecision",
|
|
"kind": "stdlib",
|
|
"name": "number.prototype.toPrecision",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.number.toString",
|
|
"kind": "stdlib",
|
|
"name": "number.prototype.toString",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.set.add",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.add",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.set.clear",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.clear",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.set.delete",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.delete",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.set.difference",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.difference",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.forEach",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.forEach",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.set.has",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.has",
|
|
"status": "static"
|
|
},
|
|
{
|
|
"id": "stdlib.set.intersection",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.intersection",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.isDisjointFrom",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.isDisjointFrom",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.isSubsetOf",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.isSubsetOf",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.isSupersetOf",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.isSupersetOf",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.symmetricDifference",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.symmetricDifference",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.set.union",
|
|
"kind": "stdlib",
|
|
"name": "Set.prototype.union",
|
|
"status": "static",
|
|
"note": "compiles over Set receivers with Set arguments (the general ReadonlySetLike argument forms are refused per site)"
|
|
},
|
|
{
|
|
"id": "stdlib.string.at",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.at",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.string.charAt",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.charAt",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.charCodeAt",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.charCodeAt",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.endsWith",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.endsWith",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.includes",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.includes",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.indexOf",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.indexOf",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.isWellFormed",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.isWellFormed",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.padEnd",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.padEnd",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.padStart",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.padStart",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.repeat",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.repeat",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.replace",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.replace",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.string.replaceAll",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.replaceAll",
|
|
"status": "dynamic-only",
|
|
"code": "SC2012"
|
|
},
|
|
{
|
|
"id": "stdlib.string.slice",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.slice",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 0 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.split",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.split",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.startsWith",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.startsWith",
|
|
"status": "static",
|
|
"note": "the lowered call form takes exactly 1 argument"
|
|
},
|
|
{
|
|
"id": "stdlib.string.substring",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.substring",
|
|
"status": "static",
|
|
"note": "the lowered call form takes 1 to 2 arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.toLowerCase",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.toLowerCase",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.toUpperCase",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.toUpperCase",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.toWellFormed",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.toWellFormed",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.trim",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.trim",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.trimEnd",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.trimEnd",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.trimLeft",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.trimLeft",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.trimRight",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.trimRight",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "stdlib.string.trimStart",
|
|
"kind": "stdlib",
|
|
"name": "string.prototype.trimStart",
|
|
"status": "static",
|
|
"note": "the lowered call form takes no arguments"
|
|
},
|
|
{
|
|
"id": "syntax.class-declarations-inside-functions",
|
|
"kind": "syntax",
|
|
"name": "class declarations inside functions",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.class-expressions",
|
|
"kind": "syntax",
|
|
"name": "class expressions",
|
|
"status": "unsupported",
|
|
"code": "SC1020"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.bitwise-and",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '&='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '&' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.bitwise-or",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '|='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '|' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.bitwise-xor",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '^='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '^' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.divide",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '/='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '/' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.exponent",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '**='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '**' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.minus",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '-='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '-' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.plus",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '+='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '+' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.remainder",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '%='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '%' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.shift-left",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '<<='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '<<' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.shift-right",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '>>='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '>>' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.shift-right-unsigned",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '>>>='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '>>>' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.compound-assignment.times",
|
|
"kind": "syntax",
|
|
"name": "compound assignment operator '*='",
|
|
"status": "static",
|
|
"note": "compiles over the operand types the '*' operator supports"
|
|
},
|
|
{
|
|
"id": "syntax.debugger-statements",
|
|
"kind": "syntax",
|
|
"name": "debugger statements",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.delete-expressions",
|
|
"kind": "syntax",
|
|
"name": "delete expressions",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.namespaces",
|
|
"kind": "syntax",
|
|
"name": "namespaces",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.spread-arguments",
|
|
"kind": "syntax",
|
|
"name": "spread arguments",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.typeof-expressions",
|
|
"kind": "syntax",
|
|
"name": "typeof expressions",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
},
|
|
{
|
|
"id": "syntax.with-statements",
|
|
"kind": "syntax",
|
|
"name": "'with' statements (runtime scope injection has no static resolution — bind the object to a variable and read members through it)",
|
|
"status": "unsupported",
|
|
"code": "SC1090"
|
|
}
|
|
]
|
|
}
|