pub fn preflight(
plan: &Plan,
game_dir: &Path,
cache: &Cache,
facts: HostFacts,
watcher: &mut dyn Watcher,
) -> Result<Preflight, PreflightError>Expand description
Everything that can fail is checked before the first file is touched, since a failure after an uninstall leaves neither the old content nor the new.
Each payload is verified by its sha256, which reads the file once instead of
decompressing every entry; zip still checks each entry’s CRC on extraction.