GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — feat: vendor/scan/apply overhaul — lockfile-driven discovery, verified auto-fetch, mismatch-tolerant apply by mikolalysenko · Pull Request #115 · SocketDev/socket-patch feat: vendor/scan/apply overhaul — lockfile-driven discovery, verified auto-fetch, mismatch-tolerant apply #115New issueHave a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community. By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails. Already on GitHub? Sign in to your account
Merged
Uh oh!
There was an error while loading. Please reload this page.
Merged
Changes from 1 commit
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
42e95be
fix(purl): percent-decode purl components from the API
mikolalysenko c3c012f
feat(vendor): auto-force staging on content mismatch + correct alread…
mikolalysenko 7363c65
feat(vendor): take over exact-version override pins (pnpm + yarn berry)
mikolalysenko adc5179
feat(scan): prune lifecycle for vendored packages
mikolalysenko 7042cbc
test: e2e coverage for encoded scoped purls, mismatch annotation, pru…
mikolalysenko 1a2dc4a
feat(vendor): lockfile inventory module for npm-family locks
mikolalysenko 9c93b90
feat(vendor): registry_fetch — verified pristine-artifact fetching
mikolalysenko 18822dc
feat(vendor,scan): auto-fetch missing packages + lockfile/ledger disc…
mikolalysenko 430145a
feat(vendor): yarn berry checksum-verified fetch + ledger artifact st…
mikolalysenko 16e7e54
feat(vendor): cargo + golang lockfile inventory and verified fetch
mikolalysenko b5e9f63
feat(vendor): composer + gem + pypi lockfile inventory and verified f…
mikolalysenko 772f98d
feat(scan): all-ecosystem lockfile supplement + docs
mikolalysenko 0426e0b
feat(apply): beforeHash mismatch warns and applies the full blob by d…
mikolalysenko 64c59f1
polish(apply): decode percent-encoded purls in human output
mikolalysenko 18b4cb1
feat(vendor): hold patch blobs in memory — vendoring writes no .socke…
mikolalysenko c92f6b2
feat(repair): rebuild missing/corrupt vendored artifacts + no-ledger …
mikolalysenko c05805e
fix(pnpm): bind vendor edits to name@VERSION — multi-version vendorin…
mikolalysenko 6091280
test(docker): pin scan --sync to --strict where apply --force must st…
mikolalysenko cb1b0a6
test(docker): pin the content_mismatch_overwritten warning in the for…
mikolalysenko File filterConversations
Failed to load comments.
Loading
Uh oh!
There was an error while loading. Please reload this page. Jump to
Jump to file
Failed to load files.
Loading
Uh oh!
There was an error while loading. Please reload this page. Diff viewDiff view
feat(vendor,scan): auto-fetch missing packages + lockfile/ledger disc…
…overy
vendor: a manifest patch whose package has no installed copy is now
satisfied automatically (no flag) instead of failing with
package_not_installed:
- already-vendored purls stage from their own committed artifact,
sha256-verified against the vendor ledger (fresh-clone re-vendor and
in-sync runs work offline, no registry traffic);
- otherwise the lockfile-resolved pristine artifact is fetched
(lock-recorded URL else conventional registry URL), verified against
the lock's integrity FAIL-CLOSED, and staged from a private tempdir —
the project tree is never touched.
Reason codes: vendor_fetched_missing (skip-warning beside the Applied
event), vendor_fetch_failed (distinct Failed, suppresses the duplicate
not-installed skip), vendor_fetch_unverifiable (no lock integrity →
calm skip). --offline keeps the calm skip and names the lockfile as
the would-be source.
scan: discovery now supplements the installed-tree crawl with
(a) lockfile-only dependencies — warned '[NOT INSTALLED]' in the table
+ a stderr note, JSON lockfileOnlyPackages + packages[].notInstalled,
counted as scanned so a wiped node_modules no longer prunes
lockfile-listed entries, partitioned out of --apply BEFORE download
(calm skipped/package_not_installed records, exit 0, no manifest
writes) while --vendor passes them to the auto-fetch; and
(b) vendored-ledger entries — the committed artifact IS the dependency,
so updates[] detection and scan --vendor keep working on a fresh
clone before any install.
scan --json --vendor now vendors a completely fresh clone end-to-end
(e2e-proven, second run already_vendored).
Co-Authored-By: Claude Fable 5 <[email protected]>
Uh oh!
There was an error while loading. Please reload this page.
commit 18822dc9888998c76a99a94c9d8f4f6911a9fa4f
There are no files selected for viewingSome generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Oops, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
|
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |