graceful-fs is a drop-in replacement for Node’s built-in fs module that improves filesystem access behavior across platforms, focusing on resilience to errors. It queues and retries certain operations to reduce failures like EMFILE “too many file descriptors”, helping apps avoid crashing when they open many files at once.
Project status
- The repository appears to be maintained, with a recent upstream push dated 2025-10-25, though the most recently summarized tagged updates are older.
- Apparent update cadence is slow and irregular, with the latest cited update v4.2.11 dated 2023-03-16, and prior summarized updates from 2022 and 2022 (roughly 1 to 2 year gaps between those tagged versions).
AI summary generated Today
Recent updates
v4.2.11
3/16/2023Release v4.2.11 contains mostly build/test maintenance changes. The only substantive runtime-related code change in the diff is in graceful-fs' polyfills logic for filesystem rename retry behavior, where EBUSY is newly treated as a retryable error.
v4.2.10
4/4/2022v4.2.10 includes code changes in the graceful-fs polyfill and queueing logic, plus various CI workflow and test harness updates. Release notes were not provided, so the actual behavioral implications are only visible from the code diff.
Breakingv4.2.9
1/5/2022Release v4.2.9 was published on 2022-01-05, but no release notes were provided by the publisher. As a result, this update cannot be assessed for new features, breaking changes, bug fixes, or security/performance improvements from the release documentation alone.
v4.2.8
8/5/2021Release v4.2.8 contains no provided release notes. The code diff shows changes to graceful-fs internal retry scheduling and queue timing, plus an accompanying test adjustment to match the new timeout-based behavior.
v4.2.7
8/5/2021v4.2.7 updates graceful-fs to adjust its internal EMFILE/ENFILE retry mechanism for patched async fs methods, including tracking retry attempts and updating queue scheduling behavior. It also updates documentation (README) about limitations with sync methods and adds a test verifying the retry count behavior.
v4.2.6
2/9/2021This release (v4.2.6) includes small compatibility and test changes, with a notable update to graceful-fs copyFile handling. There were no release notes provided, so the following changes are inferred only from the code diff.
Featuresv4.2.5
2/5/2021This release (v4.2.5) updates the CI/test setup and makes targeted changes to graceful-fs internals. The main functional code change is adding a copyFile wrapper to inherit graceful-fs retry behavior for EMFILE/ENFILE errors, plus some prototype handling fixes to better support util.promisify.
Featuresv4.2.4
4/28/2020Release v4.2.4 contains no publisher release notes. The code diff shows only internal changes in graceful-fs.js related to how the shared retry queue is stored and accessed, plus a version bump in package metadata.
v4.2.3
10/23/2019v4.2.3 updates graceful-fs to adjust how the legacy stream alias properties FileReadStream and FileWriteStream behave. The release notes are not provided, but the code change adds internal variables to decouple these legacy aliases from the primary ReadStream and WriteStream properties, and a new test was added to lock in the new behavior.
v4.2.2
8/14/2019Release v4.2.2 was published on 2019-08-14, but no release notes were provided by the publisher. Because the changelog content is missing, there is no documented information to assess potential API, behavioral, or security changes for this upgrade.