disktree now runs on plain Node (>=20). Bun is no longer required.
- ship tsc output in dist/, bin is dist/cli.js with a node shebang
- tsconfig follows the npm-package template (nodenext, rootDir src)
- worker URL follows the running file extension (.ts in src, .js in dist)
- prepublishOnly wipes dist and rebuilds
- README and AGENTS use npx disktree
Session: ses_f1b9d5d03ffep38dyOKhtgIJSt
- remove the publish-disktree CI job. It waited for all three native builds
even though disktree ships only .tsx source
- prepublishOnly now runs tsc and the GPU test instead of refusing without CI
- AGENTS.md documents disktree as the one local-publish exception
Session: ses_f1b9d5d03ffep38dyOKhtgIJSt
- remove the SF_DATALESS check in scan-worker.ts. It called libc lstat
through bun:ffi with a hardcoded arm64 struct offset
- remove the `cloud` field from DirRecord and its use in core.ts
- iCloud folders are now scanned like any other folder
- disktree still runs on Bun (raw .tsx bin)
- bump disktree to 0.1.2 so CI publishes it
Session: ses_f1b9d5d03ffep38dyOKhtgIJSt
Limit scan workers to four, reducing peak physical footprint by about 60 MiB on a 350k-file scan. Publish disktree independently after its GPU-backed test, so unrelated GPUIX CI failures cannot block the release.
Session: ses_f1be8a987ffeslJ1dooQ4pgDnx
`bunx disktree [dir]` opens the treemap on a folder, the current directory,
or `/`. Published as disktree@0.1.0.
- moved from examples/ to a `disktree` workspace package: src/app.tsx
(store + view), src/cli.tsx (bin), src/core.ts, src/scan-worker.ts
- scan runs on a pool of worker threads with sync lstat, like the Rust
original on rayon; the frontier is handed back after 400 dirs so deep
trees spread across workers. Full disk here: 24.5M files in 150 s, no
stall
- skips iCloud dataless folders (SF_DATALESS via bun:ffi lstat), like the
Rust scanner; listing them made macOS download them and stalled the scan
- keeps the 12 largest files per directory, folds the rest into one
"N smaller files" tile
- store lives on globalThis so `bun --hot` remounts instead of starting a
second full scan
- scan progress bar uses used disk space as the total when scanning a
volume root
- lighter pastel tiles at 90% opacity
Session: ses_f1cc78bbbffeiqA1qhn3vB0pzN