-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have 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
Manifest reform #848
Manifest reform #848
Conversation
d7c2e00
to
0dadb5b
Compare
https://github.com/Gankra/cargodisttest/releases/tag/v0.6.4 has a dist-manifest.json with the new system (see: assets[] and systems[]) |
i've now added inline checksums to the manifest, and changed the homebrew code to use both that and New Linkage. |
lmfao, real fake checksums are uhhhh a problem for RUIN_ME_WITH_INSTALLERS, might need to make a tweak here... (these RUIN_ME installer tests fetch the tarballs using live github data, on the assumption that we can reproduce the URLs exactly, but, this breaks if we generate installers which also insist they know the checksum...) |
nice, new checksum/brew stuff appears to have worked: https://github.com/Gankra/cargodisttest/releases/tag/v0.6.5 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In general I like the way this is going! I'm going to need to kick the tires a bit to get a feel for what the data looks like in practice, but I think the approach is valid! I'll do some testing on this soon and look at the resulting manifests.
this makes it possible to include files not built on this machine in the manifest
and always compute the sha256 checksum for archives
hashes don't match github
note that the linkage field remains on dist-manifest to avoid breaking old users of cargo-dist-schema who do not think the linkage field is ever optional. this can be migrated away over time.
Works towards #843 by introducing top-level "systems" and "assets" maps, similar to artifacts, which are indexed by other items.
The biggest challenge of this is to rework the linkage subsystem to properly refer to binaries by id. It also adds inline checksum values to artifacts, with sha256 checksums being guaranteed on archives.