[INFO] fetching crate irox-nmea0183 0.4.0...
[INFO] checking irox-nmea0183-0.4.0 against master#c2f2db79ca3024f68d22b45aa22b570775c2c4ad for pr-124157
[INFO] extracting crate irox-nmea0183 0.4.0 into /workspace/builds/worker-7-tc1/source
[INFO] validating manifest of crates.io crate irox-nmea0183 0.4.0 on toolchain c2f2db79ca3024f68d22b45aa22b570775c2c4ad
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate irox-nmea0183 0.4.0
[INFO] finished tweaking crates.io crate irox-nmea0183 0.4.0
[INFO] tweaked toml for crates.io crate irox-nmea0183 0.4.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 26 packages to latest compatible versions
[INFO] [stderr]       Adding windows v0.53.0 (latest: v0.56.0)
[INFO] [stderr]       Adding windows-core v0.53.0 (latest: v0.56.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded irox-units v0.3.6
[INFO] [stderr]   Downloaded irox-enums_derive v0.2.2
[INFO] [stderr]   Downloaded irox-enums v0.2.2
[INFO] [stderr]   Downloaded irox-bits v0.1.0
[INFO] [stderr]   Downloaded irox-csv v0.5.1
[INFO] [stderr]   Downloaded irox-carto v0.6.1
[INFO] [stderr]   Downloaded windows-core v0.53.0
[INFO] [stderr]   Downloaded irox-tools v0.8.0
[INFO] [stderr]   Downloaded irox-time v0.4.2
[INFO] [stderr]   Downloaded windows v0.53.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a515b783c9a040788df905e849df41e520ed42fd1986c6dbab6614c519cfce61
[INFO] running `Command { std: "docker" "start" "-a" "a515b783c9a040788df905e849df41e520ed42fd1986c6dbab6614c519cfce61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a515b783c9a040788df905e849df41e520ed42fd1986c6dbab6614c519cfce61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a515b783c9a040788df905e849df41e520ed42fd1986c6dbab6614c519cfce61", kill_on_drop: false }`
[INFO] [stdout] a515b783c9a040788df905e849df41e520ed42fd1986c6dbab6614c519cfce61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+c2f2db79ca3024f68d22b45aa22b570775c2c4ad" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b3393c537d709f4579b817e4f760f69d865b8992c2a4901f21d3e8ba0aba9e19
[INFO] running `Command { std: "docker" "start" "-a" "b3393c537d709f4579b817e4f760f69d865b8992c2a4901f21d3e8ba0aba9e19", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling irox-bits v0.1.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking irox-tools v0.8.0
[INFO] [stderr]     Checking irox-units v0.3.6
[INFO] [stderr]    Compiling irox-csv v0.5.1
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling irox-carto v0.6.1
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]    Compiling irox-enums_derive v0.2.2
[INFO] [stderr]     Checking irox-enums v0.2.2
[INFO] [stderr]     Checking irox-time v0.4.2
[INFO] [stderr]     Checking irox-nmea0183 v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::bits`
[INFO] [stdout]   --> src/lib.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use irox_tools::bits::Bits;
[INFO] [stdout]    |                 ^^^^ could not find `bits` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::bits`
[INFO] [stdout]   --> src/lib.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use irox_tools::bits::Bits;
[INFO] [stdout]    |                 ^^^^ could not find `bits` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::read`
[INFO] [stdout]   --> src/lib.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use irox_tools::read::read_until;
[INFO] [stdout]    |                 ^^^^ could not find `read` in `irox_tools`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub mod read;
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    = note: the item is gated behind the `std` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::format`
[INFO] [stdout]   --> src/output/gga.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use irox_tools::format::DecimalFormatF64;
[INFO] [stdout]    |                 ^^^^^^ could not find `format` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::read`
[INFO] [stdout]   --> src/output/gsa.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use irox_tools::read::read_exact;
[INFO] [stdout]    |                 ^^^^ could not find `read` in `irox_tools`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub mod read;
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    = note: the item is gated behind the `std` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::format`
[INFO] [stdout]  --> src/output/zda.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use irox_tools::format::DecimalFormatF64;
[INFO] [stdout]   |                 ^^^^^^ could not find `format` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::read`
[INFO] [stdout]   --> src/lib.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use irox_tools::read::read_until;
[INFO] [stdout]    |                 ^^^^ could not find `read` in `irox_tools`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub mod read;
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    = note: the item is gated behind the `std` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::format`
[INFO] [stdout]   --> src/output/gga.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | use irox_tools::format::DecimalFormatF64;
[INFO] [stdout]    |                 ^^^^^^ could not find `format` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::read`
[INFO] [stdout]   --> src/output/gsa.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use irox_tools::read::read_exact;
[INFO] [stdout]    |                 ^^^^ could not find `read` in `irox_tools`
[INFO] [stdout]    |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/lib.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub mod read;
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    = note: the item is gated behind the `std` feature
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `irox_tools::format`
[INFO] [stdout]  --> src/output/zda.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use irox_tools::format::DecimalFormatF64;
[INFO] [stdout]   |                 ^^^^^^ could not find `format` in `irox_tools`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/lib.rs:75:28
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&Frame) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&Frame) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]   --> src/lib.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<Frame, Self::Error> {
[INFO] [stdout]    |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: irox_bits::bits::Bits` is not satisfied
[INFO] [stdout]    --> src/lib.rs:126:15
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^ the trait `irox_bits::bits::Bits` is not implemented for `T`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `Packetization`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/packetio.rs:34:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub trait Packetization<T: Bits> {
[INFO] [stdout]     |                            ^^^^ required by this bound in `Packetization`
[INFO] [stdout]     = note: `Packetization` is a "sealed trait", because to implement it you also need to implement `irox_bits::bits::Bits`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stdout]     = help: the following types implement the trait:
[INFO] [stdout]               &mut irox_tools::RoundBuffer<N, u8>
[INFO] [stdout]               &mut [u8]
[INFO] [stdout]               irox_tools::RoundBuffer<N, u8>
[INFO] [stdout]               &[u8]
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read + irox_bits::bits::Bits> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |              +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `read_next_packet` has an incompatible type for trait
[INFO] [stdout]    --> src/lib.rs:127:55
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn read_next_packet(&mut self, source: &mut T) -> Result<PacketData, std::io::Error> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                                                       help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&mut NMEAPacketizer, &mut _) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&mut NMEAPacketizer, &mut _) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/lib.rs:75:28
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&Frame) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&Frame) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]   --> src/lib.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<Frame, Self::Error> {
[INFO] [stdout]    |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/input/pollswver.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn get_bytes(&self) -> Result<Vec<u8>, Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&PollSWVersion) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&PollSWVersion) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]    --> src/input/ratectrl.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&RateControlRF103) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&RateControlRF103) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: irox_bits::bits::Bits` is not satisfied
[INFO] [stdout]    --> src/lib.rs:126:15
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^ the trait `irox_bits::bits::Bits` is not implemented for `T`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `Packetization`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/packetio.rs:34:28
[INFO] [stdout]     |
[INFO] [stdout] 34  | pub trait Packetization<T: Bits> {
[INFO] [stdout]     |                            ^^^^ required by this bound in `Packetization`
[INFO] [stdout]     = note: `Packetization` is a "sealed trait", because to implement it you also need to implement `irox_bits::bits::Bits`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stdout]     = help: the following types implement the trait:
[INFO] [stdout]               &mut irox_tools::RoundBuffer<N, u8>
[INFO] [stdout]               &mut [u8]
[INFO] [stdout]               irox_tools::RoundBuffer<N, u8>
[INFO] [stdout]               &[u8]
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read + irox_bits::bits::Bits> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |              +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `read_next_packet` has an incompatible type for trait
[INFO] [stdout]    --> src/lib.rs:127:55
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn read_next_packet(&mut self, source: &mut T) -> Result<PacketData, std::io::Error> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                                                       help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&mut NMEAPacketizer, &mut _) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&mut NMEAPacketizer, &mut _) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/input/pollswver.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn get_bytes(&self) -> Result<Vec<u8>, Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&PollSWVersion) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&PollSWVersion) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]    --> src/output/gga.rs:196:28
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&GGA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&GGA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]    --> src/output/gga.rs:298:22
[INFO] [stdout]     |
[INFO] [stdout] 298 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GGA, Self::Error> {
[INFO] [stdout]     |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]    --> src/input/ratectrl.rs:106:28
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&RateControlRF103) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&RateControlRF103) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/gsa.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&GSA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&GSA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]    --> src/output/gsa.rs:115:22
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GSA, Self::Error> {
[INFO] [stdout]     |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/gsv.rs:39:28
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&GSV) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&GSV) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]   --> src/output/gsv.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GSV, Self::Error> {
[INFO] [stdout]    |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/zda.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&ZDA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&ZDA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]    --> src/output/gga.rs:196:28
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]     |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected signature `fn(&GGA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]                found signature `fn(&GGA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]    --> src/output/gga.rs:298:22
[INFO] [stdout]     |
[INFO] [stdout] 298 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GGA, Self::Error> {
[INFO] [stdout]     |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/gsa.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&GSA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&GSA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]    --> src/output/gsa.rs:115:22
[INFO] [stdout]     |
[INFO] [stdout] 115 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GSA, Self::Error> {
[INFO] [stdout]     |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/gsv.rs:39:28
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&GSV) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&GSV) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0276]: impl has stricter requirements than trait
[INFO] [stdout]   --> src/output/gsv.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn build_from<T: Read>(&self, input: &mut T) -> Result<GSV, Self::Error> {
[INFO] [stdout]    |                      ^^^^ impl has extra requirement `T: std::io::Read`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `get_bytes` has an incompatible type for trait
[INFO] [stdout]   --> src/output/zda.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            expected `irox_bits::error::BitsError`, found `std::io::Error`
[INFO] [stdout]    |                            help: change the output type to match the trait: `Result<Vec<u8>, irox_bits::error::BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected signature `fn(&ZDA) -> Result<_, irox_bits::error::BitsError>`
[INFO] [stdout]               found signature `fn(&ZDA) -> Result<_, std::io::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:80:39
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ------------------------------- expected `Result<Vec<u8>, std::io::Error>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 80 |             FramePayload::GGA(gga) => gga.get_bytes(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^ expected `Result<Vec<u8>, Error>`, found `Result<Vec<u8>, BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Result<_, std::io::Error>`
[INFO] [stdout]               found enum `Result<_, irox_bits::error::BitsError>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: irox_bits::bits::Bits` is not satisfied
[INFO] [stdout]   --> src/lib.rs:96:61
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let packet = NMEAPacketizer::new().read_next_packet(input)?;
[INFO] [stdout]    |                                            ---------------- ^^^^^ the trait `irox_bits::bits::Bits` is not implemented for `T`
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `read_next_packet`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/packetio.rs:34:28
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub trait Packetization<T: Bits> {
[INFO] [stdout]    |                            ^^^^ required by this bound in `Packetization::read_next_packet`
[INFO] [stdout] 35 |     /// Reads the next packet from the source reader
[INFO] [stdout] 36 |     fn read_next_packet(&mut self, source: &mut T) -> Result<PacketData, Error>;
[INFO] [stdout]    |        ---------------- required by a bound in this associated function
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn build_from<T: Read + irox_bits::bits::Bits>(&self, input: &mut T) -> Result<Frame, Self::Error> {
[INFO] [stdout]    |                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/lib.rs:96:67
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let packet = NMEAPacketizer::new().read_next_packet(input)?;
[INFO] [stdout]    |                                                                   ^ the trait `From<irox_bits::error::BitsError>` is not implemented for `error::Error`, which is required by `Result<Frame, error::Error>: FromResidual<Result<Infallible, irox_bits::error::BitsError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <error::Error as From<GreaterThanEqualToValueError<u8>>>
[INFO] [stdout]              <error::Error as From<ParseFloatError>>
[INFO] [stdout]              <error::Error as From<ParseIntError>>
[INFO] [stdout]              <error::Error as From<std::io::Error>>
[INFO] [stdout]    = note: required for `Result<Frame, error::Error>` to implement `FromResidual<Result<Infallible, irox_bits::error::BitsError>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/lib.rs:80:39
[INFO] [stdout]    |
[INFO] [stdout] 75 |     fn get_bytes(&self) -> Result<Vec<u8>, std::io::Error> {
[INFO] [stdout]    |                            ------------------------------- expected `Result<Vec<u8>, std::io::Error>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 80 |             FramePayload::GGA(gga) => gga.get_bytes(),
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^ expected `Result<Vec<u8>, Error>`, found `Result<Vec<u8>, BitsError>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Result<_, std::io::Error>`
[INFO] [stdout]               found enum `Result<_, irox_bits::error::BitsError>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: irox_bits::bits::Bits` is not satisfied
[INFO] [stdout]   --> src/lib.rs:96:61
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let packet = NMEAPacketizer::new().read_next_packet(input)?;
[INFO] [stdout]    |                                            ---------------- ^^^^^ the trait `irox_bits::bits::Bits` is not implemented for `T`
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `read_next_packet`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/irox-tools-0.8.0/src/packetio.rs:34:28
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub trait Packetization<T: Bits> {
[INFO] [stdout]    |                            ^^^^ required by this bound in `Packetization::read_next_packet`
[INFO] [stdout] 35 |     /// Reads the next packet from the source reader
[INFO] [stdout] 36 |     fn read_next_packet(&mut self, source: &mut T) -> Result<PacketData, Error>;
[INFO] [stdout]    |        ---------------- required by a bound in this associated function
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn build_from<T: Read + irox_bits::bits::Bits>(&self, input: &mut T) -> Result<Frame, Self::Error> {
[INFO] [stdout]    |                           +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/lib.rs:96:67
[INFO] [stdout]    |
[INFO] [stdout] 96 |         let packet = NMEAPacketizer::new().read_next_packet(input)?;
[INFO] [stdout]    |                                                                   ^ the trait `From<irox_bits::error::BitsError>` is not implemented for `error::Error`, which is required by `Result<Frame, error::Error>: FromResidual<Result<Infallible, irox_bits::error::BitsError>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              <error::Error as From<GreaterThanEqualToValueError<u8>>>
[INFO] [stdout]              <error::Error as From<ParseFloatError>>
[INFO] [stdout]              <error::Error as From<ParseIntError>>
[INFO] [stdout]              <error::Error as From<std::io::Error>>
[INFO] [stdout]    = note: required for `Result<Frame, error::Error>` to implement `FromResidual<Result<Infallible, irox_bits::error::BitsError>>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_u8` found for mutable reference `&mut T` in the current scope
[INFO] [stdout]    --> src/lib.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let val = source.read_u8()?;
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the type parameter is bounded by the trait
[INFO] [stdout] help: there is a method `read` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/c2f2db79ca3024f68d22b45aa22b570775c2c4ad/library/std/src/io/mod.rs:753:5
[INFO] [stdout] help: the following trait defines an item `read_u8`, perhaps you need to restrict type parameter `T` with it:
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read + irox_bits::bits::Bits> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |              +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `read_u8` found for mutable reference `&mut T` in the current scope
[INFO] [stdout]    --> src/lib.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let val = source.read_u8()?;
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: items from traits can only be used if the type parameter is bounded by the trait
[INFO] [stdout] help: there is a method `read` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/c2f2db79ca3024f68d22b45aa22b570775c2c4ad/library/std/src/io/mod.rs:753:5
[INFO] [stdout] help: the following trait defines an item `read_u8`, perhaps you need to restrict type parameter `T` with it:
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<T: Read + irox_bits::bits::Bits> Packetization<T> for NMEAPacketizer {
[INFO] [stdout]     |              +++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 22 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0053, E0276, E0277, E0308, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0053`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `irox-nmea0183` (lib) due to 23 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: aborting due to 22 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0053, E0276, E0277, E0308, E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0053`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `irox-nmea0183` (lib test) due to 23 previous errors
[INFO] running `Command { std: "docker" "inspect" "b3393c537d709f4579b817e4f760f69d865b8992c2a4901f21d3e8ba0aba9e19", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3393c537d709f4579b817e4f760f69d865b8992c2a4901f21d3e8ba0aba9e19", kill_on_drop: false }`
[INFO] [stdout] b3393c537d709f4579b817e4f760f69d865b8992c2a4901f21d3e8ba0aba9e19
