Skip to content

cli: add Puppeteer, Playwright, node-gyp & Electron caches to clean dev - #164

Open
ry-ops wants to merge 1 commit into
momenbasel:mainfrom
ry-ops:pr/dev-js-native-build-caches
Open

ry-ops wants to merge 1 commit into
momenbasel:mainfrom
ry-ops:pr/dev-js-native-build-caches

Conversation

@ry-ops

@ry-ops ry-ops commented Sep 6, 2026

Copy link
Copy Markdown

What

Adds four download/build caches to the dev catalog (puremac clean dev):

Tool Paths What it is
Puppeteer ~/.cache/puppeteer downloaded Chrome / chrome-headless-shell builds — frequently 0.5–1.5 GB across revisions
Playwright ~/Library/Caches/ms-playwright, ~/.cache/ms-playwright downloaded browser builds
node-gyp ~/Library/Caches/node-gyp, ~/.cache/node-gyp cached Node headers per version
Electron ~/Library/Caches/electron, ~/Library/Caches/electron-builder @electron/get download cache

Also appends ~/.npm/_logs to the existing npm entry (debug logs, next to _cacache).

Why

These accumulate silently, hold multiple stale versions, and regenerate on demand —
the same profile as the caches already in dev. None of them are config roots;
only the precise cache directories are listed.

Testing

swiftc -parse on the changed file is clean. I could not run a full
swift build locally — this machine has Command Line Tools only, and the
PackageDescription manifest currently fails to link against the macOS 26 SDK
(unrelated to this change). Please confirm via CI or a full Xcode toolchain.
Change is data-only additions to Catalog.dev, mirroring ~30 existing entries.

Scope

One focused change. Docs updated (cli/README.md — "What clean dev covers").

These are download/build caches that accumulate silently and regenerate on
demand, so they fit the existing `dev` catalog model:

- Puppeteer  ~/.cache/puppeteer                     (downloaded Chrome builds,
                                                     often several hundred MB)
- Playwright ~/Library/Caches/ms-playwright,
             ~/.cache/ms-playwright                 (downloaded browser builds)
- node-gyp   ~/Library/Caches/node-gyp,
             ~/.cache/node-gyp                      (cached Node headers)
- Electron   ~/Library/Caches/electron,
             ~/Library/Caches/electron-builder      (@electron/get download cache)

Also adds ~/.npm/_logs to the existing npm entry (debug logs, alongside
_cacache).

Only precise cache directories are targeted; no config roots. README updated.

Note: local `swift build` is blocked here by a Command Line Tools-only
toolchain issue (PackageDescription manifest fails to link against the
macOS 26 SDK); `swiftc -parse` on the changed file is clean. Please confirm
via CI / a full Xcode toolchain.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant