Skip to content

interaction with sccache changed, all deps rebuilt when calling "cargo build" twice #6976

@matthiaskrgr

Description

@matthiaskrgr
cargo 1.36.0-nightly (c4fcfb725 2019-05-15)
release: 1.36.0
commit-hash: c4fcfb725b4be00c72eb9cf30c7d8b095577c280
commit-date: 2019-05-15

When using sccache (via RUSTC_WRAPPER), running cargo build ; cargo build will cause all dependencies to be rebuilt even if nothing changed between the two "cargo build" runs.
(I'm not very sure what is actually happening, since the second run is consistently faster than the first run)

cargo clean ; cargo build ; cargo build

   Compiling serde v1.0.80
   Compiling ryu v0.2.7
   Compiling itoa v0.4.3
   Compiling serde_json v1.0.39 (/home/matthias/vcs/github/serde_json)
    Finished dev [unoptimized + debuginfo] target(s) in 4.43s
   Compiling itoa v0.4.3
   Compiling serde v1.0.80
   Compiling ryu v0.2.7
   Compiling serde_json v1.0.39 (/home/matthias/vcs/github/serde_json)
    Finished dev [unoptimized + debuginfo] target(s) in 1.48s

This is not the case when sccache is not used or when RUSTC_WRAPPER is unset:

   Compiling serde v1.0.80
   Compiling ryu v0.2.7
   Compiling itoa v0.4.3
   Compiling serde_json v1.0.39 (/home/matthias/vcs/github/serde_json)
    Finished dev [unoptimized + debuginfo] target(s) in 11.65s
    Finished dev [unoptimized + debuginfo] target(s) in 0.01s

According to my bisect, 6b28a0c is the commit that caused this strange behaviour.

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions