Auto merge of #6257 - khionu:master, r=alexcrichton

Configure tar to not set mtime

This PR is fixes #6238. Currently uses a `patch` on `tar`, and should not be merged until `tar` makes a release containing the function `set_preserve_mtime`.
This commit is contained in:
bors 2018-11-05 17:33:14 +00:00
commit 6411d39687
2 changed files with 4 additions and 1 deletions

View file

@ -50,7 +50,7 @@ serde_derive = "1.0"
serde_ignored = "0.0.4"
serde_json = { version = "1.0.30", features = ["raw_value"] }
shell-escape = "0.1.4"
tar = { version = "0.4.15", default-features = false }
tar = { version = "0.4.18", default-features = false }
tempfile = "3.0"
termcolor = "1.0"
toml = "0.4.2"

View file

@ -418,6 +418,9 @@ fn run_verify(ws: &Workspace, tar: &FileLock, opts: &PackageOpts) -> CargoResult
paths::remove_dir_all(&dst)?;
}
let mut archive = Archive::new(f);
// We don't need to set the Modified Time, as it's not relevant to verification
// and it errors on filesystems that don't support setting a modified timestamp
archive.set_preserve_mtime(false);
archive.unpack(dst.parent().unwrap())?;
// Manufacture an ephemeral workspace to ensure that even if the top-level