Skip to main content

Module bundle_manifest

Module bundle_manifest 

Source
Expand description

The local, advisory .decdn-manifest.json skip-cache decdn bundle pull writes into an output directory. It indexes every file the bundle(s) have placed there — keyed by bundle-relative POSIX path, merged across runs — so a later pull skips unchanged files without re-hashing and splices unchanged byte ranges from bytes already on disk.

The cache is advisory, not authoritative. A skip takes one of two paths: the re-hash path confirms the on-disk bytes against the new manifest hash before skipping; the fast path skips without re-hashing when the saved record’s hash agrees and the file’s size and mtime are unchanged since that record was written. A missing, corrupt, unreadable, or superseded record costs only a re-hash, and --overwrite (or deleting the file) forces a full re-fetch. The one residual trust is the fast path: a file edited in place without changing its size or mtime is not re-hashed. Every spliced donor chunk is always re-hashed before its bytes are used, so donor reuse never risks correctness.