Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cargo is not rebuilding a project that has been modified #8868

Open
jyn514 opened this issue Nov 18, 2020 · 12 comments
Open

Cargo is not rebuilding a project that has been modified #8868

jyn514 opened this issue Nov 18, 2020 · 12 comments
Labels
A-rebuild-detection Area: rebuild detection and fingerprinting C-bug Category: bug

Comments

@jyn514
Copy link
Member

jyn514 commented Nov 18, 2020

Problem

When I modify a file in the project, it is not rebuilt. Instead cargo thinks the project is fresh and uses a cached copy. I know it's wrong to do this because a fresh build (with a different toolchain) gives a compile error.

Steps

I am not sure how to reproduce this in isolation. I'm modifying a file in deadlinks/cargo-deadlinks@f3857e1, then running cargo run.

I double-checked the last-modified date of main.rs and it says 19:39; the binary was built at 19:01.

Notes

Output of cargo version: cargo 1.47.0 (f3c7e066a 2020-08-28)

@jyn514 jyn514 added the C-bug Category: bug label Nov 18, 2020
@jyn514
Copy link
Member Author

jyn514 commented Nov 18, 2020

In case it makes a difference: I currently have CARGO_TARGET_DIR set to /home/joshua/.local/lib/cargo/target, but I did at one point have it set to the empty string (while messing around with #8866).

@jyn514
Copy link
Member Author

jyn514 commented Nov 18, 2020

rm ~/.local/lib/cargo/target/debug/deps/*deadlinks* fixed the issue.

@ehuss
Copy link
Contributor

ehuss commented Nov 23, 2020

Hm, without a reproduction it will be difficult to figure out what happened.

For future reference, you can run with the CARGO_LOG=cargo::core::compiler::fingerprint=trace environment variable to have cargo explain why it thinks the build is up-to-date. It compares the mtime of the source files to the "dep-info" file (not the binary) which is located at target/debug/.fingerprint/PKGNAME-*/dep-lib-NAME (this file contains the list of source files to compare). It does some trickery to rewind the mtime of that file, so maybe something disrupted that?

The relevant line in the debug logs would look something like this:

all paths up-to-date relative to "/Users/eric/Proj/rust/cargo2/target/debug/.fingerprint/cargo-29d7b15db8bde595/dep-lib-cargo" mtime=1606164631.891557635s

The key is to check that mtime value against any source files you think should be newer.

@jyn514
Copy link
Member Author

jyn514 commented Nov 24, 2020

Strangely, I already managed to reproduce this.

filesystem up-to-date "/home/joshua/src/rust/cargo-deadlinks"
max output mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/cargo_deadlinks-c0fc4344f9be5288" 1606144969.997232584s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libcargo_metadata-4763cb3c9bdc23bc.rlib" 1605802447.683562229s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libcached-538ada9a8167cef7.rlib" 1605802387.819871354s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libdocopt-9974afc7f7657f3c.rlib" 1605802444.719577527s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libcargo_deadlinks-a836a710e7881e97.rlib" 1606144967.769219244s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/liblol_html-22cdb9b06901ea72.rlib" 1605802439.851602654s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libserde_json-5237d18b88007851.rlib" 1605802445.291574574s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/liblog-efd4af026c72cbba.rlib" 1605802393.067844242s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libwalkdir-706d9b3f0bea5fd8.rlib" 1605802391.215853809s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libserde_derive-80f5f05730f722af.so" 1605802434.063632531s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libureq-498094e62c787b99.rlib" 1605802421.047699733s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libnum_cpus-bf072dd5c4b76db4.rlib" 1605802397.487821408s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libserde-c7f10c21dbd7d702.rlib" 1605802441.899592082s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libenv_logger-1d45fbc949752deb.rlib" 1605802410.183755834s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libregex-056693274140604a.rlib" 1605802416.335724064s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/liburl-44e5347729532d49.rlib" 1605802408.127766452s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/libonce_cell-a83801c9d7d83c9c.rlib" 1605802379.891912318s
max dep mtime for "/home/joshua/src/rust/cargo-deadlinks" is "/home/joshua/.local/lib/cargo/target/debug/deps/librayon-7fc81d2dd00491b1.rlib" 1605802423.019689551s
all paths up-to-date relative to "/home/joshua/.local/lib/cargo/target/debug/.fingerprint/cargo-deadlinks-c0fc4344f9be5288/dep-bin-cargo-deadlinks" mtime=1606144967.7772192
$ date -d @1606144967.7772192 --rfc-3339=ns
2020-11-23 10:22:47.777219200-05:00
$ stat src/bin/cargo-deadlinks.rs
  File: src/bin/cargo-deadlinks.rs
  Size: 8694      	Blocks: 24         IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 22549111    Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 1000/  joshua)   Gid: ( 1000/  joshua)
