[INFO] crate redpitaya-scpi 0.27.1 is already in cache [INFO] extracting crate redpitaya-scpi 0.27.1 into work/ex/clippy-test-run/sources/stable/reg/redpitaya-scpi/0.27.1 [INFO] extracting crate redpitaya-scpi 0.27.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/redpitaya-scpi/0.27.1 [INFO] validating manifest of redpitaya-scpi-0.27.1 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of redpitaya-scpi-0.27.1 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing redpitaya-scpi-0.27.1 [INFO] finished frobbing redpitaya-scpi-0.27.1 [INFO] frobbed toml for redpitaya-scpi-0.27.1 written to work/ex/clippy-test-run/sources/stable/reg/redpitaya-scpi/0.27.1/Cargo.toml [INFO] started frobbing redpitaya-scpi-0.27.1 [INFO] finished frobbing redpitaya-scpi-0.27.1 [INFO] frobbed toml for redpitaya-scpi-0.27.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/redpitaya-scpi/0.27.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting redpitaya-scpi-0.27.1 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/redpitaya-scpi/0.27.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 0a71b4d79247b433b18075cc7755bdd79a1a9c1cd0174c33d5a71a25506a4694 [INFO] running `"docker" "start" "-a" "0a71b4d79247b433b18075cc7755bdd79a1a9c1cd0174c33d5a71a25506a4694"` [INFO] [stderr] Checking redpitaya-scpi v0.27.1 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/acquire.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/analog.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/burst.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/data.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/digital.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/general.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/generator.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/trigger.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:35:23 [INFO] [stderr] | [INFO] [stderr] 35 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 36 | | &Gain::LV => "LV", [INFO] [stderr] 37 | | &Gain::HV => "HV", [INFO] [stderr] 38 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 35 | let display = match *self { [INFO] [stderr] 36 | Gain::LV => "LV", [INFO] [stderr] 37 | Gain::HV => "HV", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:63:23 [INFO] [stderr] | [INFO] [stderr] 63 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 64 | | &Source::IN1 => "IN 1", [INFO] [stderr] 65 | | &Source::IN2 => "IN 2", [INFO] [stderr] 66 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 63 | let display = match *self { [INFO] [stderr] 64 | Source::IN1 => "IN 1", [INFO] [stderr] 65 | Source::IN2 => "IN 2", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_1` should have a camel case name such as `Dec1` [INFO] [stderr] --> src/acquire.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | DEC_1, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_8` should have a camel case name such as `Dec8` [INFO] [stderr] --> src/acquire.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | DEC_8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_64` should have a camel case name such as `Dec64` [INFO] [stderr] --> src/acquire.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | DEC_64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_1024` should have a camel case name such as `Dec1024` [INFO] [stderr] --> src/acquire.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | DEC_1024, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_8192` should have a camel case name such as `Dec8192` [INFO] [stderr] --> src/acquire.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | DEC_8192, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_65536` should have a camel case name such as `Dec65536` [INFO] [stderr] --> src/acquire.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 79 | DEC_65536, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_125MHz` should have a camel case name such as `Rate125mhz` [INFO] [stderr] --> src/acquire.rs:128:5 [INFO] [stderr] | [INFO] [stderr] 128 | RATE_125MHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_15_6MHz` should have a camel case name such as `Rate15_6mhz` [INFO] [stderr] --> src/acquire.rs:129:5 [INFO] [stderr] | [INFO] [stderr] 129 | RATE_15_6MHz, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_1_9MHz` should have a camel case name such as `Rate1_9mhz` [INFO] [stderr] --> src/acquire.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | RATE_1_9MHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_103_8kHz` should have a camel case name such as `Rate103_8khz` [INFO] [stderr] --> src/acquire.rs:131:5 [INFO] [stderr] | [INFO] [stderr] 131 | RATE_103_8kHz, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_15_2kHz` should have a camel case name such as `Rate15_2khz` [INFO] [stderr] --> src/acquire.rs:132:5 [INFO] [stderr] | [INFO] [stderr] 132 | RATE_15_2kHz, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_1_9kHz` should have a camel case name such as `Rate1_9khz` [INFO] [stderr] --> src/acquire.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | RATE_1_9kHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:153:23 [INFO] [stderr] | [INFO] [stderr] 153 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 154 | | &SamplingRate::RATE_125MHz => "125 MHz", [INFO] [stderr] 155 | | &SamplingRate::RATE_15_6MHz => "15.6 MHz", [INFO] [stderr] 156 | | &SamplingRate::RATE_1_9MHz => "1.9 MHz", [INFO] [stderr] ... | [INFO] [stderr] 159 | | &SamplingRate::RATE_1_9kHz => "1.9 kHz", [INFO] [stderr] 160 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 153 | let display = match *self { [INFO] [stderr] 154 | SamplingRate::RATE_125MHz => "125 MHz", [INFO] [stderr] 155 | SamplingRate::RATE_15_6MHz => "15.6 MHz", [INFO] [stderr] 156 | SamplingRate::RATE_1_9MHz => "1.9 MHz", [INFO] [stderr] 157 | SamplingRate::RATE_103_8kHz => "103.8 kHz", [INFO] [stderr] 158 | SamplingRate::RATE_15_2kHz => "15.2 kHz", [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/data.rs:145:20 [INFO] [stderr] | [INFO] [stderr] 145 | .split(",") [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: variant `DIO0_N` should have a camel case name such as `Dio0N` [INFO] [stderr] --> src/digital.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | DIO0_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO0_P` should have a camel case name such as `Dio0P` [INFO] [stderr] --> src/digital.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | DIO0_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO1_N` should have a camel case name such as `Dio1N` [INFO] [stderr] --> src/digital.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | DIO1_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO1_P` should have a camel case name such as `Dio1P` [INFO] [stderr] --> src/digital.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | DIO1_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO2_N` should have a camel case name such as `Dio2N` [INFO] [stderr] --> src/digital.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | DIO2_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO2_P` should have a camel case name such as `Dio2P` [INFO] [stderr] --> src/digital.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | DIO2_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO3_N` should have a camel case name such as `Dio3N` [INFO] [stderr] --> src/digital.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | DIO3_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO3_P` should have a camel case name such as `Dio3P` [INFO] [stderr] --> src/digital.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | DIO3_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO4_N` should have a camel case name such as `Dio4N` [INFO] [stderr] --> src/digital.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | DIO4_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO4_P` should have a camel case name such as `Dio4P` [INFO] [stderr] --> src/digital.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | DIO4_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO5_N` should have a camel case name such as `Dio5N` [INFO] [stderr] --> src/digital.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | DIO5_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO5_P` should have a camel case name such as `Dio5P` [INFO] [stderr] --> src/digital.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | DIO5_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO6_N` should have a camel case name such as `Dio6N` [INFO] [stderr] --> src/digital.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | DIO6_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO6_P` should have a camel case name such as `Dio6P` [INFO] [stderr] --> src/digital.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | DIO6_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO7_N` should have a camel case name such as `Dio7N` [INFO] [stderr] --> src/digital.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | DIO7_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO7_P` should have a camel case name such as `Dio7P` [INFO] [stderr] --> src/digital.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | DIO7_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_PE` should have a camel case name such as `ExtPe` [INFO] [stderr] --> src/generator.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | EXT_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_NE` should have a camel case name such as `ExtNe` [INFO] [stderr] --> src/generator.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | EXT_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/generator.rs:88:23 [INFO] [stderr] | [INFO] [stderr] 88 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 89 | | &Form::SINE => "Sine", [INFO] [stderr] 90 | | &Form::SQUARE => "Square", [INFO] [stderr] 91 | | &Form::TRIANGLE => "Triangle", [INFO] [stderr] ... | [INFO] [stderr] 96 | | &Form::ARBITRARY => "Arbitrary", [INFO] [stderr] 97 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 88 | let display = match *self { [INFO] [stderr] 89 | Form::SINE => "Sine", [INFO] [stderr] 90 | Form::SQUARE => "Square", [INFO] [stderr] 91 | Form::TRIANGLE => "Triangle", [INFO] [stderr] 92 | Form::SAWU => "SAWU", [INFO] [stderr] 93 | Form::SAWD => "SAWD", [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/generator.rs:132:23 [INFO] [stderr] | [INFO] [stderr] 132 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 133 | | &Source::OUT1 => "OUT 1", [INFO] [stderr] 134 | | &Source::OUT2 => "OUT 2", [INFO] [stderr] 135 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 132 | let display = match *self { [INFO] [stderr] 133 | Source::OUT1 => "OUT 1", [INFO] [stderr] 134 | Source::OUT2 => "OUT 2", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/generator.rs:169:33 [INFO] [stderr] | [INFO] [stderr] 169 | fn set_state(&self, source: &Source, state: &str) { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `Source` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/acquire.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/analog.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/burst.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/data.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/digital.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/general.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/generator.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Module` [INFO] [stderr] --> src/trigger.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use Module; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/generator.rs:309:20 [INFO] [stderr] | [INFO] [stderr] 309 | .split(",") [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: variant `CH1_PE` should have a camel case name such as `Ch1Pe` [INFO] [stderr] --> src/trigger.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | CH1_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH1_NE` should have a camel case name such as `Ch1Ne` [INFO] [stderr] --> src/trigger.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | CH1_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH2_PE` should have a camel case name such as `Ch2Pe` [INFO] [stderr] --> src/trigger.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | CH2_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH2_NE` should have a camel case name such as `Ch2Ne` [INFO] [stderr] --> src/trigger.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | CH2_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_PE` should have a camel case name such as `ExtPe` [INFO] [stderr] --> src/trigger.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | EXT_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_NE` should have a camel case name such as `ExtNe` [INFO] [stderr] --> src/trigger.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | EXT_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `AWG_PE` should have a camel case name such as `AwgPe` [INFO] [stderr] --> src/trigger.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | AWG_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `AWG_NE` should have a camel case name such as `AwgNe` [INFO] [stderr] --> src/trigger.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | AWG_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/socket.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | Err(_) => panic!("Unable to connect"), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_wild_err_arm)] on by default [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/socket.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | / stream.write(message.as_bytes()) [INFO] [stderr] 28 | | .unwrap(); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/socket.rs:30:29 [INFO] [stderr] | [INFO] [stderr] 30 | if message.contains("?") { [INFO] [stderr] | ^^^ help: try using a char instead: `'?'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `redpitaya-scpi`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:35:23 [INFO] [stderr] | [INFO] [stderr] 35 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 36 | | &Gain::LV => "LV", [INFO] [stderr] 37 | | &Gain::HV => "HV", [INFO] [stderr] 38 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 35 | let display = match *self { [INFO] [stderr] 36 | Gain::LV => "LV", [INFO] [stderr] 37 | Gain::HV => "HV", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:63:23 [INFO] [stderr] | [INFO] [stderr] 63 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 64 | | &Source::IN1 => "IN 1", [INFO] [stderr] 65 | | &Source::IN2 => "IN 2", [INFO] [stderr] 66 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 63 | let display = match *self { [INFO] [stderr] 64 | Source::IN1 => "IN 1", [INFO] [stderr] 65 | Source::IN2 => "IN 2", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_1` should have a camel case name such as `Dec1` [INFO] [stderr] --> src/acquire.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | DEC_1, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_camel_case_types)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_8` should have a camel case name such as `Dec8` [INFO] [stderr] --> src/acquire.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | DEC_8, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_64` should have a camel case name such as `Dec64` [INFO] [stderr] --> src/acquire.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | DEC_64, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_1024` should have a camel case name such as `Dec1024` [INFO] [stderr] --> src/acquire.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | DEC_1024, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_8192` should have a camel case name such as `Dec8192` [INFO] [stderr] --> src/acquire.rs:78:5 [INFO] [stderr] | [INFO] [stderr] 78 | DEC_8192, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DEC_65536` should have a camel case name such as `Dec65536` [INFO] [stderr] --> src/acquire.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 79 | DEC_65536, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_125MHz` should have a camel case name such as `Rate125mhz` [INFO] [stderr] --> src/acquire.rs:128:5 [INFO] [stderr] | [INFO] [stderr] 128 | RATE_125MHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_15_6MHz` should have a camel case name such as `Rate15_6mhz` [INFO] [stderr] --> src/acquire.rs:129:5 [INFO] [stderr] | [INFO] [stderr] 129 | RATE_15_6MHz, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_1_9MHz` should have a camel case name such as `Rate1_9mhz` [INFO] [stderr] --> src/acquire.rs:130:5 [INFO] [stderr] | [INFO] [stderr] 130 | RATE_1_9MHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_103_8kHz` should have a camel case name such as `Rate103_8khz` [INFO] [stderr] --> src/acquire.rs:131:5 [INFO] [stderr] | [INFO] [stderr] 131 | RATE_103_8kHz, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_15_2kHz` should have a camel case name such as `Rate15_2khz` [INFO] [stderr] --> src/acquire.rs:132:5 [INFO] [stderr] | [INFO] [stderr] 132 | RATE_15_2kHz, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RATE_1_9kHz` should have a camel case name such as `Rate1_9khz` [INFO] [stderr] --> src/acquire.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | RATE_1_9kHz, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/acquire.rs:153:23 [INFO] [stderr] | [INFO] [stderr] 153 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 154 | | &SamplingRate::RATE_125MHz => "125 MHz", [INFO] [stderr] 155 | | &SamplingRate::RATE_15_6MHz => "15.6 MHz", [INFO] [stderr] 156 | | &SamplingRate::RATE_1_9MHz => "1.9 MHz", [INFO] [stderr] ... | [INFO] [stderr] 159 | | &SamplingRate::RATE_1_9kHz => "1.9 kHz", [INFO] [stderr] 160 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 153 | let display = match *self { [INFO] [stderr] 154 | SamplingRate::RATE_125MHz => "125 MHz", [INFO] [stderr] 155 | SamplingRate::RATE_15_6MHz => "15.6 MHz", [INFO] [stderr] 156 | SamplingRate::RATE_1_9MHz => "1.9 MHz", [INFO] [stderr] 157 | SamplingRate::RATE_103_8kHz => "103.8 kHz", [INFO] [stderr] 158 | SamplingRate::RATE_15_2kHz => "15.2 kHz", [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/data.rs:145:20 [INFO] [stderr] | [INFO] [stderr] 145 | .split(",") [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/data.rs:274:17 [INFO] [stderr] | [INFO] [stderr] 274 | assert!(vec.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!vec.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/data.rs:287:17 [INFO] [stderr] | [INFO] [stderr] 287 | assert!(vec.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!vec.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/data.rs:300:17 [INFO] [stderr] | [INFO] [stderr] 300 | assert!(vec.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!vec.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: variant `DIO0_N` should have a camel case name such as `Dio0N` [INFO] [stderr] --> src/digital.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | DIO0_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO0_P` should have a camel case name such as `Dio0P` [INFO] [stderr] --> src/digital.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | DIO0_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO1_N` should have a camel case name such as `Dio1N` [INFO] [stderr] --> src/digital.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | DIO1_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO1_P` should have a camel case name such as `Dio1P` [INFO] [stderr] --> src/digital.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | DIO1_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO2_N` should have a camel case name such as `Dio2N` [INFO] [stderr] --> src/digital.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | DIO2_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO2_P` should have a camel case name such as `Dio2P` [INFO] [stderr] --> src/digital.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | DIO2_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO3_N` should have a camel case name such as `Dio3N` [INFO] [stderr] --> src/digital.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | DIO3_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO3_P` should have a camel case name such as `Dio3P` [INFO] [stderr] --> src/digital.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | DIO3_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO4_N` should have a camel case name such as `Dio4N` [INFO] [stderr] --> src/digital.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | DIO4_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO4_P` should have a camel case name such as `Dio4P` [INFO] [stderr] --> src/digital.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | DIO4_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO5_N` should have a camel case name such as `Dio5N` [INFO] [stderr] --> src/digital.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | DIO5_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO5_P` should have a camel case name such as `Dio5P` [INFO] [stderr] --> src/digital.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | DIO5_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO6_N` should have a camel case name such as `Dio6N` [INFO] [stderr] --> src/digital.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | DIO6_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO6_P` should have a camel case name such as `Dio6P` [INFO] [stderr] --> src/digital.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | DIO6_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO7_N` should have a camel case name such as `Dio7N` [INFO] [stderr] --> src/digital.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | DIO7_N, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `DIO7_P` should have a camel case name such as `Dio7P` [INFO] [stderr] --> src/digital.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | DIO7_P, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_PE` should have a camel case name such as `ExtPe` [INFO] [stderr] --> src/generator.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | EXT_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_NE` should have a camel case name such as `ExtNe` [INFO] [stderr] --> src/generator.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | EXT_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/generator.rs:88:23 [INFO] [stderr] | [INFO] [stderr] 88 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 89 | | &Form::SINE => "Sine", [INFO] [stderr] 90 | | &Form::SQUARE => "Square", [INFO] [stderr] 91 | | &Form::TRIANGLE => "Triangle", [INFO] [stderr] ... | [INFO] [stderr] 96 | | &Form::ARBITRARY => "Arbitrary", [INFO] [stderr] 97 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 88 | let display = match *self { [INFO] [stderr] 89 | Form::SINE => "Sine", [INFO] [stderr] 90 | Form::SQUARE => "Square", [INFO] [stderr] 91 | Form::TRIANGLE => "Triangle", [INFO] [stderr] 92 | Form::SAWU => "SAWU", [INFO] [stderr] 93 | Form::SAWD => "SAWD", [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/generator.rs:132:23 [INFO] [stderr] | [INFO] [stderr] 132 | let display = match self { [INFO] [stderr] | _______________________^ [INFO] [stderr] 133 | | &Source::OUT1 => "OUT 1", [INFO] [stderr] 134 | | &Source::OUT2 => "OUT 2", [INFO] [stderr] 135 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 132 | let display = match *self { [INFO] [stderr] 133 | Source::OUT1 => "OUT 1", [INFO] [stderr] 134 | Source::OUT2 => "OUT 2", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/generator.rs:169:33 [INFO] [stderr] | [INFO] [stderr] 169 | fn set_state(&self, source: &Source, state: &str) { [INFO] [stderr] | ^^^^^^^ help: consider passing by value instead: `Source` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/generator.rs:309:20 [INFO] [stderr] | [INFO] [stderr] 309 | .split(",") [INFO] [stderr] | ^^^ help: try using a char instead: `','` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/generator.rs:445:17 [INFO] [stderr] | [INFO] [stderr] 445 | assert!(rp.generator.get_arbitrary_waveform(::generator::Source::OUT1).len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!rp.generator.get_arbitrary_waveform(::generator::Source::OUT1).is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: variant `CH1_PE` should have a camel case name such as `Ch1Pe` [INFO] [stderr] --> src/trigger.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | CH1_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH1_NE` should have a camel case name such as `Ch1Ne` [INFO] [stderr] --> src/trigger.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | CH1_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH2_PE` should have a camel case name such as `Ch2Pe` [INFO] [stderr] --> src/trigger.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | CH2_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `CH2_NE` should have a camel case name such as `Ch2Ne` [INFO] [stderr] --> src/trigger.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | CH2_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_PE` should have a camel case name such as `ExtPe` [INFO] [stderr] --> src/trigger.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | EXT_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `EXT_NE` should have a camel case name such as `ExtNe` [INFO] [stderr] --> src/trigger.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | EXT_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `AWG_PE` should have a camel case name such as `AwgPe` [INFO] [stderr] --> src/trigger.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | AWG_PE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `AWG_NE` should have a camel case name such as `AwgNe` [INFO] [stderr] --> src/trigger.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | AWG_NE, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Err(_) will match all errors, maybe not a good idea [INFO] [stderr] --> src/socket.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | Err(_) => panic!("Unable to connect"), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_wild_err_arm)] on by default [INFO] [stderr] = note: to remove this warning, match each error separately or use unreachable macro [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_wild_err_arm [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/socket.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | / stream.write(message.as_bytes()) [INFO] [stderr] 28 | | .unwrap(); [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/socket.rs:30:29 [INFO] [stderr] | [INFO] [stderr] 30 | if message.contains("?") { [INFO] [stderr] | ^^^ help: try using a char instead: `'?'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/lib.rs:67:54 [INFO] [stderr] | [INFO] [stderr] 67 | let listener = ::std::net::TcpListener::bind(format!("{}", addr)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `addr.to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/lib.rs:128:13 [INFO] [stderr] | [INFO] [stderr] 128 | / stream.read(&mut buffer[..]) [INFO] [stderr] 129 | | .unwrap(); [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/lib.rs:132:29 [INFO] [stderr] | [INFO] [stderr] 132 | if buffer[0] == ('\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::char_lit_as_u8)] on by default [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/lib.rs:136:25 [INFO] [stderr] | [INFO] [stderr] 136 | stream.write(response.as_bytes()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `redpitaya-scpi`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "0a71b4d79247b433b18075cc7755bdd79a1a9c1cd0174c33d5a71a25506a4694"` [INFO] running `"docker" "rm" "-f" "0a71b4d79247b433b18075cc7755bdd79a1a9c1cd0174c33d5a71a25506a4694"` [INFO] [stdout] 0a71b4d79247b433b18075cc7755bdd79a1a9c1cd0174c33d5a71a25506a4694