feat(package): record the files a manifest read in the lock #396
Loading…
Reference in a new issue
No description provided.
Delete branch "loop/331-lock-from-files"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #331
What
The files the evaluation of a
project.trbread now reach thefrom { }block of the lock'ssettings, next to the variables of #29:fileline per file read, project.trb excluded, each once, sorted by path, paths relative to the package. Files come before variables.hash:is the SHA-256 of the bytes; a directory isdirectory:sha256:over its sorted names; one that cannot be read isunreadable; a path that is not there ismissing: true(the same four states asbuild/manifest-inputs.trb, with SHA-256 instead of the cheap hash).torb publishprintsreads: file <path> (file|directory|unreadable|missing)before the variable lines.Manifest.files,ReadFile); a lock without files is read and written unchanged.project-lock-trb.md,torb-publish.md,PROJECT.mdsection 11 "What is left",ROADMAP.md, and the mirroredskills/copies.No seed impact: no syntax, native, driver flag or looked-up std name changes.
Test
compiler/tests/packages.test.trb(render and read back, missing/directory/unreadable),compiler/tests/project.test.trb(EvaluatedManifest.files()over a temp directory).tests/packages/sources/env-1.0.0now readsVERSIONand a missingNOTES.md;tests/packages/transcript.expectedpins thereads:lines and the lock.The files the evaluation read reach the `from { }` block of the lock's settings, by path below the package and the SHA-256 of their bytes, `directory:sha256:` of a directory's names, `unreadable`, or `missing: true`; `torb publish` names each one. Refs #3317cf5f4886cc5b129710eApproved (head
c5b1297, CI combined status success; tier A/B, bootstrap, gates, pdisc green).EvaluatedManifest.files()over a temp dir in project.test.trb (dedupe, sort, project.trb excluded, missing/file/directory), end-to-end pinned in transcript.expected.Non-blocking: none.
fromblock #331