[INFO] updating cached repository angelcam/arrow-client [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/angelcam/arrow-client [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/angelcam/arrow-client" "work/ex/clippy-test-run/sources/stable/gh/angelcam/arrow-client"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/angelcam/arrow-client'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/angelcam/arrow-client" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angelcam/arrow-client"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angelcam/arrow-client'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 239414dc09763a20cd0cb019b9a54f538689e7b5 [INFO] sha for GitHub repo angelcam/arrow-client: 239414dc09763a20cd0cb019b9a54f538689e7b5 [INFO] validating manifest of angelcam/arrow-client 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 angelcam/arrow-client 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 angelcam/arrow-client [INFO] finished frobbing angelcam/arrow-client [INFO] frobbed toml for angelcam/arrow-client written to work/ex/clippy-test-run/sources/stable/gh/angelcam/arrow-client/Cargo.toml [INFO] started frobbing angelcam/arrow-client [INFO] finished frobbing angelcam/arrow-client [INFO] frobbed toml for angelcam/arrow-client written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/angelcam/arrow-client/Cargo.toml [INFO] crate angelcam/arrow-client has a lockfile. skipping [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 angelcam/arrow-client against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/angelcam/arrow-client:/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] 622baea609596c608c673608acf8d3416d3e5433c32a584577a31c0435467e33 [INFO] running `"docker" "start" "-a" "622baea609596c608c673608acf8d3416d3e5433c32a584577a31c0435467e33"` [INFO] [stderr] Checking farmhash v1.1.5 [INFO] [stderr] Compiling arrow-client v0.8.0 (/opt/crater/workdir) [INFO] [stderr] Checking mio v0.6.14 [INFO] [stderr] Checking tokio-io v0.1.6 [INFO] [stderr] Checking tokio-threadpool v0.1.4 [INFO] [stderr] Checking tokio-fs v0.1.0 [INFO] [stderr] Checking tokio-reactor v0.1.1 [INFO] [stderr] Checking tokio-tcp v0.1.0 [INFO] [stderr] Checking tokio-udp v0.1.0 [INFO] [stderr] Checking tokio v0.1.7 [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/futures_ex/pipe.rs:37:9 [INFO] [stderr] | [INFO] [stderr] 37 | sink: sink, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `sink` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/json.rs:44:22 [INFO] [stderr] | [INFO] [stderr] 44 | ParseError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:131:9 [INFO] [stderr] | [INFO] [stderr] 131 | file: file, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `file` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | limit: limit, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | rotations: rotations [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `rotations` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/mod.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | logger: logger [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/string/reader.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | input: input, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `input` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/string/reader.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | current: current, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `current` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/mod.rs:74:24 [INFO] [stderr] | [INFO] [stderr] 74 | RuntimeError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/net/raw/ether/mod.rs:62:44 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(a: u8, b: u8, c: u8, d: u8, e: u8, f: u8) -> MacAddr { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/net/raw/ether/mod.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(a: u8, b: u8, c: u8, d: u8, e: u8, f: u8) -> MacAddr { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 55 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:112:13 [INFO] [stderr] | [INFO] [stderr] 112 | msg: msg [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:174:13 [INFO] [stderr] | [INFO] [stderr] 174 | msg: msg [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/error.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | msg: msg [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/ack.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | err: err, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `err` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/hup.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | error_code: error_code [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `error_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | uuid: uuid, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | host: host, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `host` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | hosts: hosts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | request_id: request_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `request_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:89:13 [INFO] [stderr] | [INFO] [stderr] 89 | host_table: host_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `host_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | request_id: request_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `request_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | status_flags: status_flags, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `status_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | active_sessions: active_sessions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `active_sessions` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | id: id, [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | service: service, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `service` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:142:13 [INFO] [stderr] | [INFO] [stderr] 142 | map: map, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/update.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | svc_table: svc_table [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | msg_id: msg_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `msg_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:141:13 [INFO] [stderr] | [INFO] [stderr] 141 | msg_type: msg_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:409:17 [INFO] [stderr] | [INFO] [stderr] 409 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:410:17 [INFO] [stderr] | [INFO] [stderr] 410 | body: body, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | service: service, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `service` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | size: size [INFO] [stderr] | ^^^^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:185:17 [INFO] [stderr] | [INFO] [stderr] 185 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:186:17 [INFO] [stderr] | [INFO] [stderr] 186 | payload: payload, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | service_id: service_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `service_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | session_id: session_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `session_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:387:13 [INFO] [stderr] | [INFO] [stderr] 387 | cmsg_factory: cmsg_factory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_factory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | message_id: message_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `message_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:152:13 [INFO] [stderr] | [INFO] [stderr] 152 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | cmd_channel: cmd_channel, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_channel` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | cmsg_factory: cmsg_factory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_factory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:589:13 [INFO] [stderr] | [INFO] [stderr] 589 | context: context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:116:23 [INFO] [stderr] | [INFO] [stderr] 116 | ConfigError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:284:13 [INFO] [stderr] | [INFO] [stderr] 284 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:728:13 [INFO] [stderr] | [INFO] [stderr] 728 | uuid: uuid, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:729:13 [INFO] [stderr] | [INFO] [stderr] 729 | passwd: passwd, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `passwd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:730:13 [INFO] [stderr] | [INFO] [stderr] 730 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:731:13 [INFO] [stderr] | [INFO] [stderr] 731 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/config.rs:974:9 [INFO] [stderr] | [INFO] [stderr] 974 | let e = ((segments[7] >> 8) & 0xff) as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/config.rs:975:9 [INFO] [stderr] | [INFO] [stderr] 975 | let f = ( segments[7] & 0xff) as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/config.rs:1237:9 [INFO] [stderr] | [INFO] [stderr] 1237 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/context.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `config` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | tx: tx, [INFO] [stderr] | ^^^^^^ help: replace it with: `tx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | cmd_sender: cmd_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | mac: mac, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mac` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | ip: ip, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `ip` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/mod.rs:181:13 [INFO] [stderr] | [INFO] [stderr] 181 | host_iterator: host_iterator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `host_iterator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/mod.rs:182:13 [INFO] [stderr] | [INFO] [stderr] 182 | saddr_iterator: saddr_iterator [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `saddr_iterator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/service.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | path: path, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/service.rs:171:13 [INFO] [stderr] | [INFO] [stderr] 171 | path: path, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | id: id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:159:13 [INFO] [stderr] | [INFO] [stderr] 159 | enabled: enabled, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `enabled` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:315:13 [INFO] [stderr] | [INFO] [stderr] 315 | id: id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:318:13 [INFO] [stderr] | [INFO] [stderr] 318 | last_seen: last_seen, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `last_seen` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:319:13 [INFO] [stderr] | [INFO] [stderr] 319 | active: active, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `active` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:352:13 [INFO] [stderr] | [INFO] [stderr] 352 | identifier_map: identifier_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `identifier_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:353:13 [INFO] [stderr] | [INFO] [stderr] 353 | service_map: service_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `service_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] --> src/futures_ex/pipe.rs:37:9 [INFO] [stderr] | [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:119:13 [INFO] [stderr] | [INFO] [stderr] 119 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | cmd_channel: cmd_channel, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_channel` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | pairing_mode_timeout: pairing_mode_timeout, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `pairing_mode_timeout` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | diagnostic_mode: diagnostic_mode, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diagnostic_mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] 37 | sink: sink, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `sink` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/json.rs:44:22 [INFO] [stderr] | [INFO] [stderr] 44 | ParseError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:131:9 [INFO] [stderr] | [INFO] [stderr] 131 | file: file, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `file` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:133:9 [INFO] [stderr] | [INFO] [stderr] 133 | limit: limit, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `limit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/file.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | rotations: rotations [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `rotations` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/logger/mod.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | logger: logger [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/string/reader.rs:69:13 [INFO] [stderr] | [INFO] [stderr] 69 | input: input, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `input` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/string/reader.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | current: current, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `current` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/utils/mod.rs:74:24 [INFO] [stderr] | [INFO] [stderr] 74 | RuntimeError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/net/raw/ether/mod.rs:62:44 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(a: u8, b: u8, c: u8, d: u8, e: u8, f: u8) -> MacAddr { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::many_single_char_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/net/raw/ether/mod.rs:62:51 [INFO] [stderr] | [INFO] [stderr] 62 | pub fn new(a: u8, b: u8, c: u8, d: u8, e: u8, f: u8) -> MacAddr { [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 55 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:112:13 [INFO] [stderr] | [INFO] [stderr] 112 | msg: msg [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/error.rs:174:13 [INFO] [stderr] | [INFO] [stderr] 174 | msg: msg [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/error.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | msg: msg [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/ack.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | err: err, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `err` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/hup.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | error_code: error_code [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `error_code` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | uuid: uuid, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/register.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | host: host, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `host` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | hosts: hosts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `hosts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:88:13 [INFO] [stderr] | [INFO] [stderr] 88 | request_id: request_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `request_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:89:13 [INFO] [stderr] | [INFO] [stderr] 89 | host_table: host_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `host_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:90:13 [INFO] [stderr] | [INFO] [stderr] 90 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:44:13 [INFO] [stderr] | [INFO] [stderr] 44 | request_id: request_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `request_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | status_flags: status_flags, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `status_flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:46:13 [INFO] [stderr] | [INFO] [stderr] 46 | active_sessions: active_sessions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `active_sessions` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | id: id, [INFO] [stderr] | ^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | service: service, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `service` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/svc_table.rs:142:13 [INFO] [stderr] | [INFO] [stderr] 142 | map: map, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/update.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | svc_table: svc_table [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | msg_id: msg_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `msg_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:141:13 [INFO] [stderr] | [INFO] [stderr] 141 | msg_type: msg_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:409:17 [INFO] [stderr] | [INFO] [stderr] 409 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:410:17 [INFO] [stderr] | [INFO] [stderr] 410 | body: body, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:64:13 [INFO] [stderr] | [INFO] [stderr] 64 | service: service, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `service` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | size: size [INFO] [stderr] | ^^^^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:185:17 [INFO] [stderr] | [INFO] [stderr] 185 | header: header, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `header` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/proto/msg/mod.rs:186:17 [INFO] [stderr] | [INFO] [stderr] 186 | payload: payload, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `payload` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | service_id: service_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `service_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | session_id: session_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `session_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/session.rs:387:13 [INFO] [stderr] | [INFO] [stderr] 387 | cmsg_factory: cmsg_factory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_factory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | message_id: message_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `message_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:152:13 [INFO] [stderr] | [INFO] [stderr] 152 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | cmd_channel: cmd_channel, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_channel` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:155:13 [INFO] [stderr] | [INFO] [stderr] 155 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | cmsg_factory: cmsg_factory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_factory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/net/arrow/mod.rs:589:13 [INFO] [stderr] | [INFO] [stderr] 589 | context: context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:116:23 [INFO] [stderr] | [INFO] [stderr] 116 | ConfigError { msg: msg } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:284:13 [INFO] [stderr] | [INFO] [stderr] 284 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:728:13 [INFO] [stderr] | [INFO] [stderr] 728 | uuid: uuid, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: replace it with: `uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:729:13 [INFO] [stderr] | [INFO] [stderr] 729 | passwd: passwd, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `passwd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:730:13 [INFO] [stderr] | [INFO] [stderr] 730 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `version` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:731:13 [INFO] [stderr] | [INFO] [stderr] 731 | svc_table: svc_table, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `svc_table` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: 5th binding whose name is just one char [INFO] [stderr] --> src/config.rs:974:9 [INFO] [stderr] | [INFO] [stderr] 974 | let e = ((segments[7] >> 8) & 0xff) as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: 6th binding whose name is just one char [INFO] [stderr] --> src/config.rs:975:9 [INFO] [stderr] | [INFO] [stderr] 975 | let f = ( segments[7] & 0xff) as u8; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#many_single_char_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/config.rs:1237:9 [INFO] [stderr] | [INFO] [stderr] 1237 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/context.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `config` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | tx: tx, [INFO] [stderr] | ^^^^^^ help: replace it with: `tx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/cmd_handler.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | cmd_sender: cmd_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:38:13 [INFO] [stderr] | [INFO] [stderr] 38 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | mac: mac, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mac` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/host.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | ip: ip, [INFO] [stderr] | ^^^^^^^^^ help: replace it with: `ip` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/mod.rs:181:13 [INFO] [stderr] | [INFO] [stderr] 181 | host_iterator: host_iterator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `host_iterator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/scanner/result/mod.rs:182:13 [INFO] [stderr] | [INFO] [stderr] 182 | saddr_iterator: saddr_iterator [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `saddr_iterator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/service.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | path: path, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/service.rs:171:13 [INFO] [stderr] | [INFO] [stderr] 171 | path: path, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `path` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:156:13 [INFO] [stderr] | [INFO] [stderr] 156 | id: id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:159:13 [INFO] [stderr] | [INFO] [stderr] 159 | enabled: enabled, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `enabled` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:315:13 [INFO] [stderr] | [INFO] [stderr] 315 | id: id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:318:13 [INFO] [stderr] | [INFO] [stderr] 318 | last_seen: last_seen, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `last_seen` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:319:13 [INFO] [stderr] | [INFO] [stderr] 319 | active: active, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `active` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:352:13 [INFO] [stderr] | [INFO] [stderr] 352 | identifier_map: identifier_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `identifier_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/svc_table/mod.rs:353:13 [INFO] [stderr] | [INFO] [stderr] 353 | service_map: service_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `service_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:119:13 [INFO] [stderr] | [INFO] [stderr] 119 | app_context: app_context, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `app_context` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:120:13 [INFO] [stderr] | [INFO] [stderr] 120 | cmd_channel: cmd_channel, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmd_channel` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | pairing_mode_timeout: pairing_mode_timeout, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `pairing_mode_timeout` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/main.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | diagnostic_mode: diagnostic_mode, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `diagnostic_mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:26:35 [INFO] [stderr] | [INFO] [stderr] 26 | pub const STATUS_FLAG_SCAN: u32 = 0x00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:64:50 [INFO] [stderr] | [INFO] [stderr] 64 | pub const EC_NO_ERROR: u32 = 0x00000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:65:50 [INFO] [stderr] | [INFO] [stderr] 65 | pub const EC_UNSUPPORTED_PROTOCOL_VERSION: u32 = 0x00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0001` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:66:50 [INFO] [stderr] | [INFO] [stderr] 66 | pub const EC_UNAUTHORIZED: u32 = 0x00000002; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0002` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:67:50 [INFO] [stderr] | [INFO] [stderr] 67 | pub const EC_CONNECTION_ERROR: u32 = 0x00000003; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0003` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:68:50 [INFO] [stderr] | [INFO] [stderr] 68 | pub const EC_INTERNAL_SERVER_ERROR: u32 = 0xffffffff; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xffff_ffff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:73:21 [INFO] [stderr] | [INFO] [stderr] 73 | const CONFIG_FILE: &'static str = "/etc/arrow/config.json"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:76:30 [INFO] [stderr] | [INFO] [stderr] 76 | const CONFIG_FILE_SKELETON: &'static str = "/etc/arrow/config-skel.json"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:79:20 [INFO] [stderr] | [INFO] [stderr] 79 | const STATE_FILE: &'static str = "/var/lib/arrow/state"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:83:25 [INFO] [stderr] | [INFO] [stderr] 83 | const RTSP_PATHS_FILE: &'static str = "/etc/arrow/rtsp-paths"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:87:26 [INFO] [stderr] | [INFO] [stderr] 87 | const MJPEG_PATHS_FILE: &'static str = "/etc/arrow/mjpeg-paths"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:93:25 [INFO] [stderr] | [INFO] [stderr] 93 | const SSL_CIPHER_LIST: &'static str = "HIGH:!aNULL:!kRSA:!PSK:!MD5:!RC4"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/status.rs:26:35 [INFO] [stderr] | [INFO] [stderr] 26 | pub const STATUS_FLAG_SCAN: u32 = 0x00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0001` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:64:50 [INFO] [stderr] | [INFO] [stderr] 64 | pub const EC_NO_ERROR: u32 = 0x00000000; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:65:50 [INFO] [stderr] | [INFO] [stderr] 65 | pub const EC_UNSUPPORTED_PROTOCOL_VERSION: u32 = 0x00000001; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0001` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:66:50 [INFO] [stderr] | [INFO] [stderr] 66 | pub const EC_UNAUTHORIZED: u32 = 0x00000002; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0002` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:67:50 [INFO] [stderr] | [INFO] [stderr] 67 | pub const EC_CONNECTION_ERROR: u32 = 0x00000003; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x0000_0003` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:68:50 [INFO] [stderr] | [INFO] [stderr] 68 | pub const EC_INTERNAL_SERVER_ERROR: u32 = 0xffffffff; [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xffff_ffff` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/net/utils.rs:156:20 [INFO] [stderr] | [INFO] [stderr] 156 | assert_eq!(0xc0a80205, addr.as_u32()); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0xc0a8_0205` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:73:21 [INFO] [stderr] | [INFO] [stderr] 73 | const CONFIG_FILE: &'static str = "/etc/arrow/config.json"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:76:30 [INFO] [stderr] | [INFO] [stderr] 76 | const CONFIG_FILE_SKELETON: &'static str = "/etc/arrow/config-skel.json"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:79:20 [INFO] [stderr] | [INFO] [stderr] 79 | const STATE_FILE: &'static str = "/var/lib/arrow/state"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:83:25 [INFO] [stderr] | [INFO] [stderr] 83 | const RTSP_PATHS_FILE: &'static str = "/etc/arrow/rtsp-paths"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:87:26 [INFO] [stderr] | [INFO] [stderr] 87 | const MJPEG_PATHS_FILE: &'static str = "/etc/arrow/mjpeg-paths"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:93:25 [INFO] [stderr] | [INFO] [stderr] 93 | const SSL_CIPHER_LIST: &'static str = "HIGH:!aNULL:!kRSA:!PSK:!MD5:!RC4"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:82:14 [INFO] [stderr] | [INFO] [stderr] 82 | .ok_or(ParseError::from("input is empty"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("input is empty"))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:94:14 [INFO] [stderr] | [INFO] [stderr] 94 | .ok_or(ParseError::from("input is empty"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("input is empty"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:178:14 [INFO] [stderr] | [INFO] [stderr] 178 | .unwrap_or(rest.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| rest.len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `is_*` usually take self by reference or no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/utils/string/reader.rs:200:21 [INFO] [stderr] | [INFO] [stderr] 200 | pub fn is_empty(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/utils/mod.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | / pub fn as_bytes<'a, T: Sized>(val: &'a T) -> &'a [u8] { [INFO] [stderr] 86 | | let ptr = val as *const T; [INFO] [stderr] 87 | | let size = mem::size_of::(); [INFO] [stderr] 88 | | unsafe { [INFO] [stderr] 89 | | slice::from_raw_parts(ptr as *const u8, size) [INFO] [stderr] 90 | | } [INFO] [stderr] 91 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/utils/mod.rs:94:1 [INFO] [stderr] | [INFO] [stderr] 94 | / pub fn slice_as_bytes<'a, T: Sized>(data: &'a [T]) -> &'a [u8] { [INFO] [stderr] 95 | | let ptr = data.as_ptr(); [INFO] [stderr] 96 | | let size = mem::size_of::(); [INFO] [stderr] 97 | | unsafe { [INFO] [stderr] 98 | | slice::from_raw_parts(ptr as *const u8, size * data.len()) [INFO] [stderr] 99 | | } [INFO] [stderr] 100 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/net/raw/devices.rs:60:30 [INFO] [stderr] | [INFO] [stderr] 60 | let mut device = devices.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `devices` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/raw/ether/mod.rs:67:19 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn octets(&self) -> [u8; 6] { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: use of `or` followed by a function call [INFO] [stderr] --> src/net/raw/ether/mod.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | .or(Err(AddrParseError::from("unable to parse a MAC address, invalid octet")))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_else(|_| Err(AddrParseError::from("unable to parse a MAC address, invalid octet")))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/proto/codec.rs:56:22 [INFO] [stderr] | [INFO] [stderr] 56 | .map_err(|err| ArrowError::from(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/net/arrow/proto/codec.rs:81:12 [INFO] [stderr] | [INFO] [stderr] 81 | if bytes.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!bytes.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: redundant closure found [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:132:18 [INFO] [stderr] | [INFO] [stderr] 132 | .map(|host| Element::new(host)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `Element::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:72:21 [INFO] [stderr] | [INFO] [stderr] 72 | let hosts = scan_result.hosts() [INFO] [stderr] | _____________________^ [INFO] [stderr] 73 | | .map(|host| host.clone()); [INFO] [stderr] | |_____________________________________^ help: Consider calling the dedicated `cloned` method: `scan_result.hosts().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:107:13 [INFO] [stderr] | [INFO] [stderr] 107 | fn code(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:146:25 [INFO] [stderr] | [INFO] [stderr] 146 | pub fn message_type(&self) -> ControlMessageType { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: length comparison to zero [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:371:12 [INFO] [stderr] | [INFO] [stderr] 371 | if bytes.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `bytes.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/net/arrow/session.rs:104:16 [INFO] [stderr] | [INFO] [stderr] 104 | if self.output.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.output.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/net/arrow/session.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 128 | if data.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.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/net/arrow/session.rs:170:12 [INFO] [stderr] | [INFO] [stderr] 170 | if self.input.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.input.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/net/arrow/session.rs:176:12 [INFO] [stderr] | [INFO] [stderr] 176 | if msg.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!msg.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/net/arrow/session.rs:191:12 [INFO] [stderr] | [INFO] [stderr] 191 | if self.input.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.input.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/net/arrow/session.rs:210:12 [INFO] [stderr] | [INFO] [stderr] 210 | if data.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.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: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/net/arrow/session.rs:440:9 [INFO] [stderr] | [INFO] [stderr] 440 | / if !self.sessions.contains_key(&session_id) { [INFO] [stderr] 441 | | let session = self.connect(service_id, session_id)?; [INFO] [stderr] 442 | | [INFO] [stderr] 443 | | self.sessions.insert( [INFO] [stderr] ... | [INFO] [stderr] 452 | | } [INFO] [stderr] 453 | | } [INFO] [stderr] | |_________^ help: consider using: `self.sessions.entry(session_id)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_entry)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/session.rs:467:14 [INFO] [stderr] | [INFO] [stderr] 467 | .ok_or(ArrowError::other(format!("unknown service ID: {:04x}", service_id)))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::other(format!("unknown service ID: {:04x}", service_id)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/session.rs:470:14 [INFO] [stderr] | [INFO] [stderr] 470 | .ok_or(ArrowError::other(format!("there is no address for a given service; service ID: {:04x}", service_id)))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::other(format!("there is no address for a given service; service ID: {:04x}", service_id)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/net/arrow/mod.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 181 | / self.redirect.as_ref() [INFO] [stderr] 182 | | .map(|r| r.clone()) [INFO] [stderr] | |_______________________________^ help: Consider calling the dedicated `cloned` method: `self.redirect.as_ref().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/net/arrow/mod.rs:314:42 [INFO] [stderr] | [INFO] [stderr] 314 | => Err(ArrowError::other(format!("unknow control message received"))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"unknow control message received".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] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:638:18 [INFO] [stderr] | [INFO] [stderr] 638 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/mod.rs:641:18 [INFO] [stderr] | [INFO] [stderr] 641 | .ok_or(ArrowError::connection_error( [INFO] [stderr] | __________________^ [INFO] [stderr] 642 | | format!("failed to lookup Arrow Service {} address information", addr) [INFO] [stderr] 643 | | )) [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 641 | .ok_or_else(|| ArrowError::connection_error( [INFO] [stderr] 642 | format!("failed to lookup Arrow Service {} address information", addr) [INFO] [stderr] 643 | )) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:666:26 [INFO] [stderr] | [INFO] [stderr] 666 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:681:26 [INFO] [stderr] | [INFO] [stderr] 681 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/mod.rs:705:26 [INFO] [stderr] | [INFO] [stderr] 705 | .ok_or(ArrowError::connection_error("connection to Arrow Service lost")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::connection_error("connection to Arrow Service lost"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/net/url.rs:146:14 [INFO] [stderr] | [INFO] [stderr] 146 | .unwrap_or(self.serialized.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| self.serialized.len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/net/utils.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | / pub fn get_hostname<'a>(address: &'a str) -> &'a str { [INFO] [stderr] 25 | | if !address.ends_with(']') { [INFO] [stderr] 26 | | if let Some(delim) = address.rfind(':') { [INFO] [stderr] 27 | | return &address[..delim]; [INFO] [stderr] ... | [INFO] [stderr] 31 | | address [INFO] [stderr] 32 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/utils.rs:41:10 [INFO] [stderr] | [INFO] [stderr] 41 | .ok_or(RuntimeError::from("unable get socket address")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| RuntimeError::from("unable get socket address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/utils.rs:39:10 [INFO] [stderr] | [INFO] [stderr] 39 | .ok_or(RuntimeError::from("unable get socket address"))? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| RuntimeError::from("unable get socket address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/net/utils.rs:57:20 [INFO] [stderr] | [INFO] [stderr] 57 | let ptr = bytes.as_ptr() as *const u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/net/utils.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | / match self { [INFO] [stderr] 84 | | &IpAddr::V4(ref ip_addr) => ip_addr.bytes(), [INFO] [stderr] 85 | | &IpAddr::V6(ref ip_addr) => ip_addr.bytes() [INFO] [stderr] 86 | | } [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] 83 | match *self { [INFO] [stderr] 84 | IpAddr::V4(ref ip_addr) => ip_addr.bytes(), [INFO] [stderr] 85 | IpAddr::V6(ref ip_addr) => ip_addr.bytes() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/net/utils.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | / match self { [INFO] [stderr] 91 | | &IpAddr::V4(ref ip_addr) => ip_addr.version(), [INFO] [stderr] 92 | | &IpAddr::V6(ref ip_addr) => ip_addr.version() [INFO] [stderr] 93 | | } [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] 90 | match *self { [INFO] [stderr] 91 | IpAddr::V4(ref ip_addr) => ip_addr.version(), [INFO] [stderr] 92 | IpAddr::V6(ref ip_addr) => ip_addr.version() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/net/utils.rs:102:18 [INFO] [stderr] | [INFO] [stderr] 102 | for i in 0..octets.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try replacing the loop by: `res[..octets.len()].clone_from_slice(&octets[..])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `segments` [INFO] [stderr] --> src/net/utils.rs:119:18 [INFO] [stderr] | [INFO] [stderr] 119 | for i in 0..segments.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 119 | for (i, ) in segments.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/config.rs:244:14 [INFO] [stderr] | [INFO] [stderr] 244 | .unwrap_or(PersistentConfig::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(PersistentConfig::new)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:363:14 [INFO] [stderr] | [INFO] [stderr] 363 | .ok_or(ConfigError::from("missing Angelcam Arrow Service address"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("missing Angelcam Arrow Service address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:378:14 [INFO] [stderr] | [INFO] [stderr] 378 | .ok_or(ConfigError::from("CA certificate path expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("CA certificate path expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:399:14 [INFO] [stderr] | [INFO] [stderr] 399 | .ok_or(ConfigError::from("network interface name expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("network interface name expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:409:14 [INFO] [stderr] | [INFO] [stderr] 409 | .ok_or(ConfigError::from("RTSP URL expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("RTSP URL expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:421:14 [INFO] [stderr] | [INFO] [stderr] 421 | .ok_or(ConfigError::from("HTTP URL expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("HTTP URL expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:433:14 [INFO] [stderr] | [INFO] [stderr] 433 | .ok_or(ConfigError::from("TCP socket address expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("TCP socket address expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:451:14 [INFO] [stderr] | [INFO] [stderr] 451 | .ok_or(ConfigError::from("TCP socket address expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("TCP socket address expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/config.rs:665:19 [INFO] [stderr] | [INFO] [stderr] 665 | uuid: self.uuid.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/config.rs:666:21 [INFO] [stderr] | [INFO] [stderr] 666 | passwd: self.passwd.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.passwd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:705:14 [INFO] [stderr] | [INFO] [stderr] 705 | .ok_or(ParseError::from("missing field \"svc_table\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"svc_table\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:714:14 [INFO] [stderr] | [INFO] [stderr] 714 | .ok_or(ParseError::from("missing field \"uuid\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"uuid\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:717:14 [INFO] [stderr] | [INFO] [stderr] 717 | .ok_or(ParseError::from("missing field \"passwd\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"passwd\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:720:14 [INFO] [stderr] | [INFO] [stderr] 720 | .ok_or(ParseError::from("missing field \"version\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"version\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:929:10 [INFO] [stderr] | [INFO] [stderr] 929 | .ok_or(ConfigError::from("there is no configured ethernet device")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("there is no configured ethernet device"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:938:10 [INFO] [stderr] | [INFO] [stderr] 938 | .ok_or(ConfigError::from(format!("there is no such ethernet device: {}", iface))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from(format!("there is no such ethernet device: {}", iface)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/config.rs:946:5 [INFO] [stderr] | [INFO] [stderr] 946 | / match addr { [INFO] [stderr] 947 | | &SocketAddr::V4(ref addr) => get_fake_mac_from_ipv4(prefix, addr), [INFO] [stderr] 948 | | &SocketAddr::V6(ref addr) => get_fake_mac_from_ipv6(prefix, addr), [INFO] [stderr] 949 | | } [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] 946 | match *addr { [INFO] [stderr] 947 | SocketAddr::V4(ref addr) => get_fake_mac_from_ipv4(prefix, addr), [INFO] [stderr] 948 | SocketAddr::V6(ref addr) => get_fake_mac_from_ipv6(prefix, addr), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/config.rs:1113:32 [INFO] [stderr] | [INFO] [stderr] 1113 | while let Some(fragment) = split.next() { [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `for fragment in split { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/context.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | / match self { [INFO] [stderr] 52 | | &ConnectionState::Connected => "connected", [INFO] [stderr] 53 | | &ConnectionState::Disconnected => "disconnected", [INFO] [stderr] 54 | | &ConnectionState::Unauthorized => "unauthorized", [INFO] [stderr] 55 | | } [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] 51 | match *self { [INFO] [stderr] 52 | ConnectionState::Connected => "connected", [INFO] [stderr] 53 | ConnectionState::Disconnected => "disconnected", [INFO] [stderr] 54 | ConnectionState::Unauthorized => "unauthorized", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_err()` [INFO] [stderr] --> src/cmd_handler.rs:171:20 [INFO] [stderr] | [INFO] [stderr] 171 | if let Err(_) = handle.join() { [INFO] [stderr] | _____________- ^^^^^^ [INFO] [stderr] 172 | | log_warn!(self.logger, "network scanner thread panicked"); [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____________- help: try this: `if handle.join().is_err()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/scanner/result/host.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | / self.inner.next() [INFO] [stderr] 86 | | .map(|port| *port) [INFO] [stderr] | |______________________________^ help: Consider calling the dedicated `cloned` method: `self.inner.next().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `scanner::result::ScanResult` [INFO] [stderr] --> src/scanner/result/mod.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn new() -> ScanResult { [INFO] [stderr] 42 | | ScanResult { [INFO] [stderr] 43 | | hosts: HashMap::new(), [INFO] [stderr] 44 | | services: HashMap::new(), [INFO] [stderr] 45 | | } [INFO] [stderr] 46 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 34 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 53 | | self.hosts.insert(key, HostRecord::new(mac, ip, flags)); [INFO] [stderr] 54 | | } else if let Some(host) = self.hosts.get_mut(&key) { [INFO] [stderr] 55 | | host.flags |= flags; [INFO] [stderr] 56 | | } [INFO] [stderr] | |_________^ help: consider using: `self.hosts.entry(key)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 65 | | self.hosts.insert(key, HostRecord::new(mac, ip, 0)); [INFO] [stderr] 66 | | } [INFO] [stderr] | |_________^ help: consider using: `self.hosts.entry(key).or_insert(HostRecord::new(mac, ip, 0))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 97 | | self.hosts.insert(key, other_host); [INFO] [stderr] 98 | | } else if let Some(host) = self.hosts.get_mut(&key) { [INFO] [stderr] 99 | | host.add_ports(other_host.ports()); [INFO] [stderr] 100 | | host.flags |= other_host.flags; [INFO] [stderr] 101 | | } [INFO] [stderr] | |_____________^ help: consider using: `self.hosts.entry(key)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/svc_table/service.rs:54:17 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn code(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/svc_table/service.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | / match self { [INFO] [stderr] 56 | | &ServiceType::ControlProtocol => SVC_TYPE_CONTROL_PROTOCOL, [INFO] [stderr] 57 | | &ServiceType::RTSP => SVC_TYPE_RTSP, [INFO] [stderr] 58 | | &ServiceType::LockedRTSP => SVC_TYPE_LOCKED_RTSP, [INFO] [stderr] ... | [INFO] [stderr] 64 | | &ServiceType::TCP => SVC_TYPE_TCP, [INFO] [stderr] 65 | | } [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] 55 | match *self { [INFO] [stderr] 56 | ServiceType::ControlProtocol => SVC_TYPE_CONTROL_PROTOCOL, [INFO] [stderr] 57 | ServiceType::RTSP => SVC_TYPE_RTSP, [INFO] [stderr] 58 | ServiceType::LockedRTSP => SVC_TYPE_LOCKED_RTSP, [INFO] [stderr] 59 | ServiceType::UnknownRTSP => SVC_TYPE_UNKNOWN_RTSP, [INFO] [stderr] 60 | ServiceType::UnsupportedRTSP => SVC_TYPE_UNSUPPORTED_RTSP, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/svc_table/mod.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | / let opath; [INFO] [stderr] 247 | | [INFO] [stderr] 248 | | if path.len() > 0 { [INFO] [stderr] 249 | | opath = Some(path.to_string()); [INFO] [stderr] 250 | | } else { [INFO] [stderr] 251 | | opath = None; [INFO] [stderr] 252 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let opath = if path.len() > 0 { Some(path.to_string()) } else { None };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:234:14 [INFO] [stderr] | [INFO] [stderr] 234 | .ok_or(ParseError::from("missing field \"svc_type\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"svc_type\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:237:14 [INFO] [stderr] | [INFO] [stderr] 237 | .ok_or(ParseError::from("missing field \"mac\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"mac\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:240:14 [INFO] [stderr] | [INFO] [stderr] 240 | .ok_or(ParseError::from("missing field \"address\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"address\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:243:14 [INFO] [stderr] | [INFO] [stderr] 243 | .ok_or(ParseError::from("missing field \"path\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"path\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/svc_table/mod.rs:248:12 [INFO] [stderr] | [INFO] [stderr] 248 | if path.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!path.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: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:309:14 [INFO] [stderr] | [INFO] [stderr] 309 | .unwrap_or(get_utc_timestamp()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(get_utc_timestamp)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/svc_table/mod.rs:463:18 [INFO] [stderr] | [INFO] [stderr] 463 | let id = self.identifier_map.get(&key) [INFO] [stderr] | __________________^ [INFO] [stderr] 464 | | .map(|id| *id); [INFO] [stderr] | |__________________________^ help: Consider calling the dedicated `cloned` method: `self.identifier_map.get(&key).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:513:14 [INFO] [stderr] | [INFO] [stderr] 513 | .ok_or(ParseError::from("missing field \"services\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"services\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `svc_table::SharedServiceTable` [INFO] [stderr] --> src/svc_table/mod.rs:581:5 [INFO] [stderr] | [INFO] [stderr] 581 | / pub fn new() -> SharedServiceTable { [INFO] [stderr] 582 | | SharedServiceTable { [INFO] [stderr] 583 | | data: Arc::new(Mutex::new(ServiceTableData::new())), [INFO] [stderr] 584 | | } [INFO] [stderr] 585 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 579 | impl Default for svc_table::SharedServiceTable { [INFO] [stderr] 580 | fn default() -> Self { [INFO] [stderr] 581 | Self::new() [INFO] [stderr] 582 | } [INFO] [stderr] 583 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/main.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | / fn new(app_context: ApplicationContext, cmd_channel: CommandChannel) -> impl Future { [INFO] [stderr] 110 | | let logger = app_context.get_logger(); [INFO] [stderr] 111 | | let addr = app_context.get_arrow_service_address(); [INFO] [stderr] 112 | | let diagnostic_mode = app_context.get_diagnostic_mode(); [INFO] [stderr] ... | [INFO] [stderr] 137 | | .for_each(|_| Ok(())) [INFO] [stderr] 138 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / match connection_result { [INFO] [stderr] 278 | | &Ok(_) => process::exit(0), [INFO] [stderr] 279 | | &Err(ref err) => match err.kind() { [INFO] [stderr] 280 | | ErrorKind::Unauthorized => process::exit(0), [INFO] [stderr] 281 | | _ => process::exit(1) [INFO] [stderr] 282 | | } [INFO] [stderr] 283 | | } [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] 277 | match *connection_result { [INFO] [stderr] 278 | Ok(_) => process::exit(0), [INFO] [stderr] 279 | Err(ref err) => match err.kind() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `arrow-client`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:82:14 [INFO] [stderr] | [INFO] [stderr] 82 | .ok_or(ParseError::from("input is empty"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("input is empty"))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:94:14 [INFO] [stderr] | [INFO] [stderr] 94 | .ok_or(ParseError::from("input is empty"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("input is empty"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/utils/string/reader.rs:178:14 [INFO] [stderr] | [INFO] [stderr] 178 | .unwrap_or(rest.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| rest.len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `is_*` usually take self by reference or no self; consider choosing a less ambiguous name [INFO] [stderr] --> src/utils/string/reader.rs:200:21 [INFO] [stderr] | [INFO] [stderr] 200 | pub fn is_empty(&mut self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/utils/mod.rs:85:1 [INFO] [stderr] | [INFO] [stderr] 85 | / pub fn as_bytes<'a, T: Sized>(val: &'a T) -> &'a [u8] { [INFO] [stderr] 86 | | let ptr = val as *const T; [INFO] [stderr] 87 | | let size = mem::size_of::(); [INFO] [stderr] 88 | | unsafe { [INFO] [stderr] 89 | | slice::from_raw_parts(ptr as *const u8, size) [INFO] [stderr] 90 | | } [INFO] [stderr] 91 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/utils/mod.rs:94:1 [INFO] [stderr] | [INFO] [stderr] 94 | / pub fn slice_as_bytes<'a, T: Sized>(data: &'a [T]) -> &'a [u8] { [INFO] [stderr] 95 | | let ptr = data.as_ptr(); [INFO] [stderr] 96 | | let size = mem::size_of::(); [INFO] [stderr] 97 | | unsafe { [INFO] [stderr] 98 | | slice::from_raw_parts(ptr as *const u8, size * data.len()) [INFO] [stderr] 99 | | } [INFO] [stderr] 100 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/net/raw/devices.rs:60:30 [INFO] [stderr] | [INFO] [stderr] 60 | let mut device = devices.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `devices` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/raw/ether/mod.rs:67:19 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn octets(&self) -> [u8; 6] { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: use of `or` followed by a function call [INFO] [stderr] --> src/net/raw/ether/mod.rs:93:18 [INFO] [stderr] | [INFO] [stderr] 93 | .or(Err(AddrParseError::from("unable to parse a MAC address, invalid octet")))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_else(|_| Err(AddrParseError::from("unable to parse a MAC address, invalid octet")))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/proto/codec.rs:56:22 [INFO] [stderr] | [INFO] [stderr] 56 | .map_err(|err| ArrowError::from(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/net/arrow/proto/codec.rs:81:12 [INFO] [stderr] | [INFO] [stderr] 81 | if bytes.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!bytes.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: redundant closure found [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/host_table.rs:132:18 [INFO] [stderr] | [INFO] [stderr] 132 | .map(|host| Element::new(host)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `Element::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/net/arrow/proto/msg/control/scan_report/mod.rs:72:21 [INFO] [stderr] | [INFO] [stderr] 72 | let hosts = scan_result.hosts() [INFO] [stderr] | _____________________^ [INFO] [stderr] 73 | | .map(|host| host.clone()); [INFO] [stderr] | |_____________________________________^ help: Consider calling the dedicated `cloned` method: `scan_result.hosts().cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:107:13 [INFO] [stderr] | [INFO] [stderr] 107 | fn code(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:146:25 [INFO] [stderr] | [INFO] [stderr] 146 | pub fn message_type(&self) -> ControlMessageType { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: length comparison to zero [INFO] [stderr] --> src/net/arrow/proto/msg/control/mod.rs:371:12 [INFO] [stderr] | [INFO] [stderr] 371 | if bytes.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `bytes.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/net/arrow/session.rs:104:16 [INFO] [stderr] | [INFO] [stderr] 104 | if self.output.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.output.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/net/arrow/session.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 128 | if data.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.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/net/arrow/session.rs:170:12 [INFO] [stderr] | [INFO] [stderr] 170 | if self.input.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.input.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/net/arrow/session.rs:176:12 [INFO] [stderr] | [INFO] [stderr] 176 | if msg.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!msg.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/net/arrow/session.rs:191:12 [INFO] [stderr] | [INFO] [stderr] 191 | if self.input.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.input.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/net/arrow/session.rs:210:12 [INFO] [stderr] | [INFO] [stderr] 210 | if data.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!data.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: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/net/arrow/session.rs:440:9 [INFO] [stderr] | [INFO] [stderr] 440 | / if !self.sessions.contains_key(&session_id) { [INFO] [stderr] 441 | | let session = self.connect(service_id, session_id)?; [INFO] [stderr] 442 | | [INFO] [stderr] 443 | | self.sessions.insert( [INFO] [stderr] ... | [INFO] [stderr] 452 | | } [INFO] [stderr] 453 | | } [INFO] [stderr] | |_________^ help: consider using: `self.sessions.entry(session_id)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_entry)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/session.rs:467:14 [INFO] [stderr] | [INFO] [stderr] 467 | .ok_or(ArrowError::other(format!("unknown service ID: {:04x}", service_id)))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::other(format!("unknown service ID: {:04x}", service_id)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/session.rs:470:14 [INFO] [stderr] | [INFO] [stderr] 470 | .ok_or(ArrowError::other(format!("there is no address for a given service; service ID: {:04x}", service_id)))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::other(format!("there is no address for a given service; service ID: {:04x}", service_id)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/net/arrow/mod.rs:181:9 [INFO] [stderr] | [INFO] [stderr] 181 | / self.redirect.as_ref() [INFO] [stderr] 182 | | .map(|r| r.clone()) [INFO] [stderr] | |_______________________________^ help: Consider calling the dedicated `cloned` method: `self.redirect.as_ref().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> src/net/arrow/mod.rs:314:42 [INFO] [stderr] | [INFO] [stderr] 314 | => Err(ArrowError::other(format!("unknow control message received"))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"unknow control message received".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] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:638:18 [INFO] [stderr] | [INFO] [stderr] 638 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/mod.rs:641:18 [INFO] [stderr] | [INFO] [stderr] 641 | .ok_or(ArrowError::connection_error( [INFO] [stderr] | __________________^ [INFO] [stderr] 642 | | format!("failed to lookup Arrow Service {} address information", addr) [INFO] [stderr] 643 | | )) [INFO] [stderr] | |__________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 641 | .ok_or_else(|| ArrowError::connection_error( [INFO] [stderr] 642 | format!("failed to lookup Arrow Service {} address information", addr) [INFO] [stderr] 643 | )) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:666:26 [INFO] [stderr] | [INFO] [stderr] 666 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/net/arrow/mod.rs:681:26 [INFO] [stderr] | [INFO] [stderr] 681 | .map_err(|err| ArrowError::connection_error(err)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `ArrowError::connection_error` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/arrow/mod.rs:705:26 [INFO] [stderr] | [INFO] [stderr] 705 | .ok_or(ArrowError::connection_error("connection to Arrow Service lost")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ArrowError::connection_error("connection to Arrow Service lost"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/net/url.rs:146:14 [INFO] [stderr] | [INFO] [stderr] 146 | .unwrap_or(self.serialized.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| self.serialized.len())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/net/utils.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | / pub fn get_hostname<'a>(address: &'a str) -> &'a str { [INFO] [stderr] 25 | | if !address.ends_with(']') { [INFO] [stderr] 26 | | if let Some(delim) = address.rfind(':') { [INFO] [stderr] 27 | | return &address[..delim]; [INFO] [stderr] ... | [INFO] [stderr] 31 | | address [INFO] [stderr] 32 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/utils.rs:41:10 [INFO] [stderr] | [INFO] [stderr] 41 | .ok_or(RuntimeError::from("unable get socket address")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| RuntimeError::from("unable get socket address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/net/utils.rs:39:10 [INFO] [stderr] | [INFO] [stderr] 39 | .ok_or(RuntimeError::from("unable get socket address"))? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| RuntimeError::from("unable get socket address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] error: casting from `*const u8` to a more-strictly-aligned pointer (`*const u32`) [INFO] [stderr] --> src/net/utils.rs:57:20 [INFO] [stderr] | [INFO] [stderr] 57 | let ptr = bytes.as_ptr() as *const u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::cast_ptr_alignment)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_ptr_alignment [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/net/utils.rs:83:9 [INFO] [stderr] | [INFO] [stderr] 83 | / match self { [INFO] [stderr] 84 | | &IpAddr::V4(ref ip_addr) => ip_addr.bytes(), [INFO] [stderr] 85 | | &IpAddr::V6(ref ip_addr) => ip_addr.bytes() [INFO] [stderr] 86 | | } [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] 83 | match *self { [INFO] [stderr] 84 | IpAddr::V4(ref ip_addr) => ip_addr.bytes(), [INFO] [stderr] 85 | IpAddr::V6(ref ip_addr) => ip_addr.bytes() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/net/utils.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | / match self { [INFO] [stderr] 91 | | &IpAddr::V4(ref ip_addr) => ip_addr.version(), [INFO] [stderr] 92 | | &IpAddr::V6(ref ip_addr) => ip_addr.version() [INFO] [stderr] 93 | | } [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] 90 | match *self { [INFO] [stderr] 91 | IpAddr::V4(ref ip_addr) => ip_addr.version(), [INFO] [stderr] 92 | IpAddr::V6(ref ip_addr) => ip_addr.version() [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/net/utils.rs:102:18 [INFO] [stderr] | [INFO] [stderr] 102 | for i in 0..octets.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try replacing the loop by: `res[..octets.len()].clone_from_slice(&octets[..])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is used to index `segments` [INFO] [stderr] --> src/net/utils.rs:119:18 [INFO] [stderr] | [INFO] [stderr] 119 | for i in 0..segments.len() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 119 | for (i, ) in segments.iter().enumerate() { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/config.rs:244:14 [INFO] [stderr] | [INFO] [stderr] 244 | .unwrap_or(PersistentConfig::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(PersistentConfig::new)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:363:14 [INFO] [stderr] | [INFO] [stderr] 363 | .ok_or(ConfigError::from("missing Angelcam Arrow Service address"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("missing Angelcam Arrow Service address"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:378:14 [INFO] [stderr] | [INFO] [stderr] 378 | .ok_or(ConfigError::from("CA certificate path expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("CA certificate path expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:399:14 [INFO] [stderr] | [INFO] [stderr] 399 | .ok_or(ConfigError::from("network interface name expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("network interface name expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:409:14 [INFO] [stderr] | [INFO] [stderr] 409 | .ok_or(ConfigError::from("RTSP URL expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("RTSP URL expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:421:14 [INFO] [stderr] | [INFO] [stderr] 421 | .ok_or(ConfigError::from("HTTP URL expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("HTTP URL expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:433:14 [INFO] [stderr] | [INFO] [stderr] 433 | .ok_or(ConfigError::from("TCP socket address expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("TCP socket address expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:451:14 [INFO] [stderr] | [INFO] [stderr] 451 | .ok_or(ConfigError::from("TCP socket address expected"))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("TCP socket address expected"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/config.rs:665:19 [INFO] [stderr] | [INFO] [stderr] 665 | uuid: self.uuid.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.uuid` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: using `clone` on a `Copy` type [INFO] [stderr] --> src/config.rs:666:21 [INFO] [stderr] | [INFO] [stderr] 666 | passwd: self.passwd.clone(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.passwd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:705:14 [INFO] [stderr] | [INFO] [stderr] 705 | .ok_or(ParseError::from("missing field \"svc_table\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"svc_table\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:714:14 [INFO] [stderr] | [INFO] [stderr] 714 | .ok_or(ParseError::from("missing field \"uuid\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"uuid\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:717:14 [INFO] [stderr] | [INFO] [stderr] 717 | .ok_or(ParseError::from("missing field \"passwd\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"passwd\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:720:14 [INFO] [stderr] | [INFO] [stderr] 720 | .ok_or(ParseError::from("missing field \"version\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"version\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:929:10 [INFO] [stderr] | [INFO] [stderr] 929 | .ok_or(ConfigError::from("there is no configured ethernet device")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from("there is no configured ethernet device"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/config.rs:938:10 [INFO] [stderr] | [INFO] [stderr] 938 | .ok_or(ConfigError::from(format!("there is no such ethernet device: {}", iface))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::from(format!("there is no such ethernet device: {}", iface)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/config.rs:946:5 [INFO] [stderr] | [INFO] [stderr] 946 | / match addr { [INFO] [stderr] 947 | | &SocketAddr::V4(ref addr) => get_fake_mac_from_ipv4(prefix, addr), [INFO] [stderr] 948 | | &SocketAddr::V6(ref addr) => get_fake_mac_from_ipv6(prefix, addr), [INFO] [stderr] 949 | | } [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] 946 | match *addr { [INFO] [stderr] 947 | SocketAddr::V4(ref addr) => get_fake_mac_from_ipv4(prefix, addr), [INFO] [stderr] 948 | SocketAddr::V6(ref addr) => get_fake_mac_from_ipv6(prefix, addr), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/config.rs:1113:32 [INFO] [stderr] | [INFO] [stderr] 1113 | while let Some(fragment) = split.next() { [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `for fragment in split { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/context.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | / match self { [INFO] [stderr] 52 | | &ConnectionState::Connected => "connected", [INFO] [stderr] 53 | | &ConnectionState::Disconnected => "disconnected", [INFO] [stderr] 54 | | &ConnectionState::Unauthorized => "unauthorized", [INFO] [stderr] 55 | | } [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] 51 | match *self { [INFO] [stderr] 52 | ConnectionState::Connected => "connected", [INFO] [stderr] 53 | ConnectionState::Disconnected => "disconnected", [INFO] [stderr] 54 | ConnectionState::Unauthorized => "unauthorized", [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_err()` [INFO] [stderr] --> src/cmd_handler.rs:171:20 [INFO] [stderr] | [INFO] [stderr] 171 | if let Err(_) = handle.join() { [INFO] [stderr] | _____________- ^^^^^^ [INFO] [stderr] 172 | | log_warn!(self.logger, "network scanner thread panicked"); [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____________- help: try this: `if handle.join().is_err()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern_matching)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/scanner/result/host.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | / self.inner.next() [INFO] [stderr] 86 | | .map(|port| *port) [INFO] [stderr] | |______________________________^ help: Consider calling the dedicated `cloned` method: `self.inner.next().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `scanner::result::ScanResult` [INFO] [stderr] --> src/scanner/result/mod.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | / pub fn new() -> ScanResult { [INFO] [stderr] 42 | | ScanResult { [INFO] [stderr] 43 | | hosts: HashMap::new(), [INFO] [stderr] 44 | | services: HashMap::new(), [INFO] [stderr] 45 | | } [INFO] [stderr] 46 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 34 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 53 | | self.hosts.insert(key, HostRecord::new(mac, ip, flags)); [INFO] [stderr] 54 | | } else if let Some(host) = self.hosts.get_mut(&key) { [INFO] [stderr] 55 | | host.flags |= flags; [INFO] [stderr] 56 | | } [INFO] [stderr] | |_________^ help: consider using: `self.hosts.entry(key)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 65 | | self.hosts.insert(key, HostRecord::new(mac, ip, 0)); [INFO] [stderr] 66 | | } [INFO] [stderr] | |_________^ help: consider using: `self.hosts.entry(key).or_insert(HostRecord::new(mac, ip, 0))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: usage of `contains_key` followed by `insert` on a `HashMap` [INFO] [stderr] --> src/scanner/result/mod.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | / if !self.hosts.contains_key(&key) { [INFO] [stderr] 97 | | self.hosts.insert(key, other_host); [INFO] [stderr] 98 | | } else if let Some(host) = self.hosts.get_mut(&key) { [INFO] [stderr] 99 | | host.add_ports(other_host.ports()); [INFO] [stderr] 100 | | host.flags |= other_host.flags; [INFO] [stderr] 101 | | } [INFO] [stderr] | |_____________^ help: consider using: `self.hosts.entry(key)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/svc_table/service.rs:54:17 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn code(&self) -> u16 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/svc_table/service.rs:55:9 [INFO] [stderr] | [INFO] [stderr] 55 | / match self { [INFO] [stderr] 56 | | &ServiceType::ControlProtocol => SVC_TYPE_CONTROL_PROTOCOL, [INFO] [stderr] 57 | | &ServiceType::RTSP => SVC_TYPE_RTSP, [INFO] [stderr] 58 | | &ServiceType::LockedRTSP => SVC_TYPE_LOCKED_RTSP, [INFO] [stderr] ... | [INFO] [stderr] 64 | | &ServiceType::TCP => SVC_TYPE_TCP, [INFO] [stderr] 65 | | } [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] 55 | match *self { [INFO] [stderr] 56 | ServiceType::ControlProtocol => SVC_TYPE_CONTROL_PROTOCOL, [INFO] [stderr] 57 | ServiceType::RTSP => SVC_TYPE_RTSP, [INFO] [stderr] 58 | ServiceType::LockedRTSP => SVC_TYPE_LOCKED_RTSP, [INFO] [stderr] 59 | ServiceType::UnknownRTSP => SVC_TYPE_UNKNOWN_RTSP, [INFO] [stderr] 60 | ServiceType::UnsupportedRTSP => SVC_TYPE_UNSUPPORTED_RTSP, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/svc_table/mod.rs:246:9 [INFO] [stderr] | [INFO] [stderr] 246 | / let opath; [INFO] [stderr] 247 | | [INFO] [stderr] 248 | | if path.len() > 0 { [INFO] [stderr] 249 | | opath = Some(path.to_string()); [INFO] [stderr] 250 | | } else { [INFO] [stderr] 251 | | opath = None; [INFO] [stderr] 252 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let opath = if path.len() > 0 { Some(path.to_string()) } else { None };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:234:14 [INFO] [stderr] | [INFO] [stderr] 234 | .ok_or(ParseError::from("missing field \"svc_type\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"svc_type\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:237:14 [INFO] [stderr] | [INFO] [stderr] 237 | .ok_or(ParseError::from("missing field \"mac\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"mac\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:240:14 [INFO] [stderr] | [INFO] [stderr] 240 | .ok_or(ParseError::from("missing field \"address\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"address\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:243:14 [INFO] [stderr] | [INFO] [stderr] 243 | .ok_or(ParseError::from("missing field \"path\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"path\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/svc_table/mod.rs:248:12 [INFO] [stderr] | [INFO] [stderr] 248 | if path.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!path.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: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:309:14 [INFO] [stderr] | [INFO] [stderr] 309 | .unwrap_or(get_utc_timestamp()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(get_utc_timestamp)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/svc_table/mod.rs:463:18 [INFO] [stderr] | [INFO] [stderr] 463 | let id = self.identifier_map.get(&key) [INFO] [stderr] | __________________^ [INFO] [stderr] 464 | | .map(|id| *id); [INFO] [stderr] | |__________________________^ help: Consider calling the dedicated `cloned` method: `self.identifier_map.get(&key).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/svc_table/mod.rs:513:14 [INFO] [stderr] | [INFO] [stderr] 513 | .ok_or(ParseError::from("missing field \"services\""))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ParseError::from("missing field \"services\""))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `svc_table::SharedServiceTable` [INFO] [stderr] --> src/svc_table/mod.rs:581:5 [INFO] [stderr] | [INFO] [stderr] 581 | / pub fn new() -> SharedServiceTable { [INFO] [stderr] 582 | | SharedServiceTable { [INFO] [stderr] 583 | | data: Arc::new(Mutex::new(ServiceTableData::new())), [INFO] [stderr] 584 | | } [INFO] [stderr] 585 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 579 | impl Default for svc_table::SharedServiceTable { [INFO] [stderr] 580 | fn default() -> Self { [INFO] [stderr] 581 | Self::new() [INFO] [stderr] 582 | } [INFO] [stderr] 583 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/main.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | / fn new(app_context: ApplicationContext, cmd_channel: CommandChannel) -> impl Future { [INFO] [stderr] 110 | | let logger = app_context.get_logger(); [INFO] [stderr] 111 | | let addr = app_context.get_arrow_service_address(); [INFO] [stderr] 112 | | let diagnostic_mode = app_context.get_diagnostic_mode(); [INFO] [stderr] ... | [INFO] [stderr] 137 | | .for_each(|_| Ok(())) [INFO] [stderr] 138 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/main.rs:277:5 [INFO] [stderr] | [INFO] [stderr] 277 | / match connection_result { [INFO] [stderr] 278 | | &Ok(_) => process::exit(0), [INFO] [stderr] 279 | | &Err(ref err) => match err.kind() { [INFO] [stderr] 280 | | ErrorKind::Unauthorized => process::exit(0), [INFO] [stderr] 281 | | _ => process::exit(1) [INFO] [stderr] 282 | | } [INFO] [stderr] 283 | | } [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] 277 | match *connection_result { [INFO] [stderr] 278 | Ok(_) => process::exit(0), [INFO] [stderr] 279 | Err(ref err) => match err.kind() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `arrow-client`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "622baea609596c608c673608acf8d3416d3e5433c32a584577a31c0435467e33"` [INFO] running `"docker" "rm" "-f" "622baea609596c608c673608acf8d3416d3e5433c32a584577a31c0435467e33"` [INFO] [stdout] 622baea609596c608c673608acf8d3416d3e5433c32a584577a31c0435467e33