Initial Manifest Support Tracking Issue
- Dominant language
- Rust
- Stars
- 659
- Forks
- 36
- Avg merge
- 18m
- Merged PRs (30d)
- 2
Description
After much thought about the manifest format, including starting to write my own format, I'm going to go with the following for the initial implementation:
- Manifest data will be in `imdl` directory in root. This is unlikely to conflict with anything, and gives people a term to search for.
- Initial format will be Bencode. Bencode + Serde support is already integrated into the project. Although it's slow, there is no perfect choice here. At a later date, it's possible that there will be a transition in manifest formats.
- Hashes will be Blake3 hash of each file.t
- Structure will likely be a list of hashes, and then a directory structure where the leaf data is the index of the hash of that file.
- Initial functionality will be adding a manifest to a release, and verifying hashes in that manifest against the files on disk.
- Also important will be calculating a stable hash of the root manifest, that commits to all data, so the hash of the manifest can be communicated and used for verification.
Contributor guide
Assessment
This issue has not been assessed yet.