[INFO] cloning repository https://github.com/davidko/stk500-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davidko/stk500-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dce56fa4ab7a7ce71a050d800355b2d63342daaf [INFO] checking davidko/stk500-rs against try#6f8a6450478f69b8510c8976ab6c2a70b3b0e47c for pr-84920 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-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/davidko/stk500-rs on toolchain 6f8a6450478f69b8510c8976ab6c2a70b3b0e47c [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/davidko/stk500-rs [INFO] finished tweaking git repo https://github.com/davidko/stk500-rs [INFO] tweaked toml for git repo https://github.com/davidko/stk500-rs written to /workspace/builds/worker-8/source/Cargo.toml [INFO] crate git repo https://github.com/davidko/stk500-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] error: the lock file /workspace/builds/worker-8/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-serial v4.3.3 [INFO] [stderr] Downloaded mio-serial v3.3.1 [INFO] [stderr] Downloaded tokio-core v0.1.18 [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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 993c084191d6156c3c9e98a914abaa702de9ce2fc0c8dd6bb209d5543cc2168a [INFO] running `Command { std: "docker" "start" "-a" "993c084191d6156c3c9e98a914abaa702de9ce2fc0c8dd6bb209d5543cc2168a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "993c084191d6156c3c9e98a914abaa702de9ce2fc0c8dd6bb209d5543cc2168a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "993c084191d6156c3c9e98a914abaa702de9ce2fc0c8dd6bb209d5543cc2168a", kill_on_drop: false }` [INFO] [stdout] 993c084191d6156c3c9e98a914abaa702de9ce2fc0c8dd6bb209d5543cc2168a [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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+6f8a6450478f69b8510c8976ab6c2a70b3b0e47c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 52554cd86902e8230b63642336f1e38b80d9ed77345751d69a0a56044e8dc9e9 [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" "52554cd86902e8230b63642336f1e38b80d9ed77345751d69a0a56044e8dc9e9", kill_on_drop: false }` [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Checking byteorder v1.4.3 [INFO] [stderr] Compiling pkg-config v0.3.19 [INFO] [stderr] Checking bytes v1.0.1 [INFO] [stderr] Checking tokio-sync v0.1.8 [INFO] [stderr] Checking tokio-service v0.1.0 [INFO] [stderr] Checking crossbeam-utils v0.7.2 [INFO] [stderr] Checking net2 v0.2.37 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Checking nix v0.14.1 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking nix v0.17.0 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking colored v1.9.3 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Checking tokio-executor v0.1.10 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Checking crossbeam-epoch v0.8.2 [INFO] [stderr] Checking crossbeam-queue v0.2.3 [INFO] [stderr] Checking mio v0.6.23 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking chrono v0.4.19 [INFO] [stderr] Compiling libudev-sys v0.1.4 [INFO] [stderr] Checking tokio-current-thread v0.1.7 [INFO] [stderr] Checking tokio-timer v0.2.13 [INFO] [stderr] Checking tokio-io v0.1.13 [INFO] [stderr] Checking crossbeam-deque v0.7.3 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking tokio-threadpool v0.1.18 [INFO] [stderr] Checking libudev v0.2.0 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking tokio v0.2.25 [INFO] [stderr] Checking tokio-codec v0.1.2 [INFO] [stderr] Checking tokio-reactor v0.1.12 [INFO] [stderr] Checking simple_logger v1.11.0 [INFO] [stderr] Checking tokio-fs v0.1.7 [INFO] [stderr] Checking tokio-udp v0.1.6 [INFO] [stderr] Checking tokio-uds v0.2.7 [INFO] [stderr] Checking tokio-tcp v0.1.4 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Checking tokio-core v0.1.18 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking serialport v3.3.0 [INFO] [stderr] Checking stk500 v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Checking mio-serial v3.3.1 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/codec.rs:16:31 [INFO] [stdout] | [INFO] [stdout] 16 | pub type ResponseFuture = Box>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/codec.rs:385:23 [INFO] [stdout] | [INFO] [stdout] 385 | type Future = Box>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:20:25 [INFO] [stdout] | [INFO] [stdout] 20 | pub type Response = Box, Error=oneshot::Canceled>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=oneshot::Canceled>` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:181:14 [INFO] [stdout] | [INFO] [stdout] 181 | Box< Future, Error=oneshot::Canceled> > [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=oneshot::Canceled>` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:255:27 [INFO] [stdout] | [INFO] [stdout] 255 | write_cb: Option< Box)> >, // Function which writes to the microcontroller being programmed [INFO] [stdout] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec)` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking tokio-serial v4.3.3 [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec [INFO] [stdout] --> src/codec.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use super::tokio_io::codec::{Encoder, Decoder, Framed}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec [INFO] [stdout] --> src/codec.rs:344:22 [INFO] [stdout] | [INFO] [stdout] 344 | type Transport = Framed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0053]: method `encode` has an incompatible type for trait [INFO] [stdout] --> src/codec.rs:275:14 [INFO] [stdout] | [INFO] [stdout] 275 | dst: &mut BytesMut [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `bytes::bytes::BytesMut`, found struct `BytesMut` [INFO] [stdout] | help: change the parameter type to match the trait: `&mut bytes::bytes::BytesMut` [INFO] [stdout] | [INFO] [stdout] = note: expected fn pointer `fn(&mut Stk500Codec, Packet, &mut bytes::bytes::BytesMut) -> Result<_, _>` [INFO] [stdout] found fn pointer `fn(&mut Stk500Codec, Packet, &mut BytesMut) -> Result<_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0053]: method `decode` has an incompatible type for trait [INFO] [stdout] --> src/codec.rs:316:14 [INFO] [stdout] | [INFO] [stdout] 316 | src: &mut BytesMut, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `bytes::bytes::BytesMut`, found struct `BytesMut` [INFO] [stdout] | help: change the parameter type to match the trait: `&mut bytes::bytes::BytesMut` [INFO] [stdout] | [INFO] [stdout] = note: expected fn pointer `fn(&mut Stk500Codec, &mut bytes::bytes::BytesMut) -> Result<_, _>` [INFO] [stdout] found fn pointer `fn(&mut Stk500Codec, &mut BytesMut) -> Result<_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `map_err` exists for struct `Delay`, but its trait bounds were not satisfied [INFO] [stdout] --> src/lib.rs:231:70 [INFO] [stdout] | [INFO] [stdout] 231 | futures_timer::Delay::new(Duration::from_millis(50)).map_err(|_|{oneshot::Canceled}).and_then( move |_| { [INFO] [stdout] | ^^^^^^^ method cannot be called on `Delay` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Delay { [INFO] [stdout] | ---------------- doesn't satisfy `Delay: futures::Future` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Delay: futures::Future` [INFO] [stdout] which is required by `&mut Delay: futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `map_err` exists for struct `Delay`, but its trait bounds were not satisfied [INFO] [stdout] --> src/codec.rs:132:22 [INFO] [stdout] | [INFO] [stdout] 132 | .map_err(|_|{io::Error::new(io::ErrorKind::Other, "Timeout")}) [INFO] [stdout] | ^^^^^^^ method cannot be called on `Delay` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Delay { [INFO] [stdout] | ---------------- doesn't satisfy `Delay: futures::Future` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Delay: futures::Future` [INFO] [stdout] which is required by `&mut Delay: futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead [INFO] [stdout] --> src/codec.rs:348:15 [INFO] [stdout] | [INFO] [stdout] 348 | Ok(io.framed(Stk500Codec::new())) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0053, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0053`. [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `BaudRate` in `tokio_serial` [INFO] [stdout] --> src/lib.rs:499:48 [INFO] [stdout] | [INFO] [stdout] 499 | settings.baud_rate = tokio_serial::BaudRate::Baud57600; [INFO] [stdout] | ^^^^^^^^ could not find `BaudRate` in `tokio_serial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `BaudRate` in `tokio_serial` [INFO] [stdout] --> src/lib.rs:512:44 [INFO] [stdout] | [INFO] [stdout] 512 | settings.baud_rate = tokio_serial::BaudRate::Baud115200; [INFO] [stdout] | ^^^^^^^^ could not find `BaudRate` in `tokio_serial` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/codec.rs:16:31 [INFO] [stdout] | [INFO] [stdout] 16 | pub type ResponseFuture = Box>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/codec.rs:385:23 [INFO] [stdout] | [INFO] [stdout] 385 | type Future = Box>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:20:25 [INFO] [stdout] | [INFO] [stdout] 20 | pub type Response = Box, Error=oneshot::Canceled>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=oneshot::Canceled>` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:181:14 [INFO] [stdout] | [INFO] [stdout] 181 | Box< Future, Error=oneshot::Canceled> > [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future, Error=oneshot::Canceled>` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:255:27 [INFO] [stdout] | [INFO] [stdout] 255 | write_cb: Option< Box)> >, // Function which writes to the microcontroller being programmed [INFO] [stdout] | ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec)` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `stk500` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec [INFO] [stdout] --> src/codec.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use super::tokio_io::codec::{Encoder, Decoder, Framed}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec [INFO] [stdout] --> src/codec.rs:344:22 [INFO] [stdout] | [INFO] [stdout] 344 | type Transport = Framed; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0053]: method `encode` has an incompatible type for trait [INFO] [stdout] --> src/codec.rs:275:14 [INFO] [stdout] | [INFO] [stdout] 275 | dst: &mut BytesMut [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `bytes::bytes::BytesMut`, found struct `BytesMut` [INFO] [stdout] | help: change the parameter type to match the trait: `&mut bytes::bytes::BytesMut` [INFO] [stdout] | [INFO] [stdout] = note: expected fn pointer `fn(&mut Stk500Codec, Packet, &mut bytes::bytes::BytesMut) -> Result<_, _>` [INFO] [stdout] found fn pointer `fn(&mut Stk500Codec, Packet, &mut BytesMut) -> Result<_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0053]: method `decode` has an incompatible type for trait [INFO] [stdout] --> src/codec.rs:316:14 [INFO] [stdout] | [INFO] [stdout] 316 | src: &mut BytesMut, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `bytes::bytes::BytesMut`, found struct `BytesMut` [INFO] [stdout] | help: change the parameter type to match the trait: `&mut bytes::bytes::BytesMut` [INFO] [stdout] | [INFO] [stdout] = note: expected fn pointer `fn(&mut Stk500Codec, &mut bytes::bytes::BytesMut) -> Result<_, _>` [INFO] [stdout] found fn pointer `fn(&mut Stk500Codec, &mut BytesMut) -> Result<_, _>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `map_err` exists for struct `Delay`, but its trait bounds were not satisfied [INFO] [stdout] --> src/lib.rs:231:70 [INFO] [stdout] | [INFO] [stdout] 231 | futures_timer::Delay::new(Duration::from_millis(50)).map_err(|_|{oneshot::Canceled}).and_then( move |_| { [INFO] [stdout] | ^^^^^^^ method cannot be called on `Delay` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Delay { [INFO] [stdout] | ---------------- doesn't satisfy `Delay: futures::Future` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Delay: futures::Future` [INFO] [stdout] which is required by `&mut Delay: futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied [INFO] [stdout] --> src/lib.rs:500:28 [INFO] [stdout] | [INFO] [stdout] 500 | let mut port = tokio_serial::Serial::from_path("/dev/ttyACM0", &settings, &handle).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------------- --------- ------- supplied 3 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn from_path

