[INFO] cloning repository https://github.com/sandin/usbmux-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sandin/usbmux-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsandin%2Fusbmux-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsandin%2Fusbmux-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b531897455248cee36cfcd7909e9e4c7b4e7eeb3 [INFO] checking sandin/usbmux-rs against try#a7a572ce3edd6d476191fbfe92c9c1986e009b34 for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsandin%2Fusbmux-rs" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sandin/usbmux-rs on toolchain a7a572ce3edd6d476191fbfe92c9c1986e009b34 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/sandin/usbmux-rs [INFO] finished tweaking git repo https://github.com/sandin/usbmux-rs [INFO] tweaked toml for git repo https://github.com/sandin/usbmux-rs written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/sandin/usbmux-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 59d6adb3978b9e3de334898c4fea8fa44760d2e8d20879564c20f85070668545 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "59d6adb3978b9e3de334898c4fea8fa44760d2e8d20879564c20f85070668545", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "59d6adb3978b9e3de334898c4fea8fa44760d2e8d20879564c20f85070668545", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59d6adb3978b9e3de334898c4fea8fa44760d2e8d20879564c20f85070668545", kill_on_drop: false }` [INFO] [stdout] 59d6adb3978b9e3de334898c4fea8fa44760d2e8d20879564c20f85070668545 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+a7a572ce3edd6d476191fbfe92c9c1986e009b34" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 995f6e0481c862850242cd173c98ebaaf83e11c5f99288791f16c12c24547750 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "995f6e0481c862850242cd173c98ebaaf83e11c5f99288791f16c12c24547750", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Compiling syn v1.0.71 [INFO] [stderr] Checking safemem v0.3.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling indexmap v1.6.2 [INFO] [stderr] Compiling proc-macro2 v1.0.26 [INFO] [stderr] Checking line-wrap v0.1.1 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Checking chrono v0.4.19 [INFO] [stderr] Compiling serde_derive v1.0.125 [INFO] [stderr] Checking serde v1.0.125 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking plist v1.1.0 [INFO] [stderr] Checking usbmux v0.1.0 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2018 edition to 2021 [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/lib.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Cursor` [INFO] [stdout] --> src/lib.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::io::Cursor; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter` [INFO] [stdout] --> src/lib.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/lib.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | use error::{Error, ErrorKind, Result}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PLIST_LIBUSBMUX_VERSION` [INFO] [stdout] --> src/lib.rs:30:70 [INFO] [stdout] | [INFO] [stdout] 30 | UsbmuxdDevice, UsbmuxdDeviceList, UsbmuxdHeader, UsbmuxdMsgType, PLIST_LIBUSBMUX_VERSION, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> src/lib.rs:145:25 [INFO] [stdout] | [INFO] [stdout] 145 | thread::sleep_ms(100); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `(dyn UsbmuxdEventListener + 'static)` cannot be sent between threads safely [INFO] [stdout] --> src/lib.rs:133:28 [INFO] [stdout] | [INFO] [stdout] 133 | self.worker = Some(thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `(dyn UsbmuxdEventListener + 'static)` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] = help: the trait `Send` is not implemented for `(dyn UsbmuxdEventListener + 'static)` [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Unique<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] = note: required because it appears within the type `Box<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Unique>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stdout] = note: required because it appears within the type `Vec>` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Mutex>>` [INFO] [stdout] = note: 1 redundant requirements hidden [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Arc>>>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/lib.rs:133:42: 148:10]` [INFO] [stdout] note: required by a bound in `spawn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `dyn UsbmuxdEventListener` [INFO] [stdout] --> src/lib.rs:175:27 [INFO] [stdout] | [INFO] [stdout] 175 | return **item == listener; [INFO] [stdout] | ------ ^^ -------- Box [INFO] [stdout] | | [INFO] [stdout] | dyn UsbmuxdEventListener [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0369. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `usbmux` due to 3 previous errors; 9 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Cursor` [INFO] [stdout] --> src/lib.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::io::Cursor; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter` [INFO] [stdout] --> src/lib.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | use std::io::{BufReader, BufWriter, Read, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PLIST_LIBUSBMUX_VERSION` [INFO] [stdout] --> src/lib.rs:30:70 [INFO] [stdout] | [INFO] [stdout] 30 | UsbmuxdDevice, UsbmuxdDeviceList, UsbmuxdHeader, UsbmuxdMsgType, PLIST_LIBUSBMUX_VERSION, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> src/lib.rs:145:25 [INFO] [stdout] | [INFO] [stdout] 145 | thread::sleep_ms(100); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `(dyn UsbmuxdEventListener + 'static)` cannot be sent between threads safely [INFO] [stdout] --> src/lib.rs:133:28 [INFO] [stdout] | [INFO] [stdout] 133 | self.worker = Some(thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `(dyn UsbmuxdEventListener + 'static)` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] = help: the trait `Send` is not implemented for `(dyn UsbmuxdEventListener + 'static)` [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Unique<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] = note: required because it appears within the type `Box<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Unique>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stdout] = note: required because it appears within the type `std::vec::Vec>` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Mutex>>` [INFO] [stdout] = note: 1 redundant requirements hidden [INFO] [stdout] = note: required because of the requirements on the impl of `Send` for `Arc>>>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/lib.rs:133:42: 148:10]` [INFO] [stdout] note: required by a bound in `spawn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `dyn UsbmuxdEventListener` [INFO] [stdout] --> src/lib.rs:175:27 [INFO] [stdout] | [INFO] [stdout] 175 | return **item == listener; [INFO] [stdout] | ------ ^^ -------- Box [INFO] [stdout] | | [INFO] [stdout] | dyn UsbmuxdEventListener [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::slice::::connect`: renamed to join [INFO] [stdout] --> src/lib.rs:187:14 [INFO] [stdout] | [INFO] [stdout] 187 | strs.connect(" ") [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:197:33 [INFO] [stdout] | [INFO] [stdout] 194 | let callback = || { [INFO] [stdout] | ________________________- [INFO] [stdout] 195 | | println!("on event listener callback"); [INFO] [stdout] 196 | | }; [INFO] [stdout] | |_________- the found closure [INFO] [stdout] 197 | client.events_subscribe(callback); [INFO] [stdout] | ^^^^^^^^ expected struct `Box`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] found closure `[closure@src/lib.rs:194:24: 196:10]` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 197 | client.events_subscribe(Box::new(callback)); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:202:35 [INFO] [stdout] | [INFO] [stdout] 194 | let callback = || { [INFO] [stdout] | ________________________- [INFO] [stdout] 195 | | println!("on event listener callback"); [INFO] [stdout] 196 | | }; [INFO] [stdout] | |_________- the found closure [INFO] [stdout] ... [INFO] [stdout] 202 | client.events_unsubscribe(callback); [INFO] [stdout] | ^^^^^^^^ expected struct `Box`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn UsbmuxdEventListener + 'static)>` [INFO] [stdout] found closure `[closure@src/lib.rs:194:24: 196:10]` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 202 | client.events_unsubscribe(Box::new(callback)); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0369. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] [stderr] error: failed to migrate to next edition [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo fix --edition --allow-no-vcs --allow-dirty --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "995f6e0481c862850242cd173c98ebaaf83e11c5f99288791f16c12c24547750", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "995f6e0481c862850242cd173c98ebaaf83e11c5f99288791f16c12c24547750", kill_on_drop: false }` [INFO] [stdout] 995f6e0481c862850242cd173c98ebaaf83e11c5f99288791f16c12c24547750