Back to Explore

isaacs/node-graceful-fs

GitHub
1 watchersOpen source

Last release:

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

  • Actively maintained: No. The most recent upstream push is 2025-10-25, and the npm/github updates shown include a long gap with the last documented version in the 4.2.x line dated 2023-03-16, which suggests maintenance has slowed into a quiet state rather than ongoing active development as of 2026-06-09.
  • Update cadence: Sparse. Published updates appear years apart (for example, 2023-03, then 2022-04, then 2021-08, 2020-04), with no evidence of a recent regular cadence.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v4.2.11

    Release 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

    v4.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.

    Breaking
  • v4.2.9

    Release 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

    Release 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

    v4.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

    This 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.

    Features
  • v4.2.5

    This 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.

    Features
  • v4.2.4

    Release 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

    v4.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

    Release 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.