You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8-2Lines changed: 8 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,6 +14,12 @@ All notable changes to Rush-FS are documented here. The format is based on [Keep
14
14
15
15
-**Package name:** The main npm package is now **`@rush-fs/core`** (scoped). Install with `pnpm add @rush-fs/core` or `npm i @rush-fs/core`, and import with `import { readdir, readFile, ... } from '@rush-fs/core'`.
16
16
-**Migration from `rush-fs`:** If you were using the old unscoped package `rush-fs`, replace it with `@rush-fs/core` in `package.json` and in all imports. The API is unchanged; only the package name and version differ. The old `rush-fs` package may be deprecated on npm in a separate step; prefer `@rush-fs/core` for new installs.
17
+
-**glob:**`gitIgnore` option now defaults to **`false`** to align with Node.js `fs.globSync` (no .gitignore filtering by default).
18
+
19
+
### Fixed
20
+
21
+
-**glob:** Patterns with a path prefix (e.g. `.dir/**/*.txt` or `src/**/*.ts`) now work when used without an explicit `cwd`; the prefix is used as the search root, matching Node.js behavior.
22
+
-**glob:** Recursive pattern `**/*.ext` with `cwd` now correctly recurses into subdirectories.
17
23
18
24
## [0.0.5]
19
25
@@ -36,8 +42,8 @@ All notable changes to Rush-FS are documented here. The format is based on [Keep
|`cp` 500-file flat dir (4 threads) | 86.45 ms | 32.88 ms |**2.6x**|
87
+
|`cp` tree dir ~363 nodes (4 threads) | 108.73 ms | 46.88 ms |**2.3x**|
88
+
|`glob` large tree (`node_modules/**/*.json`, ~30k entries) vs fast-glob | 303 ms | 30 ms |**~10x**|
90
89
91
90
### On Par with Node.js
92
91
93
-
Single-file operations have a ~0.3 µs napi bridge overhead, making them roughly equivalent:
92
+
Single-file operations have a ~0.3 µs napi bridge overhead. Recursive glob on a **small tree** is on par with node-glob; on **large trees** (e.g. node_modules) Rush-FS wins (see table above).
|`glob` recursive (`**/*.rs`, small tree) vs node-glob |~22 ms |~40 ms |~1.8x (node-glob faster at this scale) |
102
102
103
103
### Where Node.js Wins
104
104
@@ -125,7 +125,7 @@ Single-file operations (`stat`, `readFile`, `writeFile`, `chmod`, etc.) are atom
125
125
126
126
### Key Takeaway
127
127
128
-
**Rush-FS excels at recursive / batch filesystem operations** (readdir, glob, rm, cp) where Rust's parallel walkers deliver 2–70x speedups. For single-file operations it performs on par with Node.js. The napi bridge adds a fixed ~0.3 µs overhead per call, which only matters for sub-microsecond operations like `existsSync`.
128
+
**Rush-FS excels at recursive / batch filesystem operations** (readdir, glob, rm, cp) where Rust's parallel walkers deliver significant speedups (e.g. 12x readdir, 50x copyFile). For single-file operations it performs on par with Node.js. The napi bridge adds a fixed ~0.3 µs overhead per call, which only matters for sub-microsecond operations like `existsSync`.
0 commit comments