-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Closed
Labels
Description
do_not_package_if_src_was_modified
is failing on macos CI with:
Expected: execs
but: exited with exit code: 0
Cargo is not able to always detect a modification during packaging on low-resolution filesystems like HFS if the package is extracted and build.rs runs within 1 second.
This is caused by #6257. Previously the timestamps of the original files were in the past, but now the timestamps are all set to the extraction time.
Some options to fix:
- Change
tar
to optionally set timestamps, but ignore errors. - Disable
do_not_package_if_src_was_modified
on macos. - Change
run_verify
to use a better method for detecting modifications. - Revert Configure tar to not set mtime #6257. Cargo may set mtimes in other places (see Rebuild on mid build file modification #6484).
a. Note: I cannot reproduce Failure to package on FAT-family filesystems #6238. I tried creating various FAT partitions on Windows 8 and Windows 10, and they all seemed to be able to set file times just fine. How can I repro it?
Any thoughts/preferences?
I get about 20% failure locally. Seen recently at
- progress.rs: don't fail if not a tty #6395 (comment) (log no longer available).
- https://travis-ci.org/ehuss/cargo/jobs/501876478
- https://travis-ci.com/rust-lang/cargo/jobs/182562793 (part of the infrastructure for public & private dependencies in the resolver #6653)
- https://travis-ci.org/ehuss/cargo/jobs/502343830