This is the first step towards having a way to skip install of already installed dependencies. The next step will involve a refactor for the download/extract pipeline and is out of the scope of this PR.
This checksum would only be used for zip dependencies. Deps cloned with git could be checked for integrity with git diff for example, and a full re-download/clone is probably not necessary in case of failed integrity check. A simple forced checkout should suffice.
Took the chance to refactor the dir-walking for the push command.
Breaking changes
unzip_dependencies returns a Result<Vec<Option<IntegrityChecksum>>>
unzip_dependency returns a Result<IntegrityChecksum>
write_lock takes in an additional parameter integrity_checksums: &[Option<IntegrityChecksum>]
sha256_digest was renamed to zipfile_hash and returns a Result<IntegrityChecksum>
This is the first step towards having a way to skip install of already installed dependencies. The next step will involve a refactor for the download/extract pipeline and is out of the scope of this PR.
This checksum would only be used for zip dependencies. Deps cloned with git could be checked for integrity with
git diff
for example, and a full re-download/clone is probably not necessary in case of failed integrity check. A simple forced checkout should suffice.Took the chance to refactor the dir-walking for the
push
command.Breaking changes
unzip_dependencies
returns aResult<Vec<Option<IntegrityChecksum>>>
unzip_dependency
returns aResult<IntegrityChecksum>
write_lock
takes in an additional parameterintegrity_checksums: &[Option<IntegrityChecksum>]
sha256_digest
was renamed tozipfile_hash
and returns aResult<IntegrityChecksum>
Closes #128