[INFO] cloning repository https://github.com/Jojograndjojo/rustythingy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jojograndjojo/rustythingy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJojograndjojo%2Frustythingy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJojograndjojo%2Frustythingy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a1969d40a49da8c7531825e97daf052a3d9062cf [INFO] checking Jojograndjojo/rustythingy against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJojograndjojo%2Frustythingy" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Jojograndjojo/rustythingy on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Jojograndjojo/rustythingy [INFO] finished tweaking git repo https://github.com/Jojograndjojo/rustythingy [INFO] tweaked toml for git repo https://github.com/Jojograndjojo/rustythingy written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Jojograndjojo/rustythingy 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded proc-macro2 v0.4.27 [INFO] [stderr] Downloaded quote v0.6.11 [INFO] [stderr] Downloaded tower-web-macros v0.2.1 [INFO] [stderr] Downloaded itoa v0.4.3 [INFO] [stderr] Downloaded proc-macro-hack v0.4.1 [INFO] [stderr] Downloaded tokio-executor v0.1.6 [INFO] [stderr] Downloaded tower-service v0.1.0 [INFO] [stderr] Downloaded http v0.1.16 [INFO] [stderr] Downloaded ryu v0.2.7 [INFO] [stderr] Downloaded tokio-current-thread v0.1.4 [INFO] [stderr] Downloaded tokio-sync v0.1.2 [INFO] [stderr] Downloaded proc-macro-hack-impl v0.4.1 [INFO] [stderr] Downloaded atoi v0.2.4 [INFO] [stderr] Downloaded tokio-reactor v0.1.8 [INFO] [stderr] Downloaded sysfs_gpio v0.5.3 [INFO] [stderr] Downloaded nix v0.10.0 [INFO] [stderr] Downloaded chrono v0.4.6 [INFO] [stderr] Downloaded cc v1.0.29 [INFO] [stderr] Downloaded flate2 v1.0.6 [INFO] [stderr] Downloaded h2 v0.1.16 [INFO] [stderr] Downloaded winapi v0.3.6 [INFO] [stderr] Downloaded hyper v0.12.24 [INFO] [stderr] Downloaded syn v0.15.26 [INFO] [stderr] Downloaded serde v1.0.88 [INFO] [stderr] Downloaded unicode-normalization v0.1.8 [INFO] [stderr] Downloaded tower-web v0.2.2 [INFO] [stderr] Downloaded mio v0.6.16 [INFO] [stderr] Downloaded tokio v0.1.15 [INFO] [stderr] Downloaded crossbeam-channel v0.3.8 [INFO] [stderr] Downloaded tokio-threadpool v0.1.11 [INFO] [stderr] Downloaded futures v0.1.25 [INFO] [stderr] Downloaded crc32fast v1.1.2 [INFO] [stderr] Downloaded tokio-timer v0.2.10 [INFO] [stderr] Downloaded string v0.1.3 [INFO] [stderr] Downloaded redox_syscall v0.1.51 [INFO] [stderr] Downloaded want v0.0.6 [INFO] [stderr] Downloaded serde_derive v1.0.88 [INFO] [stderr] Downloaded serde_plain v0.3.0 [INFO] [stderr] Downloaded dtoa v0.4.3 [INFO] [stderr] Downloaded serde_urlencoded v0.5.4 [INFO] [stderr] Downloaded tokio-udp v0.1.3 [INFO] [stderr] Downloaded tokio-codec v0.1.1 [INFO] [stderr] Downloaded tokio-uds v0.2.5 [INFO] [stderr] Downloaded crossbeam v0.6.0 [INFO] [stderr] Downloaded rand_os v0.1.2 [INFO] [stderr] Downloaded tokio-fs v0.1.5 [INFO] [stderr] Downloaded cfg-if v0.1.6 [INFO] [stderr] Downloaded tokio-io v0.1.11 [INFO] [stderr] Downloaded libc v0.2.49 [INFO] [stderr] Downloaded bytes v0.4.11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 483e80353d6e7b82ccfa90412a1ac7afc2ff912dd8b149aa332aab6390cbaf35 [INFO] running `Command { std: "docker" "start" "-a" "483e80353d6e7b82ccfa90412a1ac7afc2ff912dd8b149aa332aab6390cbaf35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "483e80353d6e7b82ccfa90412a1ac7afc2ff912dd8b149aa332aab6390cbaf35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "483e80353d6e7b82ccfa90412a1ac7afc2ff912dd8b149aa332aab6390cbaf35", kill_on_drop: false }` [INFO] [stdout] 483e80353d6e7b82ccfa90412a1ac7afc2ff912dd8b149aa332aab6390cbaf35 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6c81359a81bcdf08030ebc8a1e2ef8f603c7b7aa8c14017cabd7a18af4fb60aa [INFO] running `Command { std: "docker" "start" "-a" "6c81359a81bcdf08030ebc8a1e2ef8f603c7b7aa8c14017cabd7a18af4fb60aa", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.49 [INFO] [stderr] Checking cfg-if v0.1.6 [INFO] [stderr] Compiling autocfg v0.1.2 [INFO] [stderr] Compiling byteorder v1.3.1 [INFO] [stderr] Checking rand_core v0.4.0 [INFO] [stderr] Checking futures v0.1.25 [INFO] [stderr] Checking smallvec v0.6.9 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking stable_deref_trait v1.1.1 [INFO] [stderr] Compiling arrayvec v0.4.10 [INFO] [stderr] Checking nodrop v0.1.13 [INFO] [stderr] Checking lazycell v1.2.1 [INFO] [stderr] Compiling proc-macro2 v0.4.27 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Checking crossbeam-utils v0.6.5 [INFO] [stderr] Checking log v0.4.6 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Checking itoa v0.4.3 [INFO] [stderr] Compiling serde v1.0.88 [INFO] [stderr] Checking owning_ref v0.4.0 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand_jitter v0.1.3 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Checking lock_api v0.1.5 [INFO] [stderr] Checking crossbeam-channel v0.3.8 [INFO] [stderr] Compiling cc v1.0.29 [INFO] [stderr] Checking matches v0.1.8 [INFO] [stderr] Checking unicode-normalization v0.1.8 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking unicode-bidi v0.3.4 [INFO] [stderr] Compiling proc-macro-hack-impl v0.4.1 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling ryu v0.2.7 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Compiling quote v0.6.11 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling crc32fast v1.1.2 [INFO] [stderr] Compiling iovec v0.1.2 [INFO] [stderr] Compiling httparse v1.3.3 [INFO] [stderr] Checking indexmap v1.0.2 [INFO] [stderr] Checking rand_os v0.1.2 [INFO] [stderr] Checking bytes v0.4.11 [INFO] [stderr] Checking num_cpus v1.10.0 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Checking time v0.1.42 [INFO] [stderr] Checking mio v0.6.16 [INFO] [stderr] Checking tokio-executor v0.1.6 [INFO] [stderr] Checking tokio-sync v0.1.2 [INFO] [stderr] Checking tokio-io v0.1.11 [INFO] [stderr] Checking crossbeam-deque v0.6.3 [INFO] [stderr] Checking http v0.1.16 [INFO] [stderr] Checking percent-encoding v1.0.1 [INFO] [stderr] Checking string v0.1.3 [INFO] [stderr] Checking tokio-current-thread v0.1.4 [INFO] [stderr] Compiling miniz-sys v0.1.11 [INFO] [stderr] Checking tokio-timer v0.2.10 [INFO] [stderr] Compiling nix v0.10.0 [INFO] [stderr] Checking try-lock v0.2.2 [INFO] [stderr] Checking url v1.7.2 [INFO] [stderr] Checking tokio-codec v0.1.1 [INFO] [stderr] Checking want v0.0.6 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Compiling proc-macro-hack v0.4.1 [INFO] [stderr] Compiling syn v0.15.26 [INFO] [stderr] Compiling syn v0.14.9 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking bitflags v1.0.4 [INFO] [stderr] Checking dtoa v0.4.3 [INFO] [stderr] Checking atoi v0.2.4 [INFO] [stderr] Checking tower-service v0.1.0 [INFO] [stderr] Checking chrono v0.4.6 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Checking tokio-reactor v0.1.8 [INFO] [stderr] Checking crossbeam v0.6.0 [INFO] [stderr] Checking tokio-threadpool v0.1.11 [INFO] [stderr] Checking flate2 v1.0.6 [INFO] [stderr] Checking tokio-tcp v0.1.3 [INFO] [stderr] Checking tokio-uds v0.2.5 [INFO] [stderr] Checking tokio-udp v0.1.3 [INFO] [stderr] Checking tokio-fs v0.1.5 [INFO] [stderr] Checking tokio v0.1.15 [INFO] [stderr] Checking serde_plain v0.3.0 [INFO] [stderr] Checking serde_urlencoded v0.5.4 [INFO] [stderr] Checking serde_json v1.0.39 [INFO] [stderr] Checking h2 v0.1.16 [INFO] [stderr] Checking sysfs_gpio v0.5.3 [INFO] [stderr] Compiling serde_derive v1.0.88 [INFO] [stderr] Checking hyper v0.12.24 [INFO] [stderr] Compiling tower-web-macros v0.2.1 [INFO] [stderr] Checking tower-web v0.2.2 [INFO] [stderr] Checking rustythingy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::pin_mock::PinMockGenerator` [INFO] [stdout] --> src/transceiver/transceiver.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::pin_mock::PinMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/transceiver/transceiver.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::pin_mock::PinMockGenerator` [INFO] [stdout] --> src/sonar/sonar.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::pin_mock::PinMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::transceiver_mock::TransceiverMockGenerator` [INFO] [stdout] --> src/sonar/sonar.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::transceiver_mock::TransceiverMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/sonar/sonar.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `trigger_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | trigger_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trigger_pin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `echo_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | echo_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_echo_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transceiver` [INFO] [stdout] --> src/sonar/sonar_mock.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | transceiver: &impl TransceiverInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transceiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `green_light_pin` [INFO] [stdout] --> src/main.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let green_light_pin = Pin::new(GREEN_LIGHT_PIN); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_green_light_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `green_light_pin_value` is assigned to, but never used [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut green_light_pin_value; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_green_light_pin_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | green_light_pin_value = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | green_light_pin_value = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SonarSpy { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> SonarSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SonarMockGenerator` is never constructed [INFO] [stdout] --> src/sonar/sonar_mock.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SonarMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SonarMockGenerator { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 37 | pub fn generate_mock(&mut self) -> SonarMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_distance_to_obstacle_cm_called_return` and `verify_distance_to_obstacle_cm_has_been_called` are never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl SonarMock { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 69 | pub fn when_distance_to_obstacle_cm_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn verify_distance_to_obstacle_cm_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn store_spy(spy_id: String, spy: SonarSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/pin/pin.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | / self.with_exported( || { [INFO] [stdout] 11 | | self.set_direction(Direction::Low)?; [INFO] [stdout] 12 | | self.set_value(value)?; [INFO] [stdout] 13 | | sleep(Duration::from_millis(duration_ms)); [INFO] [stdout] 14 | | Ok(()) [INFO] [stdout] 15 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 10 | let _ = self.with_exported( || { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `trigger_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | trigger_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trigger_pin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `echo_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | echo_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_echo_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transceiver` [INFO] [stdout] --> src/sonar/sonar_mock.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | transceiver: &impl TransceiverInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transceiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `green_light_pin` [INFO] [stdout] --> src/main.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let green_light_pin = Pin::new(GREEN_LIGHT_PIN); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_green_light_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `green_light_pin_value` is assigned to, but never used [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut green_light_pin_value; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_green_light_pin_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | green_light_pin_value = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | green_light_pin_value = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl TransceiverSpy { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 21 | fn new() -> TransceiverSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransceiverMockGenerator` is never constructed [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct TransceiverMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl TransceiverMockGenerator { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] 40 | pub fn generate_mock(&mut self) -> TransceiverMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_trigger_called_return`, `verify_trigger_has_been_called`, `when_echo_called_return`, and `verify_echo_has_been_called` are never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl TransceiverMock { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 79 | pub fn when_trigger_called_return(&self, result: Result<(),Error>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn verify_trigger_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn when_echo_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn verify_echo_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn store_spy(spy_id: String, spy: TransceiverSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:117:4 [INFO] [stdout] | [INFO] [stdout] 117 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl PinSpy { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> PinSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PinMockGenerator` is never constructed [INFO] [stdout] --> src/pin/pin_mock.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct PinMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl PinMockGenerator { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 39 | pub fn generate_mock(&mut self) -> PinMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_transmit_called_return`, `when_read_called_return`, `verify_transmit_calls_has_been_called`, and `verify_read_calls_has_been_called` are never used [INFO] [stdout] --> src/pin/pin_mock.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl PinMock { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 75 | pub fn when_transmit_called_return(&self, result: Result<(),Error>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn when_read_called_return(&self, result: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn verify_transmit_calls_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn verify_read_calls_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:110:4 [INFO] [stdout] | [INFO] [stdout] 110 | fn store_spy(spy_id: String, spy: PinSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SonarSpy { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> SonarSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SonarMockGenerator` is never constructed [INFO] [stdout] --> src/sonar/sonar_mock.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SonarMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SonarMockGenerator { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 37 | pub fn generate_mock(&mut self) -> SonarMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_distance_to_obstacle_cm_called_return` and `verify_distance_to_obstacle_cm_has_been_called` are never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl SonarMock { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 69 | pub fn when_distance_to_obstacle_cm_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn verify_distance_to_obstacle_cm_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn store_spy(spy_id: String, spy: SonarSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/pin/pin.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | / self.with_exported( || { [INFO] [stdout] 11 | | self.set_direction(Direction::Low)?; [INFO] [stdout] 12 | | self.set_value(value)?; [INFO] [stdout] 13 | | sleep(Duration::from_millis(duration_ms)); [INFO] [stdout] 14 | | Ok(()) [INFO] [stdout] 15 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 10 | let _ = self.with_exported( || { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.19s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "6c81359a81bcdf08030ebc8a1e2ef8f603c7b7aa8c14017cabd7a18af4fb60aa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6c81359a81bcdf08030ebc8a1e2ef8f603c7b7aa8c14017cabd7a18af4fb60aa", kill_on_drop: false }` [INFO] [stdout] 6c81359a81bcdf08030ebc8a1e2ef8f603c7b7aa8c14017cabd7a18af4fb60aa [INFO] checking Jojograndjojo/rustythingy against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJojograndjojo%2Frustythingy" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Jojograndjojo/rustythingy on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Jojograndjojo/rustythingy [INFO] finished tweaking git repo https://github.com/Jojograndjojo/rustythingy [INFO] tweaked toml for git repo https://github.com/Jojograndjojo/rustythingy written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Jojograndjojo/rustythingy 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" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1c79ceb94365827c6b0792c7202ec5612bb184f5f0cba4a5264435a35063c3ec [INFO] running `Command { std: "docker" "start" "-a" "1c79ceb94365827c6b0792c7202ec5612bb184f5f0cba4a5264435a35063c3ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1c79ceb94365827c6b0792c7202ec5612bb184f5f0cba4a5264435a35063c3ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1c79ceb94365827c6b0792c7202ec5612bb184f5f0cba4a5264435a35063c3ec", kill_on_drop: false }` [INFO] [stdout] 1c79ceb94365827c6b0792c7202ec5612bb184f5f0cba4a5264435a35063c3ec [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bc94947aad954c0e48151b5f4a441ae777fc9029e6be90107aa3c79d7f974d54 [INFO] running `Command { std: "docker" "start" "-a" "bc94947aad954c0e48151b5f4a441ae777fc9029e6be90107aa3c79d7f974d54", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.49 [INFO] [stderr] Checking cfg-if v0.1.6 [INFO] [stderr] Checking rand_core v0.4.0 [INFO] [stderr] Compiling byteorder v1.3.1 [INFO] [stderr] Compiling autocfg v0.1.2 [INFO] [stderr] Checking futures v0.1.25 [INFO] [stderr] Checking smallvec v0.6.9 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking stable_deref_trait v1.1.1 [INFO] [stderr] Compiling arrayvec v0.4.10 [INFO] [stderr] Checking lazycell v1.2.1 [INFO] [stderr] Checking nodrop v0.1.13 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Compiling proc-macro2 v0.4.27 [INFO] [stderr] Checking log v0.4.6 [INFO] [stderr] Checking crossbeam-utils v0.6.5 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Checking owning_ref v0.4.0 [INFO] [stderr] Checking itoa v0.4.3 [INFO] [stderr] Compiling serde v1.0.88 [INFO] [stderr] Compiling cc v1.0.29 [INFO] [stderr] Checking matches v0.1.8 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Checking lock_api v0.1.5 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand_jitter v0.1.3 [INFO] [stderr] Checking unicode-normalization v0.1.8 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Checking crossbeam-channel v0.3.8 [INFO] [stderr] Checking unicode-bidi v0.3.4 [INFO] [stderr] Compiling quote v0.6.11 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Compiling httparse v1.3.3 [INFO] [stderr] Compiling crc32fast v1.1.2 [INFO] [stderr] Compiling proc-macro-hack-impl v0.4.1 [INFO] [stderr] Checking tokio-executor v0.1.6 [INFO] [stderr] Compiling ryu v0.2.7 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Checking tokio-sync v0.1.2 [INFO] [stderr] Compiling iovec v0.1.2 [INFO] [stderr] Checking string v0.1.3 [INFO] [stderr] Checking crossbeam-deque v0.6.3 [INFO] [stderr] Checking percent-encoding v1.0.1 [INFO] [stderr] Checking tokio-current-thread v0.1.4 [INFO] [stderr] Checking rand_os v0.1.2 [INFO] [stderr] Checking num_cpus v1.10.0 [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking bytes v0.4.11 [INFO] [stderr] Checking time v0.1.42 [INFO] [stderr] Checking tokio-timer v0.2.10 [INFO] [stderr] Checking try-lock v0.2.2 [INFO] [stderr] Checking indexmap v1.0.2 [INFO] [stderr] Compiling nix v0.10.0 [INFO] [stderr] Checking tokio-io v0.1.11 [INFO] [stderr] Checking http v0.1.16 [INFO] [stderr] Compiling miniz-sys v0.1.11 [INFO] [stderr] Checking want v0.0.6 [INFO] [stderr] Compiling proc-macro-hack v0.4.1 [INFO] [stderr] Checking mio v0.6.16 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Compiling syn v0.14.9 [INFO] [stderr] Compiling syn v0.15.26 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking tokio-codec v0.1.1 [INFO] [stderr] Checking dtoa v0.4.3 [INFO] [stderr] Checking bitflags v1.0.4 [INFO] [stderr] Checking atoi v0.2.4 [INFO] [stderr] Checking tower-service v0.1.0 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking chrono v0.4.6 [INFO] [stderr] Checking flate2 v1.0.6 [INFO] [stderr] Checking url v1.7.2 [INFO] [stderr] Checking parking_lot v0.7.1 [INFO] [stderr] Checking mio-uds v0.6.7 [INFO] [stderr] Checking tokio-reactor v0.1.8 [INFO] [stderr] Checking crossbeam v0.6.0 [INFO] [stderr] Checking tokio-udp v0.1.3 [INFO] [stderr] Checking tokio-tcp v0.1.3 [INFO] [stderr] Checking tokio-uds v0.2.5 [INFO] [stderr] Checking tokio-threadpool v0.1.11 [INFO] [stderr] Checking h2 v0.1.16 [INFO] [stderr] Checking tokio-fs v0.1.5 [INFO] [stderr] Checking tokio v0.1.15 [INFO] [stderr] Compiling serde_derive v1.0.88 [INFO] [stderr] Checking sysfs_gpio v0.5.3 [INFO] [stderr] Checking serde_json v1.0.39 [INFO] [stderr] Checking serde_urlencoded v0.5.4 [INFO] [stderr] Checking serde_plain v0.3.0 [INFO] [stderr] Checking hyper v0.12.24 [INFO] [stderr] Compiling tower-web-macros v0.2.1 [INFO] [stderr] Checking tower-web v0.2.2 [INFO] [stderr] Checking rustythingy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::pin_mock::PinMockGenerator` [INFO] [stdout] --> src/transceiver/transceiver.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::pin_mock::PinMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/transceiver/transceiver.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::pin_mock::PinMockGenerator` [INFO] [stdout] --> src/sonar/sonar.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::pin_mock::PinMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::transceiver_mock::TransceiverMockGenerator` [INFO] [stdout] --> src/sonar/sonar.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::transceiver_mock::TransceiverMockGenerator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/sonar/sonar.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `trigger_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | trigger_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trigger_pin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `echo_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | echo_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_echo_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transceiver` [INFO] [stdout] --> src/sonar/sonar_mock.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | transceiver: &impl TransceiverInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transceiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `green_light_pin` [INFO] [stdout] --> src/main.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let green_light_pin = Pin::new(GREEN_LIGHT_PIN); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_green_light_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `green_light_pin_value` is assigned to, but never used [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut green_light_pin_value; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_green_light_pin_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | green_light_pin_value = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | green_light_pin_value = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl TransceiverSpy { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 21 | fn new() -> TransceiverSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TransceiverMockGenerator` is never constructed [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct TransceiverMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl TransceiverMockGenerator { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] 40 | pub fn generate_mock(&mut self) -> TransceiverMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `trigger_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | trigger_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_trigger_pin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `echo_pin` [INFO] [stdout] --> src/sonar/sonar_mock.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | echo_pin: &impl PinInterface, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_echo_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `transceiver` [INFO] [stdout] --> src/sonar/sonar_mock.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | transceiver: &impl TransceiverInterface, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transceiver` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_trigger_called_return`, `verify_trigger_has_been_called`, `when_echo_called_return`, and `verify_echo_has_been_called` are never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 78 | impl TransceiverMock { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] 79 | pub fn when_trigger_called_return(&self, result: Result<(),Error>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn verify_trigger_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn when_echo_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn verify_echo_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:112:4 [INFO] [stdout] | [INFO] [stdout] 112 | fn store_spy(spy_id: String, spy: TransceiverSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/transceiver/transceiver_mock.rs:117:4 [INFO] [stdout] | [INFO] [stdout] 117 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl PinSpy { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> PinSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PinMockGenerator` is never constructed [INFO] [stdout] --> src/pin/pin_mock.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct PinMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl PinMockGenerator { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 39 | pub fn generate_mock(&mut self) -> PinMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_transmit_called_return`, `when_read_called_return`, `verify_transmit_calls_has_been_called`, and `verify_read_calls_has_been_called` are never used [INFO] [stdout] --> src/pin/pin_mock.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl PinMock { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 75 | pub fn when_transmit_called_return(&self, result: Result<(),Error>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn when_read_called_return(&self, result: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn verify_transmit_calls_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn verify_read_calls_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:110:4 [INFO] [stdout] | [INFO] [stdout] 110 | fn store_spy(spy_id: String, spy: PinSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/pin/pin_mock.rs:116:4 [INFO] [stdout] | [INFO] [stdout] 116 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SonarSpy { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> SonarSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SonarMockGenerator` is never constructed [INFO] [stdout] --> src/sonar/sonar_mock.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SonarMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SonarMockGenerator { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 37 | pub fn generate_mock(&mut self) -> SonarMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_distance_to_obstacle_cm_called_return` and `verify_distance_to_obstacle_cm_has_been_called` are never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl SonarMock { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 69 | pub fn when_distance_to_obstacle_cm_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn verify_distance_to_obstacle_cm_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn store_spy(spy_id: String, spy: SonarSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/pin/pin.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | / self.with_exported( || { [INFO] [stdout] 11 | | self.set_direction(Direction::Low)?; [INFO] [stdout] 12 | | self.set_value(value)?; [INFO] [stdout] 13 | | sleep(Duration::from_millis(duration_ms)); [INFO] [stdout] 14 | | Ok(()) [INFO] [stdout] 15 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 10 | let _ = self.with_exported( || { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `green_light_pin` [INFO] [stdout] --> src/main.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | let green_light_pin = Pin::new(GREEN_LIGHT_PIN); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_green_light_pin` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `green_light_pin_value` is assigned to, but never used [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let mut green_light_pin_value; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_green_light_pin_value` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | green_light_pin_value = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `green_light_pin_value` is never read [INFO] [stdout] --> src/main.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | green_light_pin_value = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl SonarSpy { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 20 | fn new() -> SonarSpy { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SonarMockGenerator` is never constructed [INFO] [stdout] --> src/sonar/sonar_mock.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 33 | pub struct SonarMockGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `generate_mock` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl SonarMockGenerator { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] 37 | pub fn generate_mock(&mut self) -> SonarMock { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `when_distance_to_obstacle_cm_called_return` and `verify_distance_to_obstacle_cm_has_been_called` are never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 68 | impl SonarMock { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] 69 | pub fn when_distance_to_obstacle_cm_called_return(&self, result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn verify_distance_to_obstacle_cm_has_been_called(&self, calls: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `store_spy` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:86:4 [INFO] [stdout] | [INFO] [stdout] 86 | fn store_spy(spy_id: String, spy: SonarSpy) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_spy_id` is never used [INFO] [stdout] --> src/sonar/sonar_mock.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn generate_spy_id() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = transceiver.trigger(&red_light_pin, red_light_pin_value, 500); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/pin/pin.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | / self.with_exported( || { [INFO] [stdout] 11 | | self.set_direction(Direction::Low)?; [INFO] [stdout] 12 | | self.set_value(value)?; [INFO] [stdout] 13 | | sleep(Duration::from_millis(duration_ms)); [INFO] [stdout] 14 | | Ok(()) [INFO] [stdout] 15 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 10 | let _ = self.with_exported( || { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.33s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.9 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "bc94947aad954c0e48151b5f4a441ae777fc9029e6be90107aa3c79d7f974d54", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc94947aad954c0e48151b5f4a441ae777fc9029e6be90107aa3c79d7f974d54", kill_on_drop: false }` [INFO] [stdout] bc94947aad954c0e48151b5f4a441ae777fc9029e6be90107aa3c79d7f974d54