Skip to content

x.py check creates work for itself #82461

Description

@jyn514

I tried this: x.py check && x.py check

I expected to see this happen: The first invocation does as much work as it needs to, and the second invocation does no work at all.

Instead, this happened: The second invocation checks rustdoc, clippy, and bootstrap twice.

Details
Checking stage0 rustdoc artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
    Checking cfg-if v0.1.10
    Checking lazy_static v1.4.0
    Checking regex-syntax v0.6.22
    Checking itoa v0.4.6
    Checking libc v0.2.85
    Checking memchr v2.3.3
    Checking ryu v1.0.5
    Checking crossbeam-utils v0.7.2
    Checking crossbeam-utils v0.6.6
    Checking thread_local v1.0.1
    Checking serde_json v1.0.59
    Checking aho-corasick v0.7.13
    Checking pulldown-cmark v0.8.0
    Checking crossbeam-epoch v0.8.2
    Checking crossbeam-queue v0.1.2
    Checking getrandom v0.1.14
    Checking num_cpus v1.13.0
    Checking crossbeam-deque v0.7.3
    Checking rand_core v0.5.1
    Checking rustc-rayon-core v0.3.0
    Checking rand_chacha v0.2.2
    Checking rand v0.7.3
    Checking rustc-rayon v0.3.0
    Checking tempfile v3.1.0
    Checking regex v1.4.3
    Checking rustdoc v0.0.0 (/home/joshua/rustc2/src/librustdoc)
    Checking rustdoc-tool v0.0.0 (/home/joshua/rustc2/src/tools/rustdoc)
    Finished release [optimized] target(s) in 3.72s
Checking stage0 cranelift artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
warning: field is never read: `update_symbols`
  --> src/archive.rs:33:5
   |
33 |     update_symbols: bool,
   |     ^^^^^^^^^^^^^^^^^^^^
   |
   = note: `#[warn(dead_code)]` on by default

warning: 1 warning emitted

    Finished release [optimized] target(s) in 0.03s
Checking stage0 clippy artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
    Checking serde_json v1.0.59
    Checking cargo_metadata v0.12.0
    Checking clippy_lints v0.1.52 (/home/joshua/rustc2/src/tools/clippy/clippy_lints)
    Checking clippy v0.1.52 (/home/joshua/rustc2/src/tools/clippy)
    Finished release [optimized] target(s) in 4.53s
Checking stage0 bootstrap artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
    Checking cfg-if v0.1.10
    Checking lazy_static v1.4.0
    Checking regex-syntax v0.6.22
    Checking itoa v0.4.6
    Checking memchr v2.3.3
    Checking libc v0.2.85
    Checking ryu v1.0.5
    Checking log v0.4.11
    Checking thread_local v1.0.1
    Checking crossbeam-utils v0.7.2
    Checking serde_json v1.0.59
    Checking aho-corasick v0.7.13
    Checking bstr v0.2.13
    Checking time v0.1.43
    Checking filetime v0.2.12
    Checking num_cpus v1.13.0
    Checking regex v1.4.3
    Checking globset v0.4.5
    Checking ignore v0.4.16
    Checking bootstrap v0.0.0 (/home/joshua/rustc2/src/bootstrap)
    Finished release [optimized] target(s) in 3.95s
Build completed successfully in 0:00:13

Meta

Currently rebasing #79341 over fe1bf8e, but this has been happening for the last few weeks so I would expect any parent commit of fe1bf8e, to reproduce the issue.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-contributor-roadblockArea: Makes things more difficult for new or seasoned contributors to RustC-bugCategory: This is a bug.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions