Skip to Content
GuideMigration from Rush-FS

Migrating from Rush-FS

The project and repository are now Vooya FS. The canonical npm package is @vooya/fs.

Change the dependency and import

- import { glob, readdir } from '@rush-fs/core' + import { glob, readdir } from '@vooya/fs'

Require Node.js 22 or newer, install @vooya/fs, and remove the legacy dependency once your application tests pass. Update imports from rush-fs in the same way. See Quick Start to choose the published release or main.

The Rust crate is vooya_fs, and the native binary basename is vooya-fs. The canonical repository is https://github.com/vooyajs/fs.

Release boundary

@vooya/fs@0.1.1 includes the compatibility fixes described in the API guide. They are not all present in 0.1.0; check the version comparison and the 0.1.1 release source .

Legacy versions remain separate packages. npm deprecation, if applied, displays a warning; it does not redirect imports or install a replacement. The old packages support Node.js 18, while Vooya FS requires Node.js 22 or newer.

Behavioral review

The intended API surface remains familiar, but migration is not a promise of total Node fs parity. Review the API overview, especially the per-operation path support, missing callback/file-descriptor/stream APIs, and Vooya-only options such as concurrency, gitIgnore, lines, and scan.

Validate the migration

  1. Replace selected imports, without aliasing or patching node:fs globally.
  2. Run application tests for path forms, encodings, errors, symlinks and mutation options you actually use. Consult the per-API contract rather than assuming complete Node compatibility.
  3. Measure the same workload and options before and after the change. Check small inputs as well as production scale, memory cost and application responsiveness.
  4. Keep the original Node implementation for operations where it performs better.

Promise methods are direct exports. glob on main is awaitable and async iterable, but materializes a full result array. Code relying on Node’s incremental iterator memory behavior should keep Node’s implementation. Callback APIs are not provided.

Last updated on