[INFO] fetching crate libyee 0.0.2... [INFO] testing libyee-0.0.2 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145330-1 [INFO] extracting crate libyee 0.0.2 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate libyee 0.0.2 [INFO] finished tweaking crates.io crate libyee 0.0.2 [INFO] tweaked toml for crates.io crate libyee 0.0.2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate libyee 0.0.2 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 24 packages to latest compatible versions [INFO] [stderr] Adding enum-iterator v0.7.0 (available: v2.3.0) [INFO] [stderr] Adding rand v0.8.5 (available: v0.9.2) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e858601c5f2ab2d4cbcf7857c3f4f8787d9ae8980237cc5720d8088a76c64af0 [INFO] running `Command { std: "docker" "start" "-a" "e858601c5f2ab2d4cbcf7857c3f4f8787d9ae8980237cc5720d8088a76c64af0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e858601c5f2ab2d4cbcf7857c3f4f8787d9ae8980237cc5720d8088a76c64af0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e858601c5f2ab2d4cbcf7857c3f4f8787d9ae8980237cc5720d8088a76c64af0", kill_on_drop: false }` [INFO] [stdout] e858601c5f2ab2d4cbcf7857c3f4f8787d9ae8980237cc5720d8088a76c64af0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c4ca7e8dfbde6d7e9a56698438d711eb64616ecbf31da3e3ca735e7e9c414ce6 [INFO] running `Command { std: "docker" "start" "-a" "c4ca7e8dfbde6d7e9a56698438d711eb64616ecbf31da3e3ca735e7e9c414ce6", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling enum-iterator-derive v0.7.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling enum-iterator v0.7.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling libyee v0.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/search.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddrV4` [INFO] [stdout] --> src/search.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4, ToSocketAddrs, UdpSocket}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Brightness` and `Ct` [INFO] [stdout] --> src/method_calls.rs:11:39 [INFO] [stdout] | [INFO] [stdout] 11 | AdjustAction, AdjustableProp, Brightness, BulbConnection, CfAction, ColorFlow, Cron, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | CronResponse, CronType, Ct, ErrorResponse, FlowTuple, FlowTupleMode, MethodCallError, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `result` and `time::Duration` [INFO] [stdout] --> src/method_calls.rs:694:15 [INFO] [stdout] | [INFO] [stdout] 694 | use std::{result, sync::Mutex, time::Duration}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ColorFlowTupleMode`, `ColorFlow`, `CtFlowTupleMode`, `FlowTupleMode`, `FlowTuple`, `HSV`, and `rgb::RGB` [INFO] [stdout] --> src/method_calls.rs:701:29 [INFO] [stdout] | [INFO] [stdout] 701 | BulbConnection, ColorFlow, ColorFlowTupleMode, CtFlowTupleMode, FlowTuple, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] 702 | FlowTupleMode, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 703 | }, [INFO] [stdout] 704 | lightmode::{LightMode, HSV}, [INFO] [stdout] | ^^^ [INFO] [stdout] 705 | method::Method, [INFO] [stdout] 706 | rgb::RGB, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CronType`, `Cron`, `MusicMode`, `Scene`, `TEST_OK_VAL`, and `TransitionMode` [INFO] [stdout] --> src/method_calls.rs:710:9 [INFO] [stdout] | [INFO] [stdout] 710 | Cron, CronType, MethodCallError, MockTcpConnection, MusicMode, Scene, StringVecResponse, [INFO] [stdout] | ^^^^ ^^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] 711 | TransitionMode, TEST_OK_VAL, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/search.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | fn set_read_timeout(&mut self, dur: Option) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 30 | self.set_read_timeout(dur) [INFO] [stdout] | -------------------------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf` [INFO] [stdout] --> src/search.rs:99:41 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/search.rs:99:53 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:380:32 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn cron_get(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:384:32 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn cron_del(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MockSendRecvable` is never constructed [INFO] [stdout] --> src/search.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | struct MockSendRecvable<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `error` are never read [INFO] [stdout] --> src/connection.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct ErrorResponse { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 36 | id: i16, [INFO] [stdout] | ^^ [INFO] [stdout] 37 | error: BulbErrorResponse, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `code` and `message` are never read [INFO] [stdout] --> src/connection.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct BulbErrorResponse { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 42 | code: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 43 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BulbErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MockTcpConnection` is never constructed [INFO] [stdout] --> src/method_calls.rs:634:8 [INFO] [stdout] | [INFO] [stdout] 634 | struct MockTcpConnection { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TEST_OK_VAL` is never used [INFO] [stdout] --> src/method_calls.rs:691:7 [INFO] [stdout] | [INFO] [stdout] 691 | const TEST_OK_VAL: &str = "{\"id\":1, \"result\":[\"ok\"]}"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `one_rng` is never used [INFO] [stdout] --> src/method_calls.rs:714:8 [INFO] [stdout] | [INFO] [stdout] 714 | fn one_rng() -> StepRng { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_bulb_with_method` is never used [INFO] [stdout] --> src/method_calls.rs:718:8 [INFO] [stdout] | [INFO] [stdout] 718 | fn make_bulb_with_method(method: Method) -> Bulb { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_ok_result` is never used [INFO] [stdout] --> src/method_calls.rs:732:8 [INFO] [stdout] | [INFO] [stdout] 732 | fn assert_ok_result(result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `conn_with_method` is never used [INFO] [stdout] --> src/method_calls.rs:740:8 [INFO] [stdout] | [INFO] [stdout] 740 | fn conn_with_method( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/bulb.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Some((key.unwrap().clone(), val)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/search.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | socket.set_read_timeout(Some(*d)); [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] 54 | let _ = socket.set_read_timeout(Some(*d)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&mut &[u8]` instead of cloning the inner type [INFO] [stdout] --> src/method_calls.rs:667:20 [INFO] [stdout] | [INFO] [stdout] 667 | let _ = buf.clone().read_to_string(&mut str); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.14s [INFO] running `Command { std: "docker" "inspect" "c4ca7e8dfbde6d7e9a56698438d711eb64616ecbf31da3e3ca735e7e9c414ce6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c4ca7e8dfbde6d7e9a56698438d711eb64616ecbf31da3e3ca735e7e9c414ce6", kill_on_drop: false }` [INFO] [stdout] c4ca7e8dfbde6d7e9a56698438d711eb64616ecbf31da3e3ca735e7e9c414ce6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a7185fd1b13095e1493a37643abf618c52202d385002b12212f069f90ceb1e28 [INFO] running `Command { std: "docker" "start" "-a" "a7185fd1b13095e1493a37643abf618c52202d385002b12212f069f90ceb1e28", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/search.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling libyee v0.0.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `SocketAddrV4` [INFO] [stdout] --> src/search.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4, ToSocketAddrs, UdpSocket}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Brightness` and `Ct` [INFO] [stdout] --> src/method_calls.rs:11:39 [INFO] [stdout] | [INFO] [stdout] 11 | AdjustAction, AdjustableProp, Brightness, BulbConnection, CfAction, ColorFlow, Cron, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | CronResponse, CronType, Ct, ErrorResponse, FlowTuple, FlowTupleMode, MethodCallError, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `result` and `time::Duration` [INFO] [stdout] --> src/method_calls.rs:694:15 [INFO] [stdout] | [INFO] [stdout] 694 | use std::{result, sync::Mutex, time::Duration}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ColorFlowTupleMode`, `ColorFlow`, `CtFlowTupleMode`, `FlowTupleMode`, `FlowTuple`, `HSV`, and `rgb::RGB` [INFO] [stdout] --> src/method_calls.rs:701:29 [INFO] [stdout] | [INFO] [stdout] 701 | BulbConnection, ColorFlow, ColorFlowTupleMode, CtFlowTupleMode, FlowTuple, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] 702 | FlowTupleMode, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 703 | }, [INFO] [stdout] 704 | lightmode::{LightMode, HSV}, [INFO] [stdout] | ^^^ [INFO] [stdout] 705 | method::Method, [INFO] [stdout] 706 | rgb::RGB, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CronType`, `Cron`, `MusicMode`, `Scene`, `TEST_OK_VAL`, and `TransitionMode` [INFO] [stdout] --> src/method_calls.rs:710:9 [INFO] [stdout] | [INFO] [stdout] 710 | Cron, CronType, MethodCallError, MockTcpConnection, MusicMode, Scene, StringVecResponse, [INFO] [stdout] | ^^^^ ^^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] 711 | TransitionMode, TEST_OK_VAL, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/search.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | fn set_read_timeout(&mut self, dur: Option) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 30 | self.set_read_timeout(dur) [INFO] [stdout] | -------------------------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf` [INFO] [stdout] --> src/search.rs:99:41 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/search.rs:99:53 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:380:32 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn cron_get(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:384:32 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn cron_del(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MockSendRecvable` is never constructed [INFO] [stdout] --> src/search.rs:91:8 [INFO] [stdout] | [INFO] [stdout] 91 | struct MockSendRecvable<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `error` are never read [INFO] [stdout] --> src/connection.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct ErrorResponse { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 36 | id: i16, [INFO] [stdout] | ^^ [INFO] [stdout] 37 | error: BulbErrorResponse, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `code` and `message` are never read [INFO] [stdout] --> src/connection.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct BulbErrorResponse { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 42 | code: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 43 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BulbErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MockTcpConnection` is never constructed [INFO] [stdout] --> src/method_calls.rs:634:8 [INFO] [stdout] | [INFO] [stdout] 634 | struct MockTcpConnection { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TEST_OK_VAL` is never used [INFO] [stdout] --> src/method_calls.rs:691:7 [INFO] [stdout] | [INFO] [stdout] 691 | const TEST_OK_VAL: &str = "{\"id\":1, \"result\":[\"ok\"]}"; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `one_rng` is never used [INFO] [stdout] --> src/method_calls.rs:714:8 [INFO] [stdout] | [INFO] [stdout] 714 | fn one_rng() -> StepRng { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_bulb_with_method` is never used [INFO] [stdout] --> src/method_calls.rs:718:8 [INFO] [stdout] | [INFO] [stdout] 718 | fn make_bulb_with_method(method: Method) -> Bulb { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_ok_result` is never used [INFO] [stdout] --> src/method_calls.rs:732:8 [INFO] [stdout] | [INFO] [stdout] 732 | fn assert_ok_result(result: Result) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `conn_with_method` is never used [INFO] [stdout] --> src/method_calls.rs:740:8 [INFO] [stdout] | [INFO] [stdout] 740 | fn conn_with_method( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/bulb.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Some((key.unwrap().clone(), val)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/search.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | socket.set_read_timeout(Some(*d)); [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] 54 | let _ = socket.set_read_timeout(Some(*d)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&mut &[u8]` instead of cloning the inner type [INFO] [stdout] --> src/method_calls.rs:667:20 [INFO] [stdout] | [INFO] [stdout] 667 | let _ = buf.clone().read_to_string(&mut str); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/search.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SocketAddrV4` [INFO] [stdout] --> src/search.rs:3:46 [INFO] [stdout] | [INFO] [stdout] 3 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4, ToSocketAddrs, UdpSocket}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Brightness` and `Ct` [INFO] [stdout] --> src/method_calls.rs:11:39 [INFO] [stdout] | [INFO] [stdout] 11 | AdjustAction, AdjustableProp, Brightness, BulbConnection, CfAction, ColorFlow, Cron, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 12 | CronResponse, CronType, Ct, ErrorResponse, FlowTuple, FlowTupleMode, MethodCallError, [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `result` [INFO] [stdout] --> src/method_calls.rs:694:15 [INFO] [stdout] | [INFO] [stdout] 694 | use std::{result, sync::Mutex, time::Duration}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function cannot return without recursing [INFO] [stdout] --> src/search.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | fn set_read_timeout(&mut self, dur: Option) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stdout] 30 | self.set_read_timeout(dur) [INFO] [stdout] | -------------------------- recursive call site [INFO] [stdout] | [INFO] [stdout] = help: a `loop` may express intention better if this is on purpose [INFO] [stdout] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf` [INFO] [stdout] --> src/search.rs:99:41 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `addr` [INFO] [stdout] --> src/search.rs:99:53 [INFO] [stdout] | [INFO] [stdout] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:380:32 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn cron_get(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cron_type` [INFO] [stdout] --> src/method_calls.rs:384:32 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn cron_del(&mut self, cron_type: &CronType) -> Result { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id` and `error` are never read [INFO] [stdout] --> src/connection.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub struct ErrorResponse { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 36 | id: i16, [INFO] [stdout] | ^^ [INFO] [stdout] 37 | error: BulbErrorResponse, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `code` and `message` are never read [INFO] [stdout] --> src/connection.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct BulbErrorResponse { [INFO] [stdout] | ----------------- fields in this struct [INFO] [stdout] 42 | code: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 43 | message: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BulbErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/bulb.rs:53:31 [INFO] [stdout] | [INFO] [stdout] 53 | Some((key.unwrap().clone(), val)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/search.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | socket.set_read_timeout(Some(*d)); [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] 54 | let _ = socket.set_read_timeout(Some(*d)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `recv_contents` should have an upper case name [INFO] [stdout] --> src/search.rs:149:11 [INFO] [stdout] | [INFO] [stdout] 149 | const recv_contents: &str = concat!( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 149 - const recv_contents: &str = concat!( [INFO] [stdout] 149 + const RECV_CONTENTS: &str = concat!( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&mut &[u8]` instead of cloning the inner type [INFO] [stdout] --> src/method_calls.rs:667:20 [INFO] [stdout] | [INFO] [stdout] 667 | let _ = buf.clone().read_to_string(&mut str); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.53s [INFO] running `Command { std: "docker" "inspect" "a7185fd1b13095e1493a37643abf618c52202d385002b12212f069f90ceb1e28", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7185fd1b13095e1493a37643abf618c52202d385002b12212f069f90ceb1e28", kill_on_drop: false }` [INFO] [stdout] a7185fd1b13095e1493a37643abf618c52202d385002b12212f069f90ceb1e28 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 81c181fbd23f45d7bb5f69a5521a26c556ef8967e3c0ef1e26b7423948a1ad07 [INFO] running `Command { std: "docker" "start" "-a" "81c181fbd23f45d7bb5f69a5521a26c556ef8967e3c0ef1e26b7423948a1ad07", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/search.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `SocketAddrV4` [INFO] [stderr] --> src/search.rs:3:46 [INFO] [stderr] | [INFO] [stderr] 3 | use std::net::{IpAddr, Ipv4Addr, SocketAddr, SocketAddrV4, ToSocketAddrs, UdpSocket}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Brightness` and `Ct` [INFO] [stderr] --> src/method_calls.rs:11:39 [INFO] [stderr] | [INFO] [stderr] 11 | AdjustAction, AdjustableProp, Brightness, BulbConnection, CfAction, ColorFlow, Cron, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 12 | CronResponse, CronType, Ct, ErrorResponse, FlowTuple, FlowTupleMode, MethodCallError, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `result` and `time::Duration` [INFO] [stderr] --> src/method_calls.rs:694:15 [INFO] [stderr] | [INFO] [stderr] 694 | use std::{result, sync::Mutex, time::Duration}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ColorFlowTupleMode`, `ColorFlow`, `CtFlowTupleMode`, `FlowTupleMode`, `FlowTuple`, `HSV`, and `rgb::RGB` [INFO] [stderr] --> src/method_calls.rs:701:29 [INFO] [stderr] | [INFO] [stderr] 701 | BulbConnection, ColorFlow, ColorFlowTupleMode, CtFlowTupleMode, FlowTuple, [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] 702 | FlowTupleMode, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 703 | }, [INFO] [stderr] 704 | lightmode::{LightMode, HSV}, [INFO] [stderr] | ^^^ [INFO] [stderr] 705 | method::Method, [INFO] [stderr] 706 | rgb::RGB, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CronType`, `Cron`, `MusicMode`, `Scene`, `TEST_OK_VAL`, and `TransitionMode` [INFO] [stderr] --> src/method_calls.rs:710:9 [INFO] [stderr] | [INFO] [stderr] 710 | Cron, CronType, MethodCallError, MockTcpConnection, MusicMode, Scene, StringVecResponse, [INFO] [stderr] | ^^^^ ^^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] 711 | TransitionMode, TEST_OK_VAL, [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function cannot return without recursing [INFO] [stderr] --> src/search.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | fn set_read_timeout(&mut self, dur: Option) -> io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot return without recursing [INFO] [stderr] 30 | self.set_read_timeout(dur) [INFO] [stderr] | -------------------------- recursive call site [INFO] [stderr] | [INFO] [stderr] = help: a `loop` may express intention better if this is on purpose [INFO] [stderr] = note: `#[warn(unconditional_recursion)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `buf` [INFO] [stderr] --> src/search.rs:99:41 [INFO] [stderr] | [INFO] [stderr] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `addr` [INFO] [stderr] --> src/search.rs:99:53 [INFO] [stderr] | [INFO] [stderr] 99 | fn send_to(&self, buf: &[u8], addr: A) -> io::Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_addr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cron_type` [INFO] [stderr] --> src/method_calls.rs:380:32 [INFO] [stderr] | [INFO] [stderr] 380 | pub fn cron_get(&mut self, cron_type: &CronType) -> Result { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cron_type` [INFO] [stderr] --> src/method_calls.rs:384:32 [INFO] [stderr] | [INFO] [stderr] 384 | pub fn cron_del(&mut self, cron_type: &CronType) -> Result { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cron_type` [INFO] [stderr] [INFO] [stderr] warning: struct `MockSendRecvable` is never constructed [INFO] [stderr] --> src/search.rs:91:8 [INFO] [stderr] | [INFO] [stderr] 91 | struct MockSendRecvable<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: fields `id` and `error` are never read [INFO] [stderr] --> src/connection.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 35 | pub struct ErrorResponse { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 36 | id: i16, [INFO] [stderr] | ^^ [INFO] [stderr] 37 | error: BulbErrorResponse, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `code` and `message` are never read [INFO] [stderr] --> src/connection.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 41 | pub struct BulbErrorResponse { [INFO] [stderr] | ----------------- fields in this struct [INFO] [stderr] 42 | code: i32, [INFO] [stderr] | ^^^^ [INFO] [stderr] 43 | message: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BulbErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `MockTcpConnection` is never constructed [INFO] [stderr] --> src/method_calls.rs:634:8 [INFO] [stderr] | [INFO] [stderr] 634 | struct MockTcpConnection { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `TEST_OK_VAL` is never used [INFO] [stderr] --> src/method_calls.rs:691:7 [INFO] [stderr] | [INFO] [stderr] 691 | const TEST_OK_VAL: &str = "{\"id\":1, \"result\":[\"ok\"]}"; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `one_rng` is never used [INFO] [stderr] --> src/method_calls.rs:714:8 [INFO] [stderr] | [INFO] [stderr] 714 | fn one_rng() -> StepRng { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `make_bulb_with_method` is never used [INFO] [stderr] --> src/method_calls.rs:718:8 [INFO] [stderr] | [INFO] [stderr] 718 | fn make_bulb_with_method(method: Method) -> Bulb { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `assert_ok_result` is never used [INFO] [stderr] --> src/method_calls.rs:732:8 [INFO] [stderr] | [INFO] [stderr] 732 | fn assert_ok_result(result: Result) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `conn_with_method` is never used [INFO] [stderr] --> src/method_calls.rs:740:8 [INFO] [stderr] | [INFO] [stderr] 740 | fn conn_with_method( [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stderr] --> src/bulb.rs:53:31 [INFO] [stderr] | [INFO] [stderr] 53 | Some((key.unwrap().clone(), val)) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/search.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | socket.set_read_timeout(Some(*d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 54 | let _ = socket.set_read_timeout(Some(*d)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&mut &[u8]` instead of cloning the inner type [INFO] [stderr] --> src/method_calls.rs:667:20 [INFO] [stderr] | [INFO] [stderr] 667 | let _ = buf.clone().read_to_string(&mut str); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `result` [INFO] [stderr] --> src/method_calls.rs:694:15 [INFO] [stderr] | [INFO] [stderr] 694 | use std::{result, sync::Mutex, time::Duration}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `id` and `error` are never read [INFO] [stderr] --> src/connection.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 35 | pub struct ErrorResponse { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 36 | id: i16, [INFO] [stderr] | ^^ [INFO] [stderr] 37 | error: BulbErrorResponse, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ErrorResponse` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `recv_contents` should have an upper case name [INFO] [stderr] --> src/search.rs:149:11 [INFO] [stderr] | [INFO] [stderr] 149 | const recv_contents: &str = concat!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] help: convert the identifier to upper case [INFO] [stderr] | [INFO] [stderr] 149 - const recv_contents: &str = concat!( [INFO] [stderr] 149 + const RECV_CONTENTS: &str = concat!( [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `libyee` (lib) generated 23 warnings (run `cargo fix --lib -p libyee` to apply 6 suggestions) [INFO] [stderr] warning: `libyee` (lib test) generated 15 warnings (12 duplicates) (run `cargo fix --lib -p libyee --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/libyee-c83a7fac5cc550ae) [INFO] [stdout] [INFO] [stdout] running 49 tests [INFO] [stdout] test method_calls::tests::adjust_bright_test ... ok [INFO] [stdout] test method_calls::tests::bg_adjust_color_test ... ok [INFO] [stdout] test method_calls::tests::bg_adjust_ct_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_ct_abx_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_power_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_rgb_test ... ok [INFO] [stdout] test bulb::tests::bulb_parse_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_bright_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_hsv_test ... ok [INFO] [stdout] test method_calls::tests::bg_adjust_bright_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_default_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_scene_cf_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_scene_color_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_scene_hsv_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_scene_auto_delay_off_test ... ok [INFO] [stdout] test method_calls::tests::bg_start_cf_test ... ok [INFO] [stdout] test method_calls::tests::bg_stop_cf_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_scene_ct_test ... ok [INFO] [stdout] test method_calls::tests::bg_toggle_test ... ok [INFO] [stdout] test method_calls::tests::cron_del_test ... ok [INFO] [stdout] test method_calls::tests::set_adjust_test ... ok [INFO] [stdout] test method_calls::tests::set_bright_test ... ok [INFO] [stdout] test method_calls::tests::set_ct_abx_test ... ok [INFO] [stdout] test method_calls::tests::set_default_test ... ok [INFO] [stdout] test method_calls::tests::dev_toggle_test ... ok [INFO] [stdout] test method_calls::tests::set_hsv_test ... ok [INFO] [stdout] test method_calls::tests::get_prop_test ... ok [INFO] [stdout] test method_calls::tests::set_music_off_test ... ok [INFO] [stdout] test method_calls::tests::set_music_on_test ... ok [INFO] [stdout] test method_calls::tests::cron_add_test ... ok [INFO] [stdout] test method_calls::tests::set_name_test ... ok [INFO] [stdout] test method_calls::tests::cron_get_test ... ok [INFO] [stdout] test method_calls::tests::set_power_test ... ok [INFO] [stdout] test method_calls::tests::set_rgb_test ... ok [INFO] [stdout] test method_calls::tests::set_scene_auto_delay_off_test ... ok [INFO] [stdout] test method_calls::tests::set_scene_color_test ... ok [INFO] [stdout] test method_calls::tests::set_scene_ct_test ... ok [INFO] [stdout] test method_calls::tests::set_scene_hsv_test ... ok [INFO] [stdout] test method_calls::tests::start_cf_test ... ok [INFO] [stdout] test method_calls::tests::stop_cf_test ... ok [INFO] [stdout] test method_calls::tests::toggle_test ... ok [INFO] [stdout] test rgb::tests::rgb_u32_test ... ok [INFO] [stdout] test search::tests::bulb_search_count_one_test ... ok [INFO] [stdout] test method_calls::tests::set_scene_cf_test ... ok [INFO] [stdout] test method_calls::tests::bg_set_adjust_test ... ok [INFO] [stdout] test method_calls::tests::adjust_color_test ... ok [INFO] [stdout] test search::tests::bulb_search_duration_stop_test ... ok [INFO] [stdout] test method_calls::tests::adjust_ct_test ... ok [INFO] [stdout] test search::tests::bulb_search_duration_find_test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 49 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Doc-tests libyee [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "81c181fbd23f45d7bb5f69a5521a26c556ef8967e3c0ef1e26b7423948a1ad07", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "81c181fbd23f45d7bb5f69a5521a26c556ef8967e3c0ef1e26b7423948a1ad07", kill_on_drop: false }` [INFO] [stdout] 81c181fbd23f45d7bb5f69a5521a26c556ef8967e3c0ef1e26b7423948a1ad07