Files
pnpm/pnpr/docs
Zoltan Kochan e2a11f5611 perf(install): precalculate package bins and shebang runtimes (#17186)
Precalculate package binary entrypoints and shebang runtimes during tar
streaming in pnpr (dist.pnpr.bins) and during cold tarball extraction in
pnpm so .bin command shims can be linked without reading package.json,
walking directories.bin, or opening bin scripts on disk.

- Add PackageBin, ScriptRuntime, parse_shebang_from_bytes,
  resolve_package_bins, and verify_package_bins in pnpm-package-manifest
  with strict path normalization and shell-safe runtime validation.
- Extend inspect_tar in pnpm-tarball to compute bins and shebang runtimes
  in the same streaming pass as requiresBuild when requiresBuild is false.
- Emit dist.pnpr.bins in pnpr packument responses and cache it in
  pnpr-storage TarMetadataCache.
- Propagate cold-extracted manifests and precalculated bins through
  CreateVirtualStoreOutput into LinkVirtualStoreBins and direct-dep bin
  linking, and verify warm-cache dist.pnpr.bins against the store index
  manifest and CAS file list before skipping shebang reads.

Closes pnpm/tasks#178
2026-10-21 11:42:03 +02:00
..