[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#3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f for pr-87248 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsandin%2Fusbmux-rs" "/workspace/builds/worker-8/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sandin/usbmux-rs on toolchain 3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f" "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-8/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" "+3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f" "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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded plist v1.1.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "+3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 837e6f4e3c305dd496c859cfce647f1913eeb312aa6c56b1f138344fcb7f0d9a [INFO] running `Command { std: "docker" "start" "-a" "837e6f4e3c305dd496c859cfce647f1913eeb312aa6c56b1f138344fcb7f0d9a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "837e6f4e3c305dd496c859cfce647f1913eeb312aa6c56b1f138344fcb7f0d9a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "837e6f4e3c305dd496c859cfce647f1913eeb312aa6c56b1f138344fcb7f0d9a", kill_on_drop: false }` [INFO] [stdout] 837e6f4e3c305dd496c859cfce647f1913eeb312aa6c56b1f138344fcb7f0d9a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "+3e59a8c2f14152ccc92a6c079f592dc2dc6fa93f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 44d592507cd2f7606c6a308dd2dc314c01a18009d392b37aa7b7fc40ab105481 [INFO] running `Command { std: "docker" "start" "-a" "44d592507cd2f7606c6a308dd2dc314c01a18009d392b37aa7b7fc40ab105481", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.71 [INFO] [stderr] Checking hashbrown v0.9.1 [INFO] [stderr] Checking safemem v0.3.3 [INFO] [stderr] Checking base64 v0.13.0 [INFO] [stderr] Checking xml-rs v0.8.3 [INFO] [stderr] Compiling proc-macro2 v1.0.26 [INFO] [stderr] Checking line-wrap v0.1.1 [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 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 plist v1.1.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking usbmux v0.1.0 (/opt/rustwide/workdir) [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: 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] 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] [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[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] [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: 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] 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] | ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `Box`, found closure [INFO] [stdout] | help: store this in the heap by calling `Box::new`: `Box::new(callback)` [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] [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] | ^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `Box`, found closure [INFO] [stdout] | help: store this in the heap by calling `Box::new`: `Box::new(callback)` [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] [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] running `Command { std: "docker" "inspect" "44d592507cd2f7606c6a308dd2dc314c01a18009d392b37aa7b7fc40ab105481", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "44d592507cd2f7606c6a308dd2dc314c01a18009d392b37aa7b7fc40ab105481", kill_on_drop: false }` [INFO] [stdout] 44d592507cd2f7606c6a308dd2dc314c01a18009d392b37aa7b7fc40ab105481