[INFO] fetching crate townhopper_cli 0.1.1...
[INFO] checking townhopper_cli-0.1.1 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate townhopper_cli 0.1.1 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate townhopper_cli 0.1.1
[INFO] finished tweaking crates.io crate townhopper_cli 0.1.1
[INFO] tweaked toml for crates.io crate townhopper_cli 0.1.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate townhopper_cli 0.1.1 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 103 packages to highest compatible versions
[INFO] [stderr]       Adding atty v0.2.11 (available: v0.2.14)
[INFO] [stderr]       Adding chrono-systemd-time v0.1.0 (available: v0.4.0)
[INFO] [stderr]       Adding clap v2.34.0 (available: v4.6.7)
[INFO] [stderr]       Adding config v0.9.3 (available: v0.15.27)
[INFO] [stderr]       Adding rusqlite v0.19.0 (available: v0.40.2)
[INFO] [stderr]       Adding stderrlog v0.4.3 (available: v0.6.0)
[INFO] [stderr]       Adding thread_local v0.3.4 (available: v0.3.6)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] [stderr]       Adding xdg v2.5.2 (available: v3.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d
[INFO] running `Command { std: "docker" "start" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d", 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" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d", 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" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]    Compiling libc v0.2.191
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling unicode-ident v1.0.27
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking itoa v1.0.18
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]     Checking serde v0.8.23
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]    Compiling serde_json v1.0.154
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking lru-cache v0.1.2
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking log v0.4.34
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking lazy_static v1.5.1
[INFO] [stderr]    Compiling nom v4.2.3
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking thread_local v0.3.4
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking unidecode v0.3.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.15.0
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking rust-ini v0.13.0
[INFO] [stderr]     Checking maplit v1.0.2
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking xdg v2.5.2
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking serde_test v0.8.23
[INFO] [stderr]     Checking rusqlite v0.19.0
[INFO] [stderr]     Checking linked-hash-map v0.3.0
[INFO] [stderr]     Checking regex-automata v0.4.18
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking chrono-systemd-time v0.1.0
[INFO] [stderr]     Checking stderrlog v0.4.3
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]     Checking serde-hjson v0.8.2
[INFO] [stderr]     Checking config v0.9.3
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]    Compiling chrono-tz v0.5.3
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]     Checking townhopper v0.1.1
[INFO] [stderr]     Checking townhopper_cli v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:34:36
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn main_result() -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn main_result() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn load_config(matches: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn load_config(matches: &ArgMatches) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:34:36
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn main_result() -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn main_result() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:78:56
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn load_config(matches: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 78 | fn load_config(matches: &ArgMatches) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/result.rs:92:20
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let _: Box<Error> = Box::new(ThprCliError::Generic("Some error".into()));
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let _: Box<dyn Error> = Box::new(ThprCliError::Generic("Some error".into()));
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `Vec<HashMap<String, String>>`
[INFO] [stdout]    --> src/cfg.rs:108:57
[INFO] [stdout]     |
[INFO] [stdout] 108 |     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 108 -     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout] 108 +     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new())?;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 108 -     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout] 108 +     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", <Vec<HashMap<String, String>> as Into<_>>::into(Vec::new()))?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `PathBuf`
[INFO] [stdout]    --> src/cfg.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 | /         abs_path.canonicalize().expect(
[INFO] [stdout] 122 | |             &format!("Unable to resolve relative path {:?} from config path {:?}.",
[INFO] [stdout] 123 | |                      cfg_rel_path, cfg_path)).into()
[INFO] [stdout]     | |____________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 123 -                      cfg_rel_path, cfg_path)).into()
[INFO] [stdout] 123 +                      cfg_rel_path, cfg_path))
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 121 ~         <PathBuf as Into<_>>::into(abs_path.canonicalize().expect(
[INFO] [stdout] 122 |             &format!("Unable to resolve relative path {:?} from config path {:?}.",
[INFO] [stdout] 123 ~                      cfg_rel_path, cfg_path)))
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `townhopper_cli` (bin "townhopper" test) due to 2 previous errors; 3 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `Vec<HashMap<String, String>>`
[INFO] [stdout]    --> src/cfg.rs:108:57
[INFO] [stdout]     |
[INFO] [stdout] 108 |     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 108 -     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout] 108 +     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new())?;
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 108 -     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", Vec::new().into())?;
[INFO] [stdout] 108 +     c.set_default::<Vec<GtfsSourceCfg>>("gtfs_sources", <Vec<HashMap<String, String>> as Into<_>>::into(Vec::new()))?;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `PathBuf`
[INFO] [stdout]    --> src/cfg.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 | /         abs_path.canonicalize().expect(
[INFO] [stdout] 122 | |             &format!("Unable to resolve relative path {:?} from config path {:?}.",
[INFO] [stdout] 123 | |                      cfg_rel_path, cfg_path)).into()
[INFO] [stdout]     | |____________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 123 -                      cfg_rel_path, cfg_path)).into()
[INFO] [stdout] 123 +                      cfg_rel_path, cfg_path))
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 121 ~         <PathBuf as Into<_>>::into(abs_path.canonicalize().expect(
[INFO] [stdout] 122 |             &format!("Unable to resolve relative path {:?} from config path {:?}.",
[INFO] [stdout] 123 ~                      cfg_rel_path, cfg_path)))
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `townhopper_cli` (bin "townhopper") due to 2 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d", kill_on_drop: false }`
[INFO] [stdout] 1043c97b90955d8e37d9170d4a42ff644b139c4bd91b8fbf14f22df15a3f9a5d
