[INFO] cloning repository https://github.com/purdue-orbital/flight-computer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/purdue-orbital/flight-computer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpurdue-orbital%2Fflight-computer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpurdue-orbital%2Fflight-computer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4d26026f45105380c42b161843a5286f19588ca6 [INFO] checking purdue-orbital/flight-computer/4d26026f45105380c42b161843a5286f19588ca6 against master#46424fb5054f211ec836c5c03159f92e46bb35ac for pr-139042 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpurdue-orbital%2Fflight-computer" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/purdue-orbital/flight-computer on toolchain 46424fb5054f211ec836c5c03159f92e46bb35ac [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/purdue-orbital/flight-computer [INFO] finished tweaking git repo https://github.com/purdue-orbital/flight-computer [INFO] tweaked toml for git repo https://github.com/purdue-orbital/flight-computer written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/purdue-orbital/flight-computer already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/purdue-orbital/flight-builder` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 2 packages to latest compatible versions [INFO] [stderr] Updating ublox v0.4.5 -> v0.5.0 [INFO] [stderr] Updating ublox_derive v0.1.0 -> v0.2.0 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ublox v0.5.0 [INFO] [stderr] Downloaded bmp280 v0.4.0 [INFO] [stderr] Downloaded i2cdev v0.4.4 [INFO] [stderr] Downloaded ublox_derive v0.2.0 [INFO] [stderr] Downloaded mpu9250 v0.25.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c046d6b8d604bb13039f916ed03a29d1cf660ec325ca61503891fa6f704cd7ff [INFO] running `Command { std: "docker" "start" "-a" "c046d6b8d604bb13039f916ed03a29d1cf660ec325ca61503891fa6f704cd7ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c046d6b8d604bb13039f916ed03a29d1cf660ec325ca61503891fa6f704cd7ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c046d6b8d604bb13039f916ed03a29d1cf660ec325ca61503891fa6f704cd7ff", kill_on_drop: false }` [INFO] [stdout] c046d6b8d604bb13039f916ed03a29d1cf660ec325ca61503891fa6f704cd7ff [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4fb36e9830577472006d8608d084595c8e80d13669e9f1dc602185131f49f7e5 [INFO] running `Command { std: "docker" "start" "-a" "4fb36e9830577472006d8608d084595c8e80d13669e9f1dc602185131f49f7e5", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling libc v0.2.171 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking nb v1.1.0 [INFO] [stderr] Compiling ublox v0.5.0 [INFO] [stderr] Checking bitflags v2.9.0 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking flight-builder v0.1.0 (https://github.com/purdue-orbital/flight-builder#31863ac6) [INFO] [stderr] Checking nb v0.1.3 [INFO] [stderr] Checking embedded-hal v0.2.7 [INFO] [stderr] Checking mpu9250 v0.25.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking chrono v0.4.40 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Checking i2cdev v0.4.4 [INFO] [stderr] Checking bmp280 v0.4.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling ublox_derive v0.2.0 [INFO] [stderr] Checking flight-computer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `embedded_hal` [INFO] [stdout] --> src/sensors.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use embedded_hal::spi::SpiDevice; [INFO] [stdout] | ^^^^^^^^^^^^ use of unresolved module or unlinked crate `embedded_hal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `embedded_hal`, use `cargo add embedded_hal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rppal::spi::{Bus, SlaveSelect, Spi}; [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rppal::i2c::I2c; [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `embedded_hal` [INFO] [stdout] --> src/sensors.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use embedded_hal::spi::SpiDevice; [INFO] [stdout] | ^^^^^^^^^^^^ use of unresolved module or unlinked crate `embedded_hal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `embedded_hal`, use `cargo add embedded_hal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rppal::spi::{Bus, SlaveSelect, Spi}; [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use rppal::i2c::I2c; [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `sensors::poll_barometer`, `sensors::poll_imu`, `sensors::poll_gps`, `sensors::poll_radio` [INFO] [stdout] --> src/lib.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | poll_barometer, [INFO] [stdout] | ^^^^^^^^^^^^^^ no `poll_barometer` in `sensors` [INFO] [stdout] 6 | poll_imu, [INFO] [stdout] | ^^^^^^^^ no `poll_imu` in `sensors` [INFO] [stdout] 7 | poll_gps, [INFO] [stdout] | ^^^^^^^^ no `poll_gps` in `sensors` [INFO] [stdout] 8 | poll_radio, [INFO] [stdout] | ^^^^^^^^^^ no `poll_radio` in `sensors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] help: there is an enum variant `crate::sensors::SpiPortId::Spi` and 1 other; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 27 - let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] 27 + let mut spi = crate::sensors::SpiPortId::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | [INFO] [stdout] 27 - let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] 27 + let mut spi = ublox::SpiPortId::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:40 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:63 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:104 [INFO] [stdout] | [INFO] [stdout] 27 | ...pal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:28:14 [INFO] [stdout] | [INFO] [stdout] 28 | let cs = rppal::gpio::Gpio::new().expect("gpio init").get(27).expect("chip select pin").into_output(); // TODO: which pin is chip sel... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `sensors::poll_barometer`, `sensors::poll_imu`, `sensors::poll_gps`, `sensors::poll_radio` [INFO] [stdout] --> src/lib.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | poll_barometer, [INFO] [stdout] | ^^^^^^^^^^^^^^ no `poll_barometer` in `sensors` [INFO] [stdout] 6 | poll_imu, [INFO] [stdout] | ^^^^^^^^ no `poll_imu` in `sensors` [INFO] [stdout] 7 | poll_gps, [INFO] [stdout] | ^^^^^^^^ no `poll_gps` in `sensors` [INFO] [stdout] 8 | poll_radio, [INFO] [stdout] | ^^^^^^^^^^ no `poll_radio` in `sensors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] help: there is an enum variant `crate::sensors::SpiPortId::Spi` and 1 other; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 27 - let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] 27 + let mut spi = crate::sensors::SpiPortId::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | [INFO] [stdout] 27 - let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] 27 + let mut spi = ublox::SpiPortId::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:40 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:63 [INFO] [stdout] | [INFO] [stdout] 27 | let mut spi = rppal::spi::Spi::new(rppal::spi::Bus::Spi1, rppal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("S... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:27:104 [INFO] [stdout] | [INFO] [stdout] 27 | ...pal::spi::SlaveSelect::Ss0, 8_000_000, rppal::spi::Mode::Mode0).expect("SPI init"); [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:28:14 [INFO] [stdout] | [INFO] [stdout] 28 | let cs = rppal::gpio::Gpio::new().expect("gpio init").get(27).expect("chip select pin").into_output(); // TODO: which pin is chip sel... [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:118:92 [INFO] [stdout] | [INFO] [stdout] 118 | fn get_all_mpu(mpu: &mut Mpu9250Device) -> Result<(f32, (f32, f32, f32), (f32, f32, f32)), rppal::spi::Error> { [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:123:68 [INFO] [stdout] | [INFO] [stdout] 123 | fn get_baro_readings(baro: &mut Bmp280) -> Result<(f32, f32, f32), rppal::i2c::Error> { [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:160:23 [INFO] [stdout] | [INFO] [stdout] 160 | .flow_control(serialport::FlowControl::None) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:43:31 [INFO] [stdout] | [INFO] [stdout] 43 | let mut last_packet = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:82:43 [INFO] [stdout] | [INFO] [stdout] 82 | ... last_packet = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DateTime` in this scope [INFO] [stdout] --> src/sensors.rs:86:39 [INFO] [stdout] | [INFO] [stdout] 86 | ... let time: DateTime = (&sol) [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Utc` in this scope [INFO] [stdout] --> src/sensors.rs:86:48 [INFO] [stdout] | [INFO] [stdout] 86 | ... let time: DateTime = (&sol) [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: there is an enum variant `crate::sensors::AlignmentToReferenceTime::Utc` and 6 others; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] and 2 other candidates [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 41 | fn spawn_gps_thread(gps: GPSDevice, gps_tx: Sender<(f32, f32, f32)>) { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DateTime` in this scope [INFO] [stdout] --> src/sensors.rs:90:53 [INFO] [stdout] | [INFO] [stdout] 90 | ... let time_result: Result, _> = time.try_into(); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Utc` in this scope [INFO] [stdout] --> src/sensors.rs:90:62 [INFO] [stdout] | [INFO] [stdout] 90 | ... let time_result: Result, _> = time.try_into(); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: there is an enum variant `crate::sensors::AlignmentToReferenceTime::Utc` and 6 others; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] and 2 other candidates [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 41 | fn spawn_gps_thread(gps: GPSDevice, gps_tx: Sender<(f32, f32, f32)>) { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:107:16 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration` [INFO] [stdout] --> src/sensors.rs:107:47 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^^^^ use of undeclared type `Duration` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `state` in this scope [INFO] [stdout] --> src/sensors.rs:107:85 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gpio_actions` in this scope [INFO] [stdout] --> src/sensors.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | gpio_actions.send(GpioAction::Drop(None)).expect("gpio action channel to be open"); [INFO] [stdout] | ^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `result` in this scope [INFO] [stdout] --> src/sensors.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | result = gps_rx.try_recv(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to introduce a new binding [INFO] [stdout] | [INFO] [stdout] 135 | let result = gps_rx.try_recv(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0423]: expected value, found enum `Result` [INFO] [stdout] --> src/sensors.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | match Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: the following enum variants are available [INFO] [stdout] | [INFO] [stdout] 136 - match Result { [INFO] [stdout] 136 + match (std::result::Result::Err(/* fields */)) { [INFO] [stdout] | [INFO] [stdout] 136 - match Result { [INFO] [stdout] 136 + match (std::result::Result::Ok(/* fields */)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:161:20 [INFO] [stdout] | [INFO] [stdout] 161 | .data_bits(serialport::DataBits::Eight) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::sensors::DataBits; [INFO] [stdout] | [INFO] [stdout] 1 + use ublox::DataBits; [INFO] [stdout] | [INFO] [stdout] help: if you import `DataBits`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 161 - .data_bits(serialport::DataBits::Eight) [INFO] [stdout] 161 + .data_bits(DataBits::Eight) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 162 | .stop_bits(serialport::StopBits::One) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::sensors::StopBits; [INFO] [stdout] | [INFO] [stdout] 1 + use ublox::StopBits; [INFO] [stdout] | [INFO] [stdout] help: if you import `StopBits`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 162 - .stop_bits(serialport::StopBits::One) [INFO] [stdout] 162 + .stop_bits(StopBits::One) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Duration` in this scope [INFO] [stdout] --> src/sensors.rs:218:21 [INFO] [stdout] | [INFO] [stdout] 218 | const UART_TIMEOUT: Duration = Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration` [INFO] [stdout] --> src/sensors.rs:218:32 [INFO] [stdout] | [INFO] [stdout] 218 | const UART_TIMEOUT: Duration = Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^ use of undeclared type `Duration` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:237:21 [INFO] [stdout] | [INFO] [stdout] 237 | ErrorKind::TimedOut => { [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:247:34 [INFO] [stdout] | [INFO] [stdout] 247 | Err(std::io::Error::from(ErrorKind::TimedOut)) [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:286:21 [INFO] [stdout] | [INFO] [stdout] 286 | let start = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:297:49 [INFO] [stdout] | [INFO] [stdout] 297 | return Err(std::io::Error::from(ErrorKind::TimedOut)); [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RecvError` [INFO] [stdout] --> src/sensors.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | RecvError, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:118:92 [INFO] [stdout] | [INFO] [stdout] 118 | fn get_all_mpu(mpu: &mut Mpu9250Device) -> Result<(f32, (f32, f32, f32), (f32, f32, f32)), rppal::spi::Error> { [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `rppal` [INFO] [stdout] --> src/sensors.rs:123:68 [INFO] [stdout] | [INFO] [stdout] 123 | fn get_baro_readings(baro: &mut Bmp280) -> Result<(f32, f32, f32), rppal::i2c::Error> { [INFO] [stdout] | ^^^^^ use of unresolved module or unlinked crate `rppal` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `rppal`, use `cargo add rppal` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Delay` [INFO] [stdout] --> src/sensors.rs:29:17 [INFO] [stdout] | [INFO] [stdout] 29 | let delay = Delay::new(); [INFO] [stdout] | ^^^^^ use of undeclared type `Delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `GpioAction` [INFO] [stdout] --> src/sensors.rs:110:35 [INFO] [stdout] | [INFO] [stdout] 110 | gpio_actions.send(GpioAction::Drop(None)).expect("gpio action channel to be open"); [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `GpioAction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:155:17 [INFO] [stdout] | [INFO] [stdout] 155 | SerialError(serialport::Error), [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:159:19 [INFO] [stdout] | [INFO] [stdout] 159 | let builder = serialport::new("/dev/ttyS0", 9600) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | port: Box, [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:222:30 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn new(port: Box) -> GPSDevice { [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0423, E0425, E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] [INFO] [stderr] error: could not compile `flight-computer` (lib) due to 38 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:160:23 [INFO] [stdout] | [INFO] [stdout] 160 | .flow_control(serialport::FlowControl::None) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:43:31 [INFO] [stdout] | [INFO] [stdout] 43 | let mut last_packet = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:82:43 [INFO] [stdout] | [INFO] [stdout] 82 | ... last_packet = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DateTime` in this scope [INFO] [stdout] --> src/sensors.rs:86:39 [INFO] [stdout] | [INFO] [stdout] 86 | ... let time: DateTime = (&sol) [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Utc` in this scope [INFO] [stdout] --> src/sensors.rs:86:48 [INFO] [stdout] | [INFO] [stdout] 86 | ... let time: DateTime = (&sol) [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: there is an enum variant `crate::sensors::AlignmentToReferenceTime::Utc` and 6 others; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] 86 - let time: DateTime = (&sol) [INFO] [stdout] 86 + let time: DateTime = (&sol) [INFO] [stdout] | [INFO] [stdout] and 2 other candidates [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 41 | fn spawn_gps_thread(gps: GPSDevice, gps_tx: Sender<(f32, f32, f32)>) { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DateTime` in this scope [INFO] [stdout] --> src/sensors.rs:90:53 [INFO] [stdout] | [INFO] [stdout] 90 | ... let time_result: Result, _> = time.try_into(); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Utc` in this scope [INFO] [stdout] --> src/sensors.rs:90:62 [INFO] [stdout] | [INFO] [stdout] 90 | ... let time_result: Result, _> = time.try_into(); [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: there is an enum variant `crate::sensors::AlignmentToReferenceTime::Utc` and 6 others; try using the variant's enum [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] 90 - let time_result: Result, _> = time.try_into(); [INFO] [stdout] 90 + let time_result: Result, _> = time.try_into(); [INFO] [stdout] | [INFO] [stdout] and 2 other candidates [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 41 | fn spawn_gps_thread(gps: GPSDevice, gps_tx: Sender<(f32, f32, f32)>) { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:107:16 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration` [INFO] [stdout] --> src/sensors.rs:107:47 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^^^^ use of undeclared type `Duration` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `state` in this scope [INFO] [stdout] --> src/sensors.rs:107:85 [INFO] [stdout] | [INFO] [stdout] 107 | if Instant::now() > last_packet + Duration::from_millis(600 * 1000) && !state.read().expect("shared state read").cut_done [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `gpio_actions` in this scope [INFO] [stdout] --> src/sensors.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | gpio_actions.send(GpioAction::Drop(None)).expect("gpio action channel to be open"); [INFO] [stdout] | ^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `result` in this scope [INFO] [stdout] --> src/sensors.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | result = gps_rx.try_recv(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to introduce a new binding [INFO] [stdout] | [INFO] [stdout] 135 | let result = gps_rx.try_recv(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0423]: expected value, found enum `Result` [INFO] [stdout] --> src/sensors.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | match Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: the following enum variants are available [INFO] [stdout] | [INFO] [stdout] 136 - match Result { [INFO] [stdout] 136 + match (std::result::Result::Err(/* fields */)) { [INFO] [stdout] | [INFO] [stdout] 136 - match Result { [INFO] [stdout] 136 + match (std::result::Result::Ok(/* fields */)) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:161:20 [INFO] [stdout] | [INFO] [stdout] 161 | .data_bits(serialport::DataBits::Eight) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::sensors::DataBits; [INFO] [stdout] | [INFO] [stdout] 1 + use ublox::DataBits; [INFO] [stdout] | [INFO] [stdout] help: if you import `DataBits`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 161 - .data_bits(serialport::DataBits::Eight) [INFO] [stdout] 161 + .data_bits(DataBits::Eight) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:162:20 [INFO] [stdout] | [INFO] [stdout] 162 | .stop_bits(serialport::StopBits::One) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] help: consider importing one of these enums [INFO] [stdout] | [INFO] [stdout] 1 + use crate::sensors::StopBits; [INFO] [stdout] | [INFO] [stdout] 1 + use ublox::StopBits; [INFO] [stdout] | [INFO] [stdout] help: if you import `StopBits`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 162 - .stop_bits(serialport::StopBits::One) [INFO] [stdout] 162 + .stop_bits(StopBits::One) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `Duration` in this scope [INFO] [stdout] --> src/sensors.rs:218:21 [INFO] [stdout] | [INFO] [stdout] 218 | const UART_TIMEOUT: Duration = Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration` [INFO] [stdout] --> src/sensors.rs:218:32 [INFO] [stdout] | [INFO] [stdout] 218 | const UART_TIMEOUT: Duration = Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^ use of undeclared type `Duration` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Duration; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:237:21 [INFO] [stdout] | [INFO] [stdout] 237 | ErrorKind::TimedOut => { [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:247:34 [INFO] [stdout] | [INFO] [stdout] 247 | Err(std::io::Error::from(ErrorKind::TimedOut)) [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Instant` [INFO] [stdout] --> src/sensors.rs:286:21 [INFO] [stdout] | [INFO] [stdout] 286 | let start = Instant::now(); [INFO] [stdout] | ^^^^^^^ use of undeclared type `Instant` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 1 + use std::time::Instant; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ErrorKind` [INFO] [stdout] --> src/sensors.rs:297:49 [INFO] [stdout] | [INFO] [stdout] 297 | return Err(std::io::Error::from(ErrorKind::TimedOut)); [INFO] [stdout] | ^^^^^^^^^ use of undeclared type `ErrorKind` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 1 + use std::io::ErrorKind; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RecvError` [INFO] [stdout] --> src/sensors.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | RecvError, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Delay` [INFO] [stdout] --> src/sensors.rs:29:17 [INFO] [stdout] | [INFO] [stdout] 29 | let delay = Delay::new(); [INFO] [stdout] | ^^^^^ use of undeclared type `Delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `GpioAction` [INFO] [stdout] --> src/sensors.rs:110:35 [INFO] [stdout] | [INFO] [stdout] 110 | gpio_actions.send(GpioAction::Drop(None)).expect("gpio action channel to be open"); [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `GpioAction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:155:17 [INFO] [stdout] | [INFO] [stdout] 155 | SerialError(serialport::Error), [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:159:19 [INFO] [stdout] | [INFO] [stdout] 159 | let builder = serialport::new("/dev/ttyS0", 9600) [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:214:19 [INFO] [stdout] | [INFO] [stdout] 214 | port: Box, [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `serialport` [INFO] [stdout] --> src/sensors.rs:222:30 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn new(port: Box) -> GPSDevice { [INFO] [stdout] | ^^^^^^^^^^ use of unresolved module or unlinked crate `serialport` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `serialport`, use `cargo add serialport` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0423, E0425, E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] [INFO] [stderr] error: could not compile `flight-computer` (lib test) due to 38 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "4fb36e9830577472006d8608d084595c8e80d13669e9f1dc602185131f49f7e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fb36e9830577472006d8608d084595c8e80d13669e9f1dc602185131f49f7e5", kill_on_drop: false }` [INFO] [stdout] 4fb36e9830577472006d8608d084595c8e80d13669e9f1dc602185131f49f7e5