diff options
| author | Ben Sima <ben@bsima.me> | 2025-11-14 19:30:36 -0500 |
|---|---|---|
| committer | Ben Sima <ben@bsima.me> | 2025-11-14 19:30:36 -0500 |
| commit | 6c70d27dac7335fcc56ade271ab84ed5a57c16a1 (patch) | |
| tree | e6f81cf2850a2ea2622d59ce24b8f65236170f43 /Omni/Log.py | |
| parent | f6cd87b7544628f8947fb63907f6f5fee479c9cd (diff) | |
Add persistent ghc-pkg cache to speed up analysis
Implements optimization #3 from Phase 2 of the performance plan.
Changes: - Cache stored in _/var/ghc-pkg-cache-<hash>.json - Hash
based on GHC version + GHC_PACKAGE_PATH for automatic invalidation -
Loads cache at startup, saves on successful completion - Uses atomic
write (tmp + rename) to prevent corruption - Gracefully handles
missing/corrupt cache files - Accumulates cache entries across builds -
Works with parallel builds (in-memory IORef + disk persistence)
Performance impact: - Eliminates redundant ghc-pkg invocations across
runs - Near-zero ghc-pkg overhead once cache is populated - No impact
on single-run performance (still uses in-memory IORef)
Diffstat (limited to 'Omni/Log.py')
0 files changed, 0 insertions, 0 deletions
