Keep the historical key
"graceful-fs": "npm:@stackline/[email protected]"
Existing require('graceful-fs') and supported deep imports remain unchanged.
Node.js filesystem compatibility / ISC
A maintained, dependency-free continuation of the established [email protected] contract, with bounded descriptor-exhaustion retries and current compatibility gates.
npm install @stackline/graceful-fs
Preserve an existing import with "graceful-fs": "npm:@stackline/[email protected]".
01 / Compatibility contract
The package exports the patched Node fs object and preserves historical helpers such as gracefulify, close, closeSync, and supported deep entries. Callback and promise forms continue to follow the Node APIs they wrap.
Existing code can keep require('graceful-fs') through the npm alias. The migration changes package provenance, not the runtime import key.
02 / Bounded recovery
What is retried. Operations affected by process or system file-descriptor exhaustion join the shared queue. Successful closes wake queued work.
What remains observable. Non-retryable errors are returned normally. Retry time and queue state are bounded; the package does not turn persistent resource exhaustion into an infinite wait.
What callers still own. Concurrency, file-count limits, cancellation, paths, permissions, and workload admission remain application responsibilities.
03 / Migration
04 / Release evidence
05 / Reference