[INFO] cloning repository https://github.com/flyingcircusio/userscan
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/flyingcircusio/userscan" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflyingcircusio%2Fuserscan", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflyingcircusio%2Fuserscan'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8987e1d49bd0b297ff283d4a3e45285c6f5b4ad6
[INFO] checking flyingcircusio/userscan against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fflyingcircusio%2Fuserscan" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/flyingcircusio/userscan
[INFO] finished tweaking git repo https://github.com/flyingcircusio/userscan
[INFO] tweaked toml for git repo https://github.com/flyingcircusio/userscan written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/flyingcircusio/userscan on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/flyingcircusio/userscan already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `fc-userscan` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror v1.0.22
[INFO] [stderr]   Downloaded flate2 v1.0.14
[INFO] [stderr]   Downloaded thiserror-impl v1.0.22
[INFO] [stderr]   Downloaded minilzo-sys v0.1.0
[INFO] [stderr]   Downloaded bytesize v1.0.1
[INFO] [stderr]   Downloaded zip v0.5.9
[INFO] [stderr]   Downloaded minilzo v0.2.0
[INFO] [stderr]   Downloaded users v0.11.0
[INFO] [stderr]   Downloaded probes v0.4.1
[INFO] [stderr]   Downloaded anyhow v1.0.35
[INFO] [stderr]   Downloaded rmp-serde v0.14.4
[INFO] [stderr]   Downloaded rmp v0.8.9
[INFO] [stderr]   Downloaded globset v0.4.6
[INFO] [stderr]   Downloaded ignore v0.4.17
[INFO] [stderr]   Downloaded crossbeam-channel v0.4.4
[INFO] [stderr]   Downloaded bstr v0.2.14
[INFO] [stderr]   Downloaded bzip2-sys v0.1.9+1.0.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0
[INFO] running `Command { std: "docker" "start" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:47:1
[INFO] [stderr]    |
[INFO] [stderr] 47 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `fc-userscan` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.81
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]    Compiling bzip2-sys v0.1.9+1.0.8
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]     Checking regex-syntax v0.6.21
[INFO] [stderr]    Compiling crossbeam-utils v0.8.1
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.22
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking bstr v0.2.14
[INFO] [stderr]    Compiling anyhow v1.0.35
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking crossbeam-channel v0.4.4
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]    Compiling structopt-derive v0.4.14
[INFO] [stderr]     Checking twoway v0.1.8
[INFO] [stderr]     Checking rmp v0.8.9
[INFO] [stderr]     Checking num-integer v0.1.44
[INFO] [stderr]     Checking bytesize v1.0.1
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking rmp-serde v0.14.4
[INFO] [stderr]     Checking crossbeam v0.7.3
[INFO] [stderr]     Checking thiserror v1.0.22
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking term_size v0.3.2
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking bzip2 v0.3.3
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking flate2 v1.0.14
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking minilzo-sys v0.1.0
[INFO] [stderr]     Checking minilzo v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking probes v0.4.1
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking colored v1.9.3
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking zip v0.5.9
[INFO] [stderr]     Checking users v0.11.0
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking nix v0.19.1
[INFO] [stderr]     Checking regex v1.4.2
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]     Checking globset v0.4.6
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]     Checking ignore v0.4.17
[INFO] [stderr]     Checking structopt v0.3.21
[INFO] [stderr]     Checking fc-userscan v0.4.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/registry.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 | ...                   debug!("removing empty dir {}", path.display())
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `debug`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/storepaths/cache.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 | /             info!(
[INFO] [stdout] 158 | |                 "Cache saved to {}, {} entries, hit ratio {}%",
[INFO] [stdout] 159 | |                 p2s(&self.filename),
[INFO] [stdout] 160 | |                 self.len().to_string().cyan(),
[INFO] [stdout] 161 | |                 ((self.hit_ratio() * 100.0) as u32).to_string().cyan()
[INFO] [stdout] 162 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `info`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/registry.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 | ...                   debug!("removing empty dir {}", path.display())
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `debug`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/storepaths/cache.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 | /             info!(
[INFO] [stdout] 158 | |                 "Cache saved to {}, {} entries, hit ratio {}%",
[INFO] [stdout] 159 | |                 p2s(&self.filename),
[INFO] [stdout] 160 | |                 self.len().to_string().cyan(),
[INFO] [stdout] 161 | |                 ((self.hit_ratio() * 100.0) as u32).to_string().cyan()
[INFO] [stdout] 162 | |             )
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `info`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `info` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<bool>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/storepaths/cache.rs:65:28
[INFO] [stdout]    |
[INFO] [stdout] 65 |             if !self.dirty.compare_and_swap(true, false, Ordering::SeqCst) {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<bool>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/storepaths/cache.rs:65:28
[INFO] [stdout]    |
[INFO] [stdout] 65 |             if !self.dirty.compare_and_swap(true, false, Ordering::SeqCst) {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rx` is never read
[INFO] [stdout]    --> src/registry.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct NullGCRoots {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 217 |     output: Output,
[INFO] [stdout] 218 |     rx: Option<GCRootsRx>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NullGCRoots` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rx` is never read
[INFO] [stdout]    --> src/registry.rs:386:9
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub struct FakeGCRoots {
[INFO] [stdout]     |                ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 386 |         rx: Option<GCRootsRx>,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FakeGCRoots` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/registry.rs:257:25
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn _worker(tempdir: &TempDir) -> RegistryWorker {
[INFO] [stdout]     |                         ^^^^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 257 |     fn _worker(tempdir: &TempDir) -> RegistryWorker<'_> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/storepaths/mod.rs:72:63
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn iter_refs<'a>(&'a self) -> Box<dyn Iterator<Item = &Path> + 'a> {
[INFO] [stdout]    |                           -- the lifetime is named here       ^^^^^ the same lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn iter_refs<'a>(&'a self) -> Box<dyn Iterator<Item = &'a Path> + 'a> {
[INFO] [stdout]    |                                                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rx` is never read
[INFO] [stdout]    --> src/registry.rs:218:5
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct NullGCRoots {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 217 |     output: Output,
[INFO] [stdout] 218 |     rx: Option<GCRootsRx>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NullGCRoots` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/storepaths/mod.rs:72:63
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn iter_refs<'a>(&'a self) -> Box<dyn Iterator<Item = &Path> + 'a> {
[INFO] [stdout]    |                           -- the lifetime is named here       ^^^^^ the same lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn iter_refs<'a>(&'a self) -> Box<dyn Iterator<Item = &'a Path> + 'a> {
[INFO] [stdout]    |                                                                ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `chrono`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | chrono = "0.4"
[INFO] [stderr]   | ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `chrono`
[INFO] [stderr] warning: `fc-userscan` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.03s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fc-userscan v0.4.9 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 9`
[INFO] running `Command { std: "docker" "inspect" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0", kill_on_drop: false }`
[INFO] [stdout] 0e23336a453f3f4ac4013510607f9fff5be6f91ec4f184f41d3177cf19b745f0
