Files
pnpm/installing
Zoltan Kochan d36a005dc5 perf: decompose metadata cache into index + per-version manifests
Split the single-blob metadata storage into two tables:
- metadata_index: dist-tags, version keys (with deprecated), time, and
  cache headers — one row per package, ~10KB
- metadata_manifests: per-version manifest objects, keyed by (name,
  version, type) — ~2KB each

During resolution, only the lightweight index is parsed to pick a
version. The full manifest for the resolved version is loaded separately.
For a package like typescript with 200+ versions, this avoids parsing
~400KB of unused manifest JSON.

The index is shared across abbreviated/full metadata types — only the
per-version manifests differ. This eliminates the type column from the
index and simplifies the abbreviated→full fallback to the manifest level.
2026-04-01 15:32:15 +02:00
..