[INFO] cloning repository https://github.com/ducharmemp/distrust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ducharmemp/distrust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2Fdistrust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2Fdistrust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 93ee05faa2a6c5611d1f083f3e086a1b41388283 [INFO] testing ducharmemp/distrust against master#ebf0cf75d368c035f4c7e7246d203bd469ee4a51 for pr-137940 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fducharmemp%2Fdistrust" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ducharmemp/distrust on toolchain ebf0cf75d368c035f4c7e7246d203bd469ee4a51 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ducharmemp/distrust [INFO] finished tweaking git repo https://github.com/ducharmemp/distrust [INFO] tweaked toml for git repo https://github.com/ducharmemp/distrust written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ducharmemp/distrust 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" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c038304cc2d7d6ef277a461758401876065f59d3efefe7ad12614a44600d4f02 [INFO] running `Command { std: "docker" "start" "-a" "c038304cc2d7d6ef277a461758401876065f59d3efefe7ad12614a44600d4f02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c038304cc2d7d6ef277a461758401876065f59d3efefe7ad12614a44600d4f02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c038304cc2d7d6ef277a461758401876065f59d3efefe7ad12614a44600d4f02", kill_on_drop: false }` [INFO] [stdout] c038304cc2d7d6ef277a461758401876065f59d3efefe7ad12614a44600d4f02 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1680c8fbd8dfb46fcd6d22e546df16ab0e007457dc29fcd9e987cdd5077fd1af" "/opt/rustwide/cargo-home/bin/cargo" "+ebf0cf75d368c035f4c7e7246d203bd469ee4a51" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 22e2d8f6b9418ba551eae09897c7293073b2d8b7ee74ff55713d09786684108a [INFO] running `Command { std: "docker" "start" "-a" "22e2d8f6b9418ba551eae09897c7293073b2d8b7ee74ff55713d09786684108a", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling const_fn v0.4.5 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling libc v0.2.82 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling rayon-core v1.9.0 [INFO] [stderr] Compiling anyhow v1.0.37 [INFO] [stderr] Compiling either v1.6.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.1 [INFO] [stderr] Compiling memoffset v0.6.1 [INFO] [stderr] Compiling rayon v1.5.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.1 [INFO] [stderr] Compiling crossbeam-channel v0.5.0 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.0 [INFO] [stderr] Compiling distrust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: struct fields are separated by `,` [INFO] [stdout] --> src/commands.rs:9:22 [INFO] [stdout] | [INFO] [stdout] 9 | struct Foo { bar: i64; } [INFO] [stdout] | --- ^ help: replace `;` with `,` [INFO] [stdout] | | [INFO] [stdout] | while parsing this struct [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `std::cow` [INFO] [stdout] --> src/commands.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cow::Cow; [INFO] [stdout] | ^^^ could not find `cow` in `std` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `commands::Command<'_>: TryFrom>` is not satisfied [INFO] [stdout] --> src/commands.rs:61:19 [INFO] [stdout] | [INFO] [stdout] 61 | let command = Command::try_from(command)?; [INFO] [stdout] | ^^^^^^^ the trait `From>` is not implemented for `commands::Command<'_>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `TryFrom>` is not implemented for `commands::Command<'_>` [INFO] [stdout] but trait `TryFrom<&[&str]>` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `&[&str]`, found `Vec` [INFO] [stdout] = note: required for `Vec` to implement `Into>` [INFO] [stdout] = note: required for `commands::Command<'_>` to implement `TryFrom>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RedisType: From<&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:69:43 [INFO] [stdout] | [INFO] [stdout] 69 | dictionary.insert(name, value.into()); [INFO] [stdout] | ^^^^ the trait `From<&str>` is not implemented for `RedisType` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `RedisType` implements `From` [INFO] [stdout] `RedisType` implements `From>` [INFO] [stdout] = note: required for `&str` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:69:31 [INFO] [stdout] | [INFO] [stdout] 69 | dictionary.insert(name, value.into()); [INFO] [stdout] | ------ ^^^^- help: try using a conversion method: `.to_string()` [INFO] [stdout] | | | [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1023:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `String: Borrow<&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:73:18 [INFO] [stdout] | [INFO] [stdout] 73 | .get(&name) [INFO] [stdout] | --- ^^^^^ the trait `Borrow<&str>` is not implemented for `String` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Borrow<&_>` is not implemented for `String` [INFO] [stdout] but trait `Borrow<_>` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `str`, found `&str` [INFO] [stdout] note: required by a bound in `BTreeMap::::get` [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:695:5 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RedisType: From<&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:77:33 [INFO] [stdout] | [INFO] [stdout] 77 | .insert(name, value.into()) [INFO] [stdout] | ^^^^ the trait `From<&str>` is not implemented for `RedisType` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `RedisType` implements `From` [INFO] [stdout] `RedisType` implements `From>` [INFO] [stdout] = note: required for `&str` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:77:21 [INFO] [stdout] | [INFO] [stdout] 77 | .insert(name, value.into()) [INFO] [stdout] | ------ ^^^^- help: try using a conversion method: `.to_string()` [INFO] [stdout] | | | [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1023:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `String: Borrow<&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:82:52 [INFO] [stdout] | [INFO] [stdout] 82 | .map(|key| match dictionary.remove(key) { [INFO] [stdout] | ------ ^^^ the trait `Borrow<&str>` is not implemented for `String` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Borrow<&_>` is not implemented for `String` [INFO] [stdout] but trait `Borrow<_>` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `str`, found `&str` [INFO] [stdout] note: required by a bound in `BTreeMap::::remove` [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1086:5 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:90:24 [INFO] [stdout] | [INFO] [stdout] 90 | .entry(key.clone()) [INFO] [stdout] | ----- ^^^^-----^^ [INFO] [stdout] | | | | [INFO] [stdout] | | | help: try using a conversion method: `to_string` [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] help: the return type of this call is `&str` due to the type of the argument passed [INFO] [stdout] --> src/commands.rs:89:25 [INFO] [stdout] | [INFO] [stdout] 89 | let entry = dictionary [INFO] [stdout] | _________________________^ [INFO] [stdout] 90 | | .entry(key.clone()) [INFO] [stdout] | |________________________-----------^ [INFO] [stdout] | | [INFO] [stdout] | this argument influences the return type of `entry` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1316:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RedisType: From<&&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:96:39 [INFO] [stdout] | [INFO] [stdout] 96 | entry.push_front(elem.into()); [INFO] [stdout] | ^^^^ the trait `From<&&str>` is not implemented for `RedisType` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `RedisType` implements `From` [INFO] [stdout] `RedisType` implements `From>` [INFO] [stdout] = note: required for `&&str` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:100:31 [INFO] [stdout] | [INFO] [stdout] 100 | dictionary.insert(key, entry.into()); [INFO] [stdout] | ------ ^^^- help: try using a conversion method: `.to_string()` [INFO] [stdout] | | | [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1023:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:105:24 [INFO] [stdout] | [INFO] [stdout] 105 | .entry(key.clone()) [INFO] [stdout] | ----- ^^^^-----^^ [INFO] [stdout] | | | | [INFO] [stdout] | | | help: try using a conversion method: `to_string` [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] help: the return type of this call is `&str` due to the type of the argument passed [INFO] [stdout] --> src/commands.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 104 | let entry = dictionary [INFO] [stdout] | _________________________^ [INFO] [stdout] 105 | | .entry(key.clone()) [INFO] [stdout] | |________________________-----------^ [INFO] [stdout] | | [INFO] [stdout] | this argument influences the return type of `entry` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1316:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `RedisType: From<&&str>` is not satisfied [INFO] [stdout] --> src/commands.rs:111:38 [INFO] [stdout] | [INFO] [stdout] 111 | entry.push_back(elem.into()); [INFO] [stdout] | ^^^^ the trait `From<&&str>` is not implemented for `RedisType` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `From`: [INFO] [stdout] `RedisType` implements `From` [INFO] [stdout] `RedisType` implements `From>` [INFO] [stdout] = note: required for `&&str` to implement `Into` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/commands.rs:115:31 [INFO] [stdout] | [INFO] [stdout] 115 | dictionary.insert(key, entry.into()); [INFO] [stdout] | ------ ^^^- help: try using a conversion method: `.to_string()` [INFO] [stdout] | | | [INFO] [stdout] | | expected `String`, found `&str` [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/ebf0cf75d368c035f4c7e7246d203bd469ee4a51/library/alloc/src/collections/btree/map.rs:1023:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `commands::Command<'_>: From>` is not satisfied [INFO] [stdout] --> src/commands.rs:61:19 [INFO] [stdout] | [INFO] [stdout] 61 | let command = Command::try_from(command)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `From>` is not implemented for `commands::Command<'_>` [INFO] [stdout] | [INFO] [stdout] = help: the trait `TryFrom>` is not implemented for `commands::Command<'_>` [INFO] [stdout] but trait `TryFrom<&[&str]>` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `&[&str]`, found `Vec` [INFO] [stdout] = note: required for `Vec` to implement `Into>` [INFO] [stdout] = note: required for `commands::Command<'_>` to implement `TryFrom>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0432. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `distrust` (bin "distrust") due to 16 previous errors [INFO] running `Command { std: "docker" "inspect" "22e2d8f6b9418ba551eae09897c7293073b2d8b7ee74ff55713d09786684108a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22e2d8f6b9418ba551eae09897c7293073b2d8b7ee74ff55713d09786684108a", kill_on_drop: false }` [INFO] [stdout] 22e2d8f6b9418ba551eae09897c7293073b2d8b7ee74ff55713d09786684108a