mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-11-05 08:13:06 +08:00
readFileSync, writeFileSync, appendFileSync, statSync, lstatSync, readdirSync, mkdirSync, rmSync, rmdirSync, mkdtempSync, accessSync, unlinkSync, chmodSync, chownSync, lchownSync, truncateSync, copyFileSync, renameSync, realpathSync, realpathSync.native, openSync and opendirSync accept a file: URL wherever they accept a path. The URL converts as fileURLToPath converts it, with Node's errors for other schemes, hosts, encoded separators and null bytes. Arguments after a URL path that have side effects are evaluated into hidden locals before the conversion, so they run even when it throws. A URL path after a string path, or with options that are not literals, fails with SC2020, because Node checks those arguments before it converts the URL. existsSync and the fs.promises functions also fail with SC2020 for URL paths: existsSync answers false for a URL it cannot convert, and fs.promises reports conversion errors as rejections. Fixes #1616 Co-authored-by: jlucaso1 <55464917+jlucaso1@users.noreply.github.com>
284 lines
7.3 KiB
Plaintext
284 lines
7.3 KiB
Plaintext
---
|
|
title: "Limitations"
|
|
---
|
|
|
|
<include>../limitations/introduction.mdx</include>
|
|
|
|
<span id="static-compilation" />
|
|
|
|
## Language and API restrictions
|
|
|
|
<include>../limitations/language-and-api-restrictions.mdx</include>
|
|
|
|
### Language features
|
|
|
|
<include>../limitations/language-features/error-causes.mdx</include>
|
|
|
|
<include>../limitations/language-features/class-reflection.mdx</include>
|
|
|
|
<include>../limitations/language-features/method-values.mdx</include>
|
|
|
|
<include>../limitations/language-features/loose-equality.mdx</include>
|
|
|
|
<include>../limitations/language-features/resource-disposal.mdx</include>
|
|
|
|
<include>../limitations/language-features/async-iteration.mdx</include>
|
|
|
|
<include>../limitations/language-features/generics.mdx</include>
|
|
|
|
<include>../limitations/language-features/function-values.mdx</include>
|
|
|
|
<include>../limitations/language-features/argument-spreads.mdx</include>
|
|
|
|
<include>../limitations/language-features/dynamic-imports.mdx</include>
|
|
|
|
<include>../limitations/language-features/commonjs-require.mdx</include>
|
|
|
|
### Types and class definitions
|
|
|
|
<include>../limitations/types-and-class-definitions/bigint.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/interfaces.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/record-shapes.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/unions.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/null-and-optional-values.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/static-field-updates.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/local-class-expressions.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/constructor-function-inheritance.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions/symbol-fields.mdx</include>
|
|
|
|
<include>../limitations/types-and-class-definitions.mdx</include>
|
|
|
|
### Builtin APIs
|
|
|
|
<include>../limitations/builtin-apis.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/text-encoding.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/eventemitter.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/asynclocalstorage.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/streams-and-readline.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/commonjs-metadata.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/esm-metadata.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/date.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/url.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/legacy-url-api.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/deprecated-modules.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/filesystem-flags.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/filesystem-url-paths.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/copy.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/glob.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/filehandle-and-descriptor-i-o.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/file-streams.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/crypto.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/assertions.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/test-runner.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/test-mocks.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/exit-status.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/process-memory.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/v8.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/performance-entries.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/builtin-module-lookup.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/arraybuffers-and-typed-arrays.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/blob-and-file.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/prototypes.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/intl-segmenter.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/globals.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/map-and-set.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/compression.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/synchronous-iteration.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/iterator-helpers.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/regular-expressions.mdx</include>
|
|
|
|
<include>../limitations/builtin-apis/object-freezing.mdx</include>
|
|
|
|
### Builtin function values
|
|
|
|
<include>../limitations/builtin-function-values.mdx</include>
|
|
|
|
### Native worker threads
|
|
|
|
<include>../limitations/native-worker-threads.mdx</include>
|
|
|
|
### Child-process workers
|
|
|
|
<include>../limitations/child-process-workers.mdx</include>
|
|
|
|
### Untyped values
|
|
|
|
<include>../limitations/untyped-values.mdx</include>
|
|
|
|
### Type checking
|
|
|
|
<include>../limitations/type-checking.mdx</include>
|
|
|
|
### Contract types
|
|
|
|
<include>../limitations/contract-types.mdx</include>
|
|
|
|
### three.js
|
|
|
|
<include>../limitations/three-js.mdx</include>
|
|
|
|
## Runtime differences from Node.js
|
|
|
|
<include>../limitations/runtime-differences-from-node-js.mdx</include>
|
|
|
|
### Array bounds and runtime errors
|
|
|
|
<include>../limitations/array-bounds-and-runtime-errors.mdx</include>
|
|
|
|
### Runtime type checks
|
|
|
|
<include>../limitations/runtime-type-checks.mdx</include>
|
|
|
|
### Record identity and property order
|
|
|
|
<include>../limitations/record-identity-and-property-order.mdx</include>
|
|
|
|
### Buffer construction
|
|
|
|
<include>../limitations/buffer-construction.mdx</include>
|
|
|
|
### readable-stream
|
|
|
|
<include>../limitations/readable-stream.mdx</include>
|
|
|
|
### HTTP headers
|
|
|
|
<include>../limitations/http-headers.mdx</include>
|
|
|
|
### JSON callbacks
|
|
|
|
<include>../limitations/json-callbacks.mdx</include>
|
|
|
|
### Strings and sorting
|
|
|
|
<include>../limitations/strings-and-sorting.mdx</include>
|
|
|
|
### Published graphs
|
|
|
|
<include>../limitations/published-graphs.mdx</include>
|
|
|
|
### Dates and timezones
|
|
|
|
<include>../limitations/dates-and-timezones.mdx</include>
|
|
|
|
### Weak collections and memory
|
|
|
|
<include>../limitations/weak-collections-and-memory.mdx</include>
|
|
|
|
### Foreign-thread callbacks
|
|
|
|
<include>../limitations/foreign-thread-callbacks.mdx</include>
|
|
|
|
### TLS ciphers
|
|
|
|
<include>../limitations/tls-ciphers.mdx</include>
|
|
|
|
### Console and process streams
|
|
|
|
<include>../limitations/console-and-process-streams.mdx</include>
|
|
|
|
### graceful-fs
|
|
|
|
<include>../limitations/graceful-fs.mdx</include>
|
|
|
|
### DNS lookup errors
|
|
|
|
<include>../limitations/dns-lookup-errors.mdx</include>
|
|
|
|
### Socket data encoding
|
|
|
|
<include>../limitations/socket-data-encoding.mdx</include>
|
|
|
|
### UDP socket options
|
|
|
|
<include>../limitations/udp-socket-options.mdx</include>
|
|
|
|
### Unix domain sockets and request options
|
|
|
|
<include>../limitations/unix-domain-sockets.mdx</include>
|
|
|
|
### Process arguments and errors
|
|
|
|
<include>../limitations/process-arguments-and-errors.mdx</include>
|
|
|
|
### Module path globals
|
|
|
|
<include>../limitations/module-path-globals.mdx</include>
|
|
|
|
<span id="embedded-javascript-engine" />
|
|
|
|
## Runtime code evaluation
|
|
|
|
<include>../limitations/runtime-code-evaluation.mdx</include>
|
|
|
|
## Process events
|
|
|
|
<include>../limitations/process-events.mdx</include>
|
|
|
|
## Native addons
|
|
|
|
<include>../limitations/native-addons.mdx</include>
|
|
|
|
## WebAssembly modules
|
|
|
|
<include>../limitations/webassembly-modules.mdx</include>
|
|
|
|
## WASI target
|
|
|
|
<include>../limitations/wasi-target.mdx</include>
|
|
|
|
## Tooling and native FFI
|
|
|
|
<include>../limitations/tooling-and-native-ffi.mdx</include>
|
|
|
|
## Browser embedding
|
|
|
|
<include>../limitations/browser-embedding.mdx</include>
|
|
|
|
## Native debugging
|
|
|
|
<include>../limitations/native-debugging.mdx</include>
|