mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-22 05:59:31 +08:00
Pin Node v24.22.0 (commit f14cd3aa7bf9, Undici 7.29.1, OpenSSL 3.5.8) in .node-version, Dockerfile.sandbox, the docs matrix fallback, the compatibility pin, the fetch profile, and process.version. A node-pin test checks that these pins agree. The Node compatibility snapshot is regenerated from the v24.22.0 API docs; the new stream_iter chapter maps to node:stream/iter, and the SuiteContext rows no longer match the TestContext evidence. Runtime and compiler changes follow Node 24.22 behavior: - fs.read, fs.readSync, and FileHandle.read validate the position before the zero-length return. - fs.statfs results include frsize; Windows reads FileFsFullSizeInformation and reports bfree and bavail separately. - fs.utimes, futimes, and lutimes keep nanosecond precision. - ServerResponse sets writableFinished where 'finish' is emitted and runs end() callbacks before the 'finish' listeners while the socket is still attached; a request read to 'end' closes before its response. - socket.write(string, 'buffer') throws ERR_UNKNOWN_ENCODING. - URL protocol-setter rejections keep the current URL, the host setter no longer leaves a "/." escape when it adds a port to a "//" path, and new URLSearchParams(null) parses "null". - util.stripVTControlCharacters uses Node 24.22's ANSI pattern, util.styleText accepts #RGB and #RRGGBB colors, and util.types.isDataView has its JS name and length. - structuredClone and AbortSignal.any use the "cannot be converted to sequence" message. - crypto.getCiphers, getHashes, and constants match Node 24.22. - dns.lookup, net.connect, and tls.connect throw ERR_INVALID_ARG_VALUE for hosts with null bytes. - fs.readFile validates options.buffer and refuses its valid forms; httpValidation and certificateCompression refuse by name. - url.domainToASCII, url.domainToUnicode, and url.parse hostnames follow ada 4.0: ASCII domains are lowercased without checking their xn-- labels, the RFC 5893 rule checks how LTR labels end and how RTL labels start, a Punycode label whose decoded form begins with "xn--" fails, and ToUnicode decodes only labels that pass the ToASCII checks. The url legacy test cases are regenerated with Node 24.22. Corpus programs 5275-5279 cover the new behavior. 1640, 2283, 2599, and 3136 are updated where they pinned Node 24.15 output.
59 lines
1.9 KiB
JSON
59 lines
1.9 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"version": "24.22.0",
|
|
"tag": "v24.22.0",
|
|
"commit": "f14cd3aa7bf9ca8df2cc5b8bb14beb0f335b1d93",
|
|
"allJsonUrl": "https://nodejs.org/download/release/v24.22.0/docs/api/all.json",
|
|
"indexMarkdownUrl": "https://nodejs.org/docs/v24.22.0/api/index.md",
|
|
"markdownBaseUrl": "https://nodejs.org/docs/v24.22.0/api/",
|
|
"sourceBaseUrl": "https://github.com/nodejs/node/tree/f14cd3aa7bf9ca8df2cc5b8bb14beb0f335b1d93",
|
|
"chapterModules": {
|
|
"assert": ["assert", "assert/strict"],
|
|
"async_context": ["async_hooks"],
|
|
"async_hooks": ["async_hooks"],
|
|
"buffer": ["buffer"],
|
|
"child_process": ["child_process"],
|
|
"cluster": ["cluster"],
|
|
"console": ["console"],
|
|
"crypto": ["crypto"],
|
|
"diagnostics_channel": ["diagnostics_channel"],
|
|
"dns": ["dns", "dns/promises"],
|
|
"domain": ["domain"],
|
|
"events": ["events"],
|
|
"fs": ["fs", "fs/promises"],
|
|
"http": ["http"],
|
|
"http2": ["http2"],
|
|
"https": ["https"],
|
|
"inspector": ["inspector", "inspector/promises"],
|
|
"module": ["module"],
|
|
"net": ["net"],
|
|
"os": ["os"],
|
|
"path": ["path", "path/posix", "path/win32"],
|
|
"perf_hooks": ["perf_hooks"],
|
|
"process": ["process"],
|
|
"punycode": ["punycode"],
|
|
"querystring": ["querystring"],
|
|
"readline": ["readline", "readline/promises"],
|
|
"repl": ["repl"],
|
|
"sqlite": ["sqlite"],
|
|
"stream": ["stream", "stream/promises", "stream/consumers", "stream/web"],
|
|
"stream_iter": ["stream/iter"],
|
|
"string_decoder": ["string_decoder"],
|
|
"test": ["test", "test/reporters"],
|
|
"timers": ["timers", "timers/promises"],
|
|
"tls": ["tls"],
|
|
"tracing": ["trace_events"],
|
|
"tty": ["tty"],
|
|
"dgram": ["dgram"],
|
|
"url": ["url"],
|
|
"util": ["util", "util/types"],
|
|
"v8": ["v8"],
|
|
"vm": ["vm"],
|
|
"wasi": ["wasi"],
|
|
"webcrypto": ["crypto"],
|
|
"webstreams": ["stream/web"],
|
|
"worker_threads": ["worker_threads"],
|
|
"zlib": ["zlib"]
|
|
}
|
|
}
|