(path: P, settings: &mio_serial::SerialPortSettings) -> io::Result [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncRead` is not satisfied [INFO] [stdout] --> src/lib.rs:502:47 [INFO] [stdout] | [INFO] [stdout] 502 | let client = Client::new(&handle, port); [INFO] [stdout] | ^^^^ the trait `AsyncRead` is not implemented for `Serial` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn new(handle: &Handle, io_transport: T) -> Client { [INFO] [stdout] | --------------------------------------------------------- required by `Client::::new` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncWrite` is not satisfied [INFO] [stdout] --> src/lib.rs:502:47 [INFO] [stdout] | [INFO] [stdout] 502 | let client = Client::new(&handle, port); [INFO] [stdout] | ^^^^ the trait `AsyncWrite` is not implemented for `Serial` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub fn new(handle: &Handle, io_transport: T) -> Client { [INFO] [stdout] | --------------------------------------------------------- required by `Client::::new` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncRead` is not satisfied [INFO] [stdout] --> src/lib.rs:502:26 [INFO] [stdout] | [INFO] [stdout] 502 | let client = Client::new(&handle, port); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AsyncRead` is not implemented for `Serial` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct Client [INFO] [stdout] | ------ required by a bound in this [INFO] [stdout] 25 | where T: AsyncRead + AsyncWrite + 'static [INFO] [stdout] | --------- required by this bound in `Client` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncWrite` is not satisfied [INFO] [stdout] --> src/lib.rs:502:26 [INFO] [stdout] | [INFO] [stdout] 502 | let client = Client::new(&handle, port); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AsyncWrite` is not implemented for `Serial` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct Client [INFO] [stdout] | ------ required by a bound in this [INFO] [stdout] 25 | where T: AsyncRead + AsyncWrite + 'static [INFO] [stdout] | ---------- required by this bound in `Client` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `clone` exists for struct `Client`, but its trait bounds were not satisfied [INFO] [stdout] --> src/lib.rs:503:34 [INFO] [stdout] | [INFO] [stdout] 503 | let _client = client.clone(); [INFO] [stdout] | ^^^^^ method cannot be called on `Client` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Serial { [INFO] [stdout] | ----------------- [INFO] [stdout] | | [INFO] [stdout] | doesn't satisfy `Serial: AsyncRead` [INFO] [stdout] | doesn't satisfy `Serial: AsyncWrite` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub struct Client [INFO] [stdout] 25 | | where T: AsyncRead + AsyncWrite + 'static [INFO] [stdout] 26 | | { [INFO] [stdout] 27 | | inner: Arc> [INFO] [stdout] 28 | | } [INFO] [stdout] | | - [INFO] [stdout] | | | [INFO] [stdout] | |_method `clone` not found for this [INFO] [stdout] | doesn't satisfy `Client: Clone` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Serial: AsyncRead` [INFO] [stdout] which is required by `Client: Clone` [INFO] [stdout] `Serial: AsyncWrite` [INFO] [stdout] which is required by `Client: Clone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `prog_memory` exists for struct `Client`, but its trait bounds were not satisfied [INFO] [stdout] --> src/lib.rs:504:31 [INFO] [stdout] | [INFO] [stdout] 504 | let task = client.prog_memory('F', 0x0100, 2, buf) [INFO] [stdout] | ^^^^^^^^^^^ method cannot be called on `Client` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Serial { [INFO] [stdout] | ----------------- [INFO] [stdout] | | [INFO] [stdout] | doesn't satisfy `Serial: AsyncRead` [INFO] [stdout] | doesn't satisfy `Serial: AsyncWrite` [INFO] [stdout] | [INFO] [stdout] ::: src/codec.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub struct Client [INFO] [stdout] 25 | | where T: AsyncRead + AsyncWrite + 'static [INFO] [stdout] 26 | | { [INFO] [stdout] 27 | | inner: Arc> [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `prog_memory` not found for this [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Serial: AsyncRead` [INFO] [stdout] `Serial: AsyncWrite` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied [INFO] [stdout] --> src/lib.rs:513:20 [INFO] [stdout] | [INFO] [stdout] 513 | let port = tokio_serial::Serial::from_path("/dev/ttyACM0", &settings, &handle).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -------------- --------- ------- supplied 3 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 2 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn from_path

(path: P, settings: &mio_serial::SerialPortSettings) -> io::Result [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: the method `map_err` exists for struct `Delay`, but its trait bounds were not satisfied [INFO] [stdout] --> src/codec.rs:132:22 [INFO] [stdout] | [INFO] [stdout] 132 | .map_err(|_|{io::Error::new(io::ErrorKind::Other, "Timeout")}) [INFO] [stdout] | ^^^^^^^ method cannot be called on `Delay` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Delay { [INFO] [stdout] | ---------------- doesn't satisfy `Delay: futures::Future` [INFO] [stdout] | [INFO] [stdout] = note: the following trait bounds were not satisfied: [INFO] [stdout] `Delay: futures::Future` [INFO] [stdout] which is required by `&mut Delay: futures::Future` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead [INFO] [stdout] --> src/codec.rs:348:15 [INFO] [stdout] | [INFO] [stdout] 348 | Ok(io.framed(Stk500Codec::new())) [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::Future` [INFO] [stdout] --> src/lib.rs:473:9 [INFO] [stdout] | [INFO] [stdout] 473 | use futures::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 14 previous errors; 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0053, E0061, E0277, E0433, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0053`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "52554cd86902e8230b63642336f1e38b80d9ed77345751d69a0a56044e8dc9e9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "52554cd86902e8230b63642336f1e38b80d9ed77345751d69a0a56044e8dc9e9", kill_on_drop: false }` [INFO] [stdout] 52554cd86902e8230b63642336f1e38b80d9ed77345751d69a0a56044e8dc9e9