Access: 2020-11-23 23:21:04.696821309 -0500
Modify: 2020-11-23 23:21:04.360821914 -0500
Change: 2020-11-23 23:21:04.360821914 -0500
 Birth: -

So the file is almost 12 hours out of date, but cargo still isn't rebuilding it.

@ehuss
Copy link
Contributor

ehuss commented Nov 24, 2020

stat --format='%.Y' /home/joshua/src/rust/cargo-deadlinks/src/bin/cargo-deadlinks.rs can show a fractional mtime of a file, which might make it easier to compare.

What is the contents of /home/joshua/.local/lib/cargo/target/debug/.fingerprint/cargo-deadlinks-c0fc4344f9be5288/dep-bin-cargo-deadlinks? It's a binary file, but you should be able to cat it and see what paths it contains. I would assume it contains src/bin/cargo-deadlinks.rs, but just want to double-check.

@jyn514
Copy link
Member Author

jyn514 commented Nov 24, 2020

$ cat /home/joshua/.local/lib/cargo/target/debug/.fingerprint/cargo-deadlinks-c0fc4344f9be5288/dep-bin-cargo-deadlinks
�src/bin/cargo-deadlinks.rssrc/bin/shared.rs

@jyn514
Copy link
Member Author

jyn514 commented Nov 28, 2020

I just ran into this again, on the same project :/ it's really frustrating - is there anything more I can do to help debug? It happens very frequently, although not every time.

@jyn514
Copy link
Member Author

jyn514 commented Nov 28, 2020

Actually I had a slightly different issue this time: cargo check and cargo check --tests both worked, but cargo test would cause a compile error based on an outdated version of the code. When I cleared the target directory, cargo test worked fine.

@ehuss
Copy link
Contributor

ehuss commented Nov 28, 2020

What is the compile error? Or in other words, which dependency was out-of-date relative to what?

You can gather the log messages, and check the mtimes and contents of the files to see if anything looks off. Cargo checks mtimes in two ways:

  1. Compares the .fingerprint dep-info file's mtime to the mtime of the source files listed within that file.
  2. Compares the mtime of the output file (the lib or bin) against the mtimes of the outputs of its dependencies.

The first one is the "all paths up-to-date relative to" log message. Is there some source file listed in that dep-info file that you think has been modified and is newer since it was last built? For example:

all paths up-to-date relative to ".../cargo-deadlinks/target/debug/.fingerprint/cargo-deadlinks-2cb8c6364e110c92/dep-bin-cargo-deadlinks" mtime=1606529447.913623731s

You can compare the mtimes of the files listed in dep-bin-cargo-deadlinks and see if you think any of them should be newer than 1606529447.

The second one is the "max output mtime for" log message. Do you think any of the dependency mtimes should be newer than that one? (Those listed as "max dep mtime for...") For example:

max output mtime for ".../cargo-deadlinks" is ".../cargo-deadlinks/target/debug/deps/cargo_deadlinks" 1606529450.350047771s
max dep mtime for ".../cargo-deadlinks" is ".../cargo-deadlinks/target/debug/deps/libcargo_deadlinks-b5734062adfd2059.rlib" 1606529447.875883090s

This says that the binary cargo_deadlinks mtime of 1606529450 is newer than its library's mtime of 1606529447, so it doesn't need to be rebuilt.

@jyn514
Copy link
Member Author

jyn514 commented Nov 28, 2020

IIRC, the compile error was that I passed a borrow when it expected an owned value. The function used to take an owned value, but I changed it recently to take a borrow instead. The error occurred in the binaries, not in the tests themselves, even though cargo check worked fine (and checked the binaries).

So I would expect the mtime of the binary to be older than the library mtime, but it doesn't seem to be marked that way.

@ehuss ehuss added the A-rebuild-detection Area: rebuild detection and fingerprinting label Nov 30, 2020
@robojumper
Copy link

I'm hitting a similar error in a workspace of mine, although the problem is different in that a workspace dependency is not rebuilt when running cargo check and shows errors based on outdated versions of workspace crates, even though I have successfully ran cargo run --release often in the meantime. For reference, I'm running cargo check on https://github.com/robojumper/uc-analyzer/commit/a2c5c14b4b9d05f8a05bec5f24d9edb102b1a3f4 and I'm getting

error[E0004]: non-exhaustive patterns: `&DelegateCallExpr { .. }` not covered
    --> uc_ast_lowering\src\body.rs:1291:32
     |
1291 |         let (kind, ty) = match &expr.kind {
     |                                ^^^^^^^^^^ pattern `&DelegateCallExpr { .. }` not covered
     |
     = help: ensure that all possible cases are being handled, possibly by adding wildcards or more match arms
     = note: the matched value is of type `&uc_ast::ExprKind`

even though the variant had been removed in https://github.com/robojumper/uc-analyzer/commit/8f11b9adfe246aa3793b7ab92040c2f6a3eef51b, 14 hours/4 commits earlier. Changes to uc_ast_lowering\src\body.rs do not make the error go away.

This is despite cargo run --release working fine. I rarely run cargo check, most often just cargo run --release, and rust-analyzer invokes cargo clippy quite often.

I can't reproduce this from a fresh checkout, but I have a zipped copy of the project + target directory that I can use to reproduce this in a different folder.

Console transcript with fingerprint trace
PS D:\uc-analyzer-cargo-repro> cargo check
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_analysis-eb1e76bd7a2d4720\lib-uc_analysis
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\bitflags-1.3.2" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libbitflags-28f01af37b1a99ce.rmeta" 13283115752.935253200s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\bitflags-28f01af37b1a99ce\\dep-lib-bitflags" mtime=13283115752.899244300s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\bitflags-1.3.2"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_def" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_def-4ce00a45497c9d27.rmeta" 13283115753.266326400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_def" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libbitflags-28f01af37b1a99ce.rmeta" 13283115752.935253200s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_def-4ce00a45497c9d27\\dep-lib-uc_def" mtime=13283115752.954256800s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_def"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\unicode-width-0.1.9" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libunicode_width-f4e6b3a70c924064.rmeta" 13283115752.973261600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\unicode-width-f4e6b3a70c924064\\dep-lib-unicode-width" mtime=13283115752.899244300s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\unicode-width-0.1.9"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\annotate-snippets-0.9.1" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libannotate_snippets-dcc78df68929311e.rmeta" 13283115753.223318100s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\annotate-snippets-0.9.1" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libunicode_width-f4e6b3a70c924064.rmeta" 13283115752.973261600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\annotate-snippets-dcc78df68929311e\\dep-lib-annotate-snippets" mtime=13283115752.996266000s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\annotate-snippets-0.9.1"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_files" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_files-90bb204d732db203.rmeta" 13283115753.396514900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_files" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libannotate_snippets-dcc78df68929311e.rmeta" 13283115753.223318100s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_files-90bb204d732db203\\dep-lib-uc_files" mtime=13283253705.595419700s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_files"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_name" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_name-5963a663708fb94a\\dep-lib-uc_name" mtime=13283115752.901244900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_name"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast-ce7e3156c9b4e0c9.rmeta" 13283190022.552755500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_files-90bb204d732db203.rmeta" 13283115753.396514900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_def-4ce00a45497c9d27.rmeta" 13283115753.266326400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_ast-ce7e3156c9b4e0c9\\dep-lib-uc_ast" mtime=13283253705.615761200s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_ast"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_middle" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_middle-6156bd68ae4de83f.rmeta" 13283258684.014062100s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_middle" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_middle" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_files-90bb204d732db203.rmeta" 13283115753.396514900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_middle" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_def-4ce00a45497c9d27.rmeta" 13283115753.266326400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_middle-6156bd68ae4de83f\\dep-lib-uc_middle" mtime=13283258683.775811000s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_middle"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast_lowering-c6bfe594fbf62aa1.rmeta" 13283206508.707530100s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast-ce7e3156c9b4e0c9.rmeta" 13283190022.552755500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_files-90bb204d732db203.rmeta" 13283115753.396514900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_middle-6156bd68ae4de83f.rmeta" 13283258684.014062100s
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint] dependency on `uc_middle` is newer than we are 13283258684.014062100s > 13283206508.707530100s "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\once_cell-1.8.0" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libonce_cell-db71b4746cfb1f2e.rmeta" 13283115753.060280400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\once_cell-db71b4746cfb1f2e\\dep-lib-once_cell" mtime=13283115752.902244900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "%USERPROFILE%\\.cargo\\registry\\src\\github.com-1ecc6299db9ec823\\once_cell-1.8.0"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_parser-5ac8b7eaf86eb177.rmeta" 13283206261.876985600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast-ce7e3156c9b4e0c9.rmeta" 13283190022.552755500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_files-90bb204d732db203.rmeta" 13283115753.396514900s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libonce_cell-db71b4746cfb1f2e.rmeta" 13283115753.060280400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libbitflags-28f01af37b1a99ce.rmeta" 13283115752.935253200s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_parser" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_def-4ce00a45497c9d27.rmeta" 13283115753.266326400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] all paths up-to-date relative to "D:\\uc-analyzer-cargo-repro\\target\\debug\\.fingerprint\\uc_parser-5ac8b7eaf86eb177\\dep-lib-uc_parser" mtime=13283253705.644766500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] filesystem up-to-date "D:\\uc-analyzer-cargo-repro\\uc_parser"
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_analysis" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_analysis-eb1e76bd7a2d4720.rmeta" 13283206508.839941400s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analysis" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast-ce7e3156c9b4e0c9.rmeta" 13283190022.552755500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analysis" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analysis" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_parser-5ac8b7eaf86eb177.rmeta" 13283206261.876985600s
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint] fingerprint error for uc_analysis v0.1.0 (D:\uc-analyzer-cargo-repro\uc_analysis)/Check { test: false }/TargetInner { ..: lib_target("uc_analysis", ["lib"], "D:\\uc-analyzer-cargo-repro\\uc_analysis\\src\\lib.rs", Edition2021) }
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint]     err: current filesystem status shows we're outdated
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_ast-ce7e3156c9b4e0c9\lib-uc_ast
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_def-4ce00a45497c9d27\lib-uc_def
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\bitflags-28f01af37b1a99ce\lib-bitflags
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_files-90bb204d732db203\lib-uc_files
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\annotate-snippets-dcc78df68929311e\lib-annotate-snippets
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\unicode-width-f4e6b3a70c924064\lib-unicode-width
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_name-5963a663708fb94a\lib-uc_name
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_ast_lowering-c6bfe594fbf62aa1\lib-uc_ast_lowering
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint] fingerprint error for uc_ast_lowering v0.1.0 (D:\uc-analyzer-cargo-repro\uc_ast_lowering)/Check { test: false }/TargetInner { ..: lib_target("uc_ast_lowering", ["lib"], "D:\\uc-analyzer-cargo-repro\\uc_ast_lowering\\src\\lib.rs", Edition2021) }
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint]     err: current filesystem status shows we're outdated
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_middle-6156bd68ae4de83f\lib-uc_middle
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_parser-5ac8b7eaf86eb177\lib-uc_parser
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\once_cell-db71b4746cfb1f2e\lib-once_cell
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] fingerprint at: D:\uc-analyzer-cargo-repro\target\debug\.fingerprint\uc_analyzer-a1c8b642603088d1\bin-uc_analyzer
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max output mtime for "D:\\uc-analyzer-cargo-repro\\uc_analyzer" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_analyzer-a1c8b642603088d1.rmeta" 13283206508.950518200s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analyzer" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_ast-ce7e3156c9b4e0c9.rmeta" 13283190022.552755500s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analyzer" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_name-5963a663708fb94a.rmeta" 13283115753.018270600s
[2021-12-06T10:38:59Z DEBUG cargo::core::compiler::fingerprint] max dep mtime for "D:\\uc-analyzer-cargo-repro\\uc_analyzer" is "D:\\uc-analyzer-cargo-repro\\target\\debug\\deps\\libuc_parser-5ac8b7eaf86eb177.rmeta" 13283206261.876985600s
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint] fingerprint error for uc_analyzer v0.1.0 (D:\uc-analyzer-cargo-repro\uc_analyzer)/Check { test: false }/TargetInner { name: "uc_analyzer", doc: true, ..: with_path("D:\\uc-analyzer-cargo-repro\\uc_analyzer\\src\\main.rs", Edition2021) }
[2021-12-06T10:38:59Z INFO  cargo::core::compiler::fingerprint]     err: current filesystem status shows we're outdated
    Checking uc_ast_lowering v0.1.0 (D:\uc-analyzer-cargo-repro\uc_ast_lowering)
error[E0004]: non-exhaustive patterns: `&DelegateCallExpr { .. }` not covered
    --> uc_ast_lowering\src\body.rs:1291:32
     |
1291 |         let (kind, ty) = match &expr.kind {
     |                                ^^^^^^^^^^ pattern `&DelegateCallExpr { .. }` not covered
     |
     = help: ensure that all possible cases are being handled, possibly by adding wildcards or more match arms
     = note: the matched value is of type `&uc_ast::ExprKind`

warning: unused variable: `ops`
   --> uc_ast_lowering\src\lib.rs:928:9
    |
928 |         ops: &HashMap<DefId, &'hir uc_ast::FuncDef>,
    |         ^^^ help: if this is intentional, prefix it with an underscore: `_ops`
    |
    = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `name`
   --> uc_ast_lowering\src\body.rs:339:44
    |
339 |             uc_ast::StatementKind::Label { name } => {
    |                                            ^^^^ help: try ignoring the field: `name: _`

warning: unused variable: `receiver`
   --> uc_ast_lowering\src\body.rs:624:38
    |
624 |             NativeIteratorKind::Func(receiver, func_id) => {
    |                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_receiver`

warning: unused variable: `truncation`
    --> uc_ast_lowering\src\body.rs:1742:67
     |
1742 |                     ty::ConversionClassification::Allowed { auto, truncation } => {
     |                                                                   ^^^^^^^^^^ help: try ignoring the field: `truncation: _`

For more information about this error, try `rustc --explain E0004`.
warning: `uc_ast_lowering` (lib) generated 4 warnings
error: could not compile `uc_ast_lowering` due to previous error; 4 warnings emitted

@ehuss
Copy link
Contributor

ehuss commented Dec 6, 2021

@robojumper I moved your comment to #10175, as fingerprint problems are usually due to different reasons.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rebuild-detection Area: rebuild detection and fingerprinting C-bug Category: bug
Projects
None yet
Development

No branches or pull requests

3 participants