[INFO] cloning repository https://github.com/crossdot/steelcfg [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/crossdot/steelcfg" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcrossdot%2Fsteelcfg", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcrossdot%2Fsteelcfg'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 72ced9ca83bce37161773f81fb523e2b181b876a [INFO] testing crossdot/steelcfg against 1.60.0 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcrossdot%2Fsteelcfg" "/workspace/builds/worker-99/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-99/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/crossdot/steelcfg on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/crossdot/steelcfg [INFO] finished tweaking git repo https://github.com/crossdot/steelcfg [INFO] tweaked toml for git repo https://github.com/crossdot/steelcfg written to /workspace/builds/worker-99/source/Cargo.toml [INFO] crate git repo https://github.com/crossdot/steelcfg already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libc v0.2.32 [INFO] [stderr] Downloaded hidapi v0.4.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bf5913cf4147b94f5b3758ebec41ea9cb0ea536646a70ed2756204a1a55623e8 [INFO] running `Command { std: "docker" "start" "-a" "bf5913cf4147b94f5b3758ebec41ea9cb0ea536646a70ed2756204a1a55623e8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bf5913cf4147b94f5b3758ebec41ea9cb0ea536646a70ed2756204a1a55623e8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bf5913cf4147b94f5b3758ebec41ea9cb0ea536646a70ed2756204a1a55623e8", kill_on_drop: false }` [INFO] [stdout] bf5913cf4147b94f5b3758ebec41ea9cb0ea536646a70ed2756204a1a55623e8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 64fdf8ad1ac805d813a948120741e9305b5268e54ee2a77bf33d36763ae029b5 [INFO] running `Command { std: "docker" "start" "-a" "64fdf8ad1ac805d813a948120741e9305b5268e54ee2a77bf33d36763ae029b5", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling pkg-config v0.3.9 [INFO] [stderr] Compiling gcc v0.3.54 [INFO] [stderr] Compiling libc v0.2.32 [INFO] [stderr] Compiling byteorder v1.1.0 [INFO] [stderr] Compiling hidapi v0.4.1 [INFO] [stderr] Compiling steelcfg v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `byteorder` [INFO] [stdout] --> src/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use byteorder; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stdout] 20 + if device_info.vendor_id == VID && device_info.product_id == PID { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/utils.rs:5:36 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/utils.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `led_index` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:42 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_led_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `colors` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:57 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_colors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `speed` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:72 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:18 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res_index` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_res_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dpi` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:57 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_dpi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hz` [INFO] [stdout] --> src/protocol/proto_rival.rs:33:50 [INFO] [stdout] | [INFO] [stdout] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_hz` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `speed` [INFO] [stdout] --> src/protocol/proto_rival310.rs:26:72 [INFO] [stdout] | [INFO] [stdout] 26 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival310.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival310.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival310.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let res = hid_device.send_feature_report(&data).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:161:13 [INFO] [stdout] | [INFO] [stdout] 161 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Type` [INFO] [stdout] --> src/devices.rs:2:10 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Type { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ReportType` [INFO] [stdout] --> src/devices.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum ReportType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Command` [INFO] [stdout] --> src/devices.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Command { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Device` [INFO] [stdout] --> src/devices.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Device { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `DEVICE` [INFO] [stdout] --> src/devices.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / pub static DEVICE : &'static [Device] = &[ [INFO] [stdout] 42 | | Device { [INFO] [stdout] 43 | | name: "SteelSeries Rival 700 (Experimental)", [INFO] [stdout] 44 | | vid: 0x1038, [INFO] [stdout] ... | [INFO] [stdout] 63 | | } [INFO] [stdout] 64 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ColorDepth` [INFO] [stdout] --> src/protocol/mod.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum ColorDepth { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `LedType` [INFO] [stdout] --> src/protocol/mod.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum LedType { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Led` [INFO] [stdout] --> src/protocol/mod.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Led { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `from_big_endian` [INFO] [stdout] --> src/utils.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `from_little_endian` [INFO] [stdout] --> src/utils.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `to_big_endian` [INFO] [stdout] --> src/utils.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn to_big_endian<'a>(num: u16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const DPI_MIN: u16 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MAX: u16 = 6500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MULTIPLIER` [INFO] [stdout] --> src/protocol/proto_rival.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MULTIPLIER: u8 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_SIZE` [INFO] [stdout] --> src/protocol/proto_rival.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const REPORT_SIZE: u8 = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_DPI` [INFO] [stdout] --> src/protocol/proto_rival.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const ID_DPI: u8 = 0x03; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_REPORT_RATE` [INFO] [stdout] --> src/protocol/proto_rival.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | const ID_REPORT_RATE: u8 = 0x04; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_LED_EFFECT` [INFO] [stdout] --> src/protocol/proto_rival.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | const ID_LED_EFFECT: u8 = 0x07; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_LED` [INFO] [stdout] --> src/protocol/proto_rival.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_LED: u8 = 0x08; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | const ID_SAVE: u8 = 0x09; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival310.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival310.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival310.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival310.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival310.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MIN: u16 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival310.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MAX: u16 = 12000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival310.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival310.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival310.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_SAVE: u8 = 0x59; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival500.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival500.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival500.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival500.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival500.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MIN: u16 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival500.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MAX: u16 = 16000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival500.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival500.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_SIZE` [INFO] [stdout] --> src/protocol/proto_rival500.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const REPORT_SIZE: usize = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival500.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_SAVE: u8 = 0x09; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ColorMode` [INFO] [stdout] --> src/protocol/proto_rival500.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum ColorMode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 68 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 41.46s [INFO] running `Command { std: "docker" "inspect" "64fdf8ad1ac805d813a948120741e9305b5268e54ee2a77bf33d36763ae029b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "64fdf8ad1ac805d813a948120741e9305b5268e54ee2a77bf33d36763ae029b5", kill_on_drop: false }` [INFO] [stdout] 64fdf8ad1ac805d813a948120741e9305b5268e54ee2a77bf33d36763ae029b5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ef19b766d6ddab56e5b482eaeebaff9fc836ff68ee7d082a69e29062313a05c2 [INFO] running `Command { std: "docker" "start" "-a" "ef19b766d6ddab56e5b482eaeebaff9fc836ff68ee7d082a69e29062313a05c2", 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] [stderr] Compiling steelcfg v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `byteorder` [INFO] [stdout] --> src/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use byteorder; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 20 - if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stdout] 20 + if device_info.vendor_id == VID && device_info.product_id == PID { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/utils.rs:5:36 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size` [INFO] [stdout] --> src/utils.rs:9:39 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `led_index` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:42 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_led_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `colors` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:57 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_colors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `speed` [INFO] [stdout] --> src/protocol/proto_rival.rs:27:72 [INFO] [stdout] | [INFO] [stdout] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:18 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res_index` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:42 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_res_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dpi` [INFO] [stdout] --> src/protocol/proto_rival.rs:30:57 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_dpi` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:33:26 [INFO] [stdout] | [INFO] [stdout] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hz` [INFO] [stdout] --> src/protocol/proto_rival.rs:33:50 [INFO] [stdout] | [INFO] [stdout] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_hz` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `speed` [INFO] [stdout] --> src/protocol/proto_rival310.rs:26:72 [INFO] [stdout] | [INFO] [stdout] 26 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival310.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival310.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hid_device` [INFO] [stdout] --> src/protocol/proto_rival310.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | let res = hid_device.send_feature_report(&data).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:161:13 [INFO] [stdout] | [INFO] [stdout] 161 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/protocol/proto_rival500.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let res = hid_device.write(&buf).unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Type` [INFO] [stdout] --> src/devices.rs:2:10 [INFO] [stdout] | [INFO] [stdout] 2 | pub enum Type { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ReportType` [INFO] [stdout] --> src/devices.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum ReportType { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Command` [INFO] [stdout] --> src/devices.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Command { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Device` [INFO] [stdout] --> src/devices.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct Device { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `DEVICE` [INFO] [stdout] --> src/devices.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / pub static DEVICE : &'static [Device] = &[ [INFO] [stdout] 42 | | Device { [INFO] [stdout] 43 | | name: "SteelSeries Rival 700 (Experimental)", [INFO] [stdout] 44 | | vid: 0x1038, [INFO] [stdout] ... | [INFO] [stdout] 63 | | } [INFO] [stdout] 64 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ColorDepth` [INFO] [stdout] --> src/protocol/mod.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum ColorDepth { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `LedType` [INFO] [stdout] --> src/protocol/mod.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum LedType { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Led` [INFO] [stdout] --> src/protocol/mod.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Led { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `from_big_endian` [INFO] [stdout] --> src/utils.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `from_little_endian` [INFO] [stdout] --> src/utils.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `to_big_endian` [INFO] [stdout] --> src/utils.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn to_big_endian<'a>(num: u16) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const DPI_MIN: u16 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MAX: u16 = 6500; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MULTIPLIER` [INFO] [stdout] --> src/protocol/proto_rival.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MULTIPLIER: u8 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_SIZE` [INFO] [stdout] --> src/protocol/proto_rival.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const REPORT_SIZE: u8 = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_DPI` [INFO] [stdout] --> src/protocol/proto_rival.rs:18:1 [INFO] [stdout] | [INFO] [stdout] 18 | const ID_DPI: u8 = 0x03; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_REPORT_RATE` [INFO] [stdout] --> src/protocol/proto_rival.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | const ID_REPORT_RATE: u8 = 0x04; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_LED_EFFECT` [INFO] [stdout] --> src/protocol/proto_rival.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | const ID_LED_EFFECT: u8 = 0x07; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_LED` [INFO] [stdout] --> src/protocol/proto_rival.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_LED: u8 = 0x08; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | const ID_SAVE: u8 = 0x09; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival310.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival310.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival310.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival310.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival310.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MIN: u16 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival310.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MAX: u16 = 12000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival310.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival310.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival310.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_SAVE: u8 = 0x59; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_PROFILES` [INFO] [stdout] --> src/protocol/proto_rival500.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_BUTTONS` [INFO] [stdout] --> src/protocol/proto_rival500.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_DPI` [INFO] [stdout] --> src/protocol/proto_rival500.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | const NUM_DPI: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `NUM_LED` [INFO] [stdout] --> src/protocol/proto_rival500.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | const NUM_LED: u16 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MIN` [INFO] [stdout] --> src/protocol/proto_rival500.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | const DPI_MIN: u16 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `DPI_MAX` [INFO] [stdout] --> src/protocol/proto_rival500.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | const DPI_MAX: u16 = 16000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_1` [INFO] [stdout] --> src/protocol/proto_rival500.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_ID_2` [INFO] [stdout] --> src/protocol/proto_rival500.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `REPORT_SIZE` [INFO] [stdout] --> src/protocol/proto_rival500.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | const REPORT_SIZE: usize = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ID_SAVE` [INFO] [stdout] --> src/protocol/proto_rival500.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | const ID_SAVE: u8 = 0x09; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `ColorMode` [INFO] [stdout] --> src/protocol/proto_rival500.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum ColorMode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `testSignedNumeric` should have a snake case name [INFO] [stdout] --> src/main.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn testSignedNumeric() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_signed_numeric` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 69 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 3.06s [INFO] running `Command { std: "docker" "inspect" "ef19b766d6ddab56e5b482eaeebaff9fc836ff68ee7d082a69e29062313a05c2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef19b766d6ddab56e5b482eaeebaff9fc836ff68ee7d082a69e29062313a05c2", kill_on_drop: false }` [INFO] [stdout] ef19b766d6ddab56e5b482eaeebaff9fc836ff68ee7d082a69e29062313a05c2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-99/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] d6f5fb30a92e236f451a3f8981dbf5ff167688447f00284b5e18edef88a2e5db [INFO] running `Command { std: "docker" "start" "-a" "d6f5fb30a92e236f451a3f8981dbf5ff167688447f00284b5e18edef88a2e5db", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `byteorder` [INFO] [stderr] --> src/utils.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use byteorder; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 20 - if (device_info.vendor_id == VID && device_info.product_id == PID) { [INFO] [stderr] 20 + if device_info.vendor_id == VID && device_info.product_id == PID { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/utils.rs:5:36 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/utils.rs:9:39 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hid_device` [INFO] [stderr] --> src/protocol/proto_rival.rs:27:18 [INFO] [stderr] | [INFO] [stderr] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `led_index` [INFO] [stderr] --> src/protocol/proto_rival.rs:27:42 [INFO] [stderr] | [INFO] [stderr] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_led_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `colors` [INFO] [stderr] --> src/protocol/proto_rival.rs:27:57 [INFO] [stderr] | [INFO] [stderr] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_colors` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `speed` [INFO] [stderr] --> src/protocol/proto_rival.rs:27:72 [INFO] [stderr] | [INFO] [stderr] 27 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hid_device` [INFO] [stderr] --> src/protocol/proto_rival.rs:30:18 [INFO] [stderr] | [INFO] [stderr] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res_index` [INFO] [stderr] --> src/protocol/proto_rival.rs:30:42 [INFO] [stderr] | [INFO] [stderr] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_res_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `dpi` [INFO] [stderr] --> src/protocol/proto_rival.rs:30:57 [INFO] [stderr] | [INFO] [stderr] 30 | fn write_dpi(hid_device: &HidDevice, res_index: u8, dpi: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_dpi` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hid_device` [INFO] [stderr] --> src/protocol/proto_rival.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hz` [INFO] [stderr] --> src/protocol/proto_rival.rs:33:50 [INFO] [stderr] | [INFO] [stderr] 33 | fn write_report_rate(hid_device: &HidDevice, hz: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_hz` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hid_device` [INFO] [stderr] --> src/protocol/proto_rival.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `speed` [INFO] [stderr] --> src/protocol/proto_rival310.rs:26:72 [INFO] [stderr] | [INFO] [stderr] 26 | fn write_led(hid_device: &HidDevice, led_index: u8, colors: &[u8], speed: u16) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_speed` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival310.rs:71:13 [INFO] [stderr] | [INFO] [stderr] 71 | let res = hid_device.write(&buf).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival310.rs:80:13 [INFO] [stderr] | [INFO] [stderr] 80 | let res = hid_device.write(&buf).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hid_device` [INFO] [stderr] --> src/protocol/proto_rival310.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | fn save(hid_device: &HidDevice) -> Result<(), &'static str> { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hid_device` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival500.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | let res = hid_device.send_feature_report(&data).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival500.rs:161:13 [INFO] [stderr] | [INFO] [stderr] 161 | let res = hid_device.write(&buf).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival500.rs:187:13 [INFO] [stderr] | [INFO] [stderr] 187 | let res = hid_device.write(&buf).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `res` [INFO] [stderr] --> src/protocol/proto_rival500.rs:193:13 [INFO] [stderr] | [INFO] [stderr] 193 | let res = hid_device.write(&buf).unwrap(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `Type` [INFO] [stderr] --> src/devices.rs:2:10 [INFO] [stderr] | [INFO] [stderr] 2 | pub enum Type { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `ReportType` [INFO] [stderr] --> src/devices.rs:9:10 [INFO] [stderr] | [INFO] [stderr] 9 | pub enum ReportType { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Command` [INFO] [stderr] --> src/devices.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct Command { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Device` [INFO] [stderr] --> src/devices.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 27 | pub struct Device { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `DEVICE` [INFO] [stderr] --> src/devices.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | / pub static DEVICE : &'static [Device] = &[ [INFO] [stderr] 42 | | Device { [INFO] [stderr] 43 | | name: "SteelSeries Rival 700 (Experimental)", [INFO] [stderr] 44 | | vid: 0x1038, [INFO] [stderr] ... | [INFO] [stderr] 63 | | } [INFO] [stderr] 64 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `ColorDepth` [INFO] [stderr] --> src/protocol/mod.rs:7:10 [INFO] [stderr] | [INFO] [stderr] 7 | pub enum ColorDepth { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `LedType` [INFO] [stderr] --> src/protocol/mod.rs:10:10 [INFO] [stderr] | [INFO] [stderr] 10 | pub enum LedType { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Led` [INFO] [stderr] --> src/protocol/mod.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct Led { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_big_endian` [INFO] [stderr] --> src/utils.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn from_big_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_little_endian` [INFO] [stderr] --> src/utils.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn from_little_endian(arr: &[u8], size: u16) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `to_big_endian` [INFO] [stderr] --> src/utils.rs:13:8 [INFO] [stderr] | [INFO] [stderr] 13 | pub fn to_big_endian<'a>(num: u16) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_PROFILES` [INFO] [stderr] --> src/protocol/proto_rival.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | const NUM_PROFILES: u16 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_BUTTONS` [INFO] [stderr] --> src/protocol/proto_rival.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | const NUM_BUTTONS: u16 = 6; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_DPI` [INFO] [stderr] --> src/protocol/proto_rival.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const NUM_DPI: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_LED` [INFO] [stderr] --> src/protocol/proto_rival.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const NUM_LED: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MIN` [INFO] [stderr] --> src/protocol/proto_rival.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | const DPI_MIN: u16 = 50; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MAX` [INFO] [stderr] --> src/protocol/proto_rival.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | const DPI_MAX: u16 = 6500; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MULTIPLIER` [INFO] [stderr] --> src/protocol/proto_rival.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | const DPI_MULTIPLIER: u8 = 50; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_1` [INFO] [stderr] --> src/protocol/proto_rival.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_2` [INFO] [stderr] --> src/protocol/proto_rival.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_SIZE` [INFO] [stderr] --> src/protocol/proto_rival.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | const REPORT_SIZE: u8 = 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_DPI` [INFO] [stderr] --> src/protocol/proto_rival.rs:18:1 [INFO] [stderr] | [INFO] [stderr] 18 | const ID_DPI: u8 = 0x03; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_REPORT_RATE` [INFO] [stderr] --> src/protocol/proto_rival.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | const ID_REPORT_RATE: u8 = 0x04; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_LED_EFFECT` [INFO] [stderr] --> src/protocol/proto_rival.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | const ID_LED_EFFECT: u8 = 0x07; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_LED` [INFO] [stderr] --> src/protocol/proto_rival.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | const ID_LED: u8 = 0x08; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_SAVE` [INFO] [stderr] --> src/protocol/proto_rival.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | const ID_SAVE: u8 = 0x09; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_PROFILES` [INFO] [stderr] --> src/protocol/proto_rival310.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_BUTTONS` [INFO] [stderr] --> src/protocol/proto_rival310.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_DPI` [INFO] [stderr] --> src/protocol/proto_rival310.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const NUM_DPI: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_LED` [INFO] [stderr] --> src/protocol/proto_rival310.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | const NUM_LED: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MIN` [INFO] [stderr] --> src/protocol/proto_rival310.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | const DPI_MIN: u16 = 100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MAX` [INFO] [stderr] --> src/protocol/proto_rival310.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | const DPI_MAX: u16 = 12000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_1` [INFO] [stderr] --> src/protocol/proto_rival310.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_2` [INFO] [stderr] --> src/protocol/proto_rival310.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_SAVE` [INFO] [stderr] --> src/protocol/proto_rival310.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | const ID_SAVE: u8 = 0x59; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_PROFILES` [INFO] [stderr] --> src/protocol/proto_rival500.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | const NUM_PROFILES: u16 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_BUTTONS` [INFO] [stderr] --> src/protocol/proto_rival500.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const NUM_BUTTONS: u16 = 6; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_DPI` [INFO] [stderr] --> src/protocol/proto_rival500.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | const NUM_DPI: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `NUM_LED` [INFO] [stderr] --> src/protocol/proto_rival500.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | const NUM_LED: u16 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MIN` [INFO] [stderr] --> src/protocol/proto_rival500.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | const DPI_MIN: u16 = 100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `DPI_MAX` [INFO] [stderr] --> src/protocol/proto_rival500.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | const DPI_MAX: u16 = 16000; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_1` [INFO] [stderr] --> src/protocol/proto_rival500.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | const REPORT_ID_1: u8 = 0x01; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_ID_2` [INFO] [stderr] --> src/protocol/proto_rival500.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | const REPORT_ID_2: u8 = 0x02; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `REPORT_SIZE` [INFO] [stderr] --> src/protocol/proto_rival500.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | const REPORT_SIZE: usize = 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `ID_SAVE` [INFO] [stderr] --> src/protocol/proto_rival500.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | const ID_SAVE: u8 = 0x09; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `ColorMode` [INFO] [stderr] --> src/protocol/proto_rival500.rs:23:10 [INFO] [stderr] | [INFO] [stderr] 23 | pub enum ColorMode { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `testSignedNumeric` should have a snake case name [INFO] [stderr] --> src/main.rs:60:4 [INFO] [stderr] | [INFO] [stderr] 60 | fn testSignedNumeric() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_signed_numeric` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `steelcfg` (bin "steelcfg" test) generated 69 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/steelcfg-ec8400e76d409765) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test testSignedNumeric ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "d6f5fb30a92e236f451a3f8981dbf5ff167688447f00284b5e18edef88a2e5db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d6f5fb30a92e236f451a3f8981dbf5ff167688447f00284b5e18edef88a2e5db", kill_on_drop: false }` [INFO] [stdout] d6f5fb30a92e236f451a3f8981dbf5ff167688447f00284b5e18edef88a2e5db