Skip to content

vendor: key the extraction cache on the keep-filter tag - #86

Merged
gronke merged 1 commit into
mainfrom
vendor-keep-cache
Aug 26, 2026
Merged

vendor: key the extraction cache on the keep-filter tag#86
gronke merged 1 commit into
mainfrom
vendor-keep-cache

Conversation

@gronke

@gronke gronke commented Aug 26, 2026

Copy link
Copy Markdown
Owner

A keep-filter fn pointer has no stable identity, so the per-package .{flat}.version markers reuse a cached tree even after the filter's shape changed.
PackageSpec::keep_tagged(tag, keep) folds a caller-named tag into the cache key, the same way compiled_key folds the compile schema: changing the tag re-extracts the package, and a tree cached without a tag re-extracts once on adoption.
Plain keep() stays tagless and behaves as before.

@gronke
gronke merged commit b934092 into main Aug 26, 2026
9 checks passed
@gronke
gronke deleted the vendor-keep-cache branch August 26, 2026 12:39
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