Files
pnpm/modules-mounter/daemon
Zoltan Kochan 15f085767f fix: handle upgrade path for git-hosted tarballs in old stores
Two cases surfaced by the latest reviewer round:

1) FUSE handler crashed with a non-null assertion on integrity for
   pre-CVE-fix lockfiles that don't carry integrity for git-hosted
   tarballs. Fall back to gitHostedStoreIndexKey so the daemon can
   still serve those packages.

2) Once a lockfile committed by a newer pnpm carries integrity,
   getFilesIndexFilePath probes only storeIndexKey(integrity, pkgId).
   An older local store may still have the entry under
   gitHostedStoreIndexKey, so the install would refetch — and in
   offline mode hard-fail with NO_OFFLINE_TARBALL — even though the
   tarball is already on disk. Plumb the StoreIndex into the
   package-requester and migrate the entry to the integrity key on
   the fly when we detect this state.

Both fallbacks are tagged TODO(v12): once v12 forces lockfile
regeneration and any pnpm v11-written store will already have the
integrity-keyed entry, this bridging code can be removed.

---
Written by an agent (Claude Code, claude-opus-4-7).
2026-05-06 02:24:06 +02:00
..
2023-05-14 17:26:00 +03:00
2026-05-05 19:50:32 +02:00
2026-05-05 19:50:32 +02:00
2023-05-14 17:26:00 +03:00

@pnpm/modules-mounter.daemon

Mounts a node_modules directory with FUSE

npm version

Installation

pnpm add @pnpm/modules-mounter.daemon --global

Usage

Before mounting the modules directory, all the packages should be fetched to the store. This can be done by running:

pnpm install --lockfile-only

Once the packages are in the store, run:

mount-modules

If something goes wrong and the modules directory will be not accessible, unmount it using:

unmount <path to node_modules>

License

MIT