[INFO] updating cached repository letitz/solstice [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/letitz/solstice [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/letitz/solstice" "work/ex/clippy-test-run/sources/stable/gh/letitz/solstice"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/letitz/solstice'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/letitz/solstice" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/letitz/solstice"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/letitz/solstice'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] da6aa385934ca7504b3d3f91c5500327079bea8f [INFO] sha for GitHub repo letitz/solstice: da6aa385934ca7504b3d3f91c5500327079bea8f [INFO] validating manifest of letitz/solstice 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 letitz/solstice 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 letitz/solstice [INFO] finished frobbing letitz/solstice [INFO] frobbed toml for letitz/solstice written to work/ex/clippy-test-run/sources/stable/gh/letitz/solstice/Cargo.toml [INFO] started frobbing letitz/solstice [INFO] finished frobbing letitz/solstice [INFO] frobbed toml for letitz/solstice written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/letitz/solstice/Cargo.toml [INFO] crate letitz/solstice 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 letitz/solstice against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-1/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/letitz/solstice:/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] 2fb2d97bb3e02db3f99d9dcef973fb3b06b379d8cbc7e7d04c46436662a12ea3 [INFO] running `"docker" "start" "-a" "2fb2d97bb3e02db3f99d9dcef973fb3b06b379d8cbc7e7d04c46436662a12ea3"` [INFO] [stderr] Checking slab v0.2.0 [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking sha1 v0.1.1 [INFO] [stderr] Checking nix v0.5.1 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking miow v0.1.5 [INFO] [stderr] Checking thread_local v0.2.7 [INFO] [stderr] Checking aho-corasick v0.5.3 [INFO] [stderr] Checking regex v0.1.80 [INFO] [stderr] Checking mio v0.5.1 [INFO] [stderr] Checking env_logger v0.3.5 [INFO] [stderr] Checking ws v0.4.8 [INFO] [stderr] Checking solstice v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/client.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | proto_tx: proto_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `proto_tx` [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/client.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | proto_rx: proto_rx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `proto_rx` [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/client.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | control_rx: control_rx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `control_rx` [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/client.rs:218:77 [INFO] [stderr] | [INFO] [stderr] 218 | LoginStatus::Pending => control::LoginStatusResponse::Pending { username: username }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:221:17 [INFO] [stderr] | [INFO] [stderr] 221 | username: username, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:226:17 [INFO] [stderr] | [INFO] [stderr] 226 | username: username, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:239:25 [INFO] [stderr] | [INFO] [stderr] 239 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/client.rs:254:25 [INFO] [stderr] | [INFO] [stderr] 254 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/client.rs:267:41 [INFO] [stderr] | [INFO] [stderr] 267 | control::RoomListResponse { rooms: rooms }, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `rooms` [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/client.rs:288:17 [INFO] [stderr] | [INFO] [stderr] 288 | user_list: user_list, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_list` [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/client.rs:621:41 [INFO] [stderr] | [INFO] [stderr] 621 | control::RoomListResponse { rooms: rooms }, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `rooms` [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/control/ws.rs:165:13 [INFO] [stderr] | [INFO] [stderr] 165 | socket_tx: socket_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `socket_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/proto/codec.rs:181:24 [INFO] [stderr] | [INFO] [stderr] 181 | ProtoEncoder { inner: inner } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/proto/handler.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | server_stream: server_stream, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `server_stream` [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/proto/handler.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | listener: listener, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `listener` [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/proto/handler.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | client_tx: client_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `client_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/proto/handler.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | peer_id: peer_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `peer_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/proto/handler.rs:364:13 [INFO] [stderr] | [INFO] [stderr] 364 | event_loop: event_loop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_loop` [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/proto/handler.rs:365:13 [INFO] [stderr] | [INFO] [stderr] 365 | handler: handler, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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/proto/packet.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | bytes: bytes, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `bytes` [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/proto/server/request.rs:421:33 [INFO] [stderr] | [INFO] [stderr] 421 | Ok(PeerAddressRequest { username: username }) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/proto/server/request.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/proto/server/request.rs:482:13 [INFO] [stderr] | [INFO] [stderr] 482 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/proto/server/request.rs:545:35 [INFO] [stderr] | [INFO] [stderr] 545 | Ok(SetListenPortRequest { port: port }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `port` [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/proto/server/request.rs:575:13 [INFO] [stderr] | [INFO] [stderr] 575 | user_name: user_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_name` [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/proto/stream.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | bytes: bytes, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `bytes` [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/proto/stream.rs:105:21 [INFO] [stderr] | [INFO] [stderr] 105 | sender: sender, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `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/proto/stream.rs:106:21 [INFO] [stderr] | [INFO] [stderr] 106 | stream: stream, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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/room.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | visibility: visibility, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `visibility` [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/room.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | user_count: user_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_count` [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/client.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | proto_tx: proto_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `proto_tx` [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/client.rs:76:13 [INFO] [stderr] | [INFO] [stderr] 76 | proto_rx: proto_rx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `proto_rx` [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/client.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | control_rx: control_rx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `control_rx` [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/client.rs:218:77 [INFO] [stderr] | [INFO] [stderr] 218 | LoginStatus::Pending => control::LoginStatusResponse::Pending { username: username }, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:221:17 [INFO] [stderr] | [INFO] [stderr] 221 | username: username, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:226:17 [INFO] [stderr] | [INFO] [stderr] 226 | username: username, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/client.rs:239:25 [INFO] [stderr] | [INFO] [stderr] 239 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/client.rs:254:25 [INFO] [stderr] | [INFO] [stderr] 254 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/client.rs:267:41 [INFO] [stderr] | [INFO] [stderr] 267 | control::RoomListResponse { rooms: rooms }, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `rooms` [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/client.rs:288:17 [INFO] [stderr] | [INFO] [stderr] 288 | user_list: user_list, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_list` [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/client.rs:621:41 [INFO] [stderr] | [INFO] [stderr] 621 | control::RoomListResponse { rooms: rooms }, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `rooms` [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/control/ws.rs:165:13 [INFO] [stderr] | [INFO] [stderr] 165 | socket_tx: socket_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `socket_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/proto/codec.rs:181:24 [INFO] [stderr] | [INFO] [stderr] 181 | ProtoEncoder { inner: inner } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/proto/handler.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | server_stream: server_stream, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `server_stream` [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/proto/handler.rs:158:13 [INFO] [stderr] | [INFO] [stderr] 158 | listener: listener, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `listener` [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/proto/handler.rs:160:13 [INFO] [stderr] | [INFO] [stderr] 160 | client_tx: client_tx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `client_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/proto/handler.rs:185:13 [INFO] [stderr] | [INFO] [stderr] 185 | peer_id: peer_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `peer_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/proto/handler.rs:364:13 [INFO] [stderr] | [INFO] [stderr] 364 | event_loop: event_loop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_loop` [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/proto/handler.rs:365:13 [INFO] [stderr] | [INFO] [stderr] 365 | handler: handler, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handler` [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/proto/packet.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | bytes: bytes, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `bytes` [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/proto/server/request.rs:421:33 [INFO] [stderr] | [INFO] [stderr] 421 | Ok(PeerAddressRequest { username: username }) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `username` [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/proto/server/request.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/proto/server/request.rs:482:13 [INFO] [stderr] | [INFO] [stderr] 482 | room_name: room_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `room_name` [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/proto/server/request.rs:545:35 [INFO] [stderr] | [INFO] [stderr] 545 | Ok(SetListenPortRequest { port: port }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `port` [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/proto/server/request.rs:575:13 [INFO] [stderr] | [INFO] [stderr] 575 | user_name: user_name, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_name` [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/proto/stream.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | bytes: bytes, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `bytes` [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/proto/stream.rs:105:21 [INFO] [stderr] | [INFO] [stderr] 105 | sender: sender, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `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/proto/stream.rs:106:21 [INFO] [stderr] | [INFO] [stderr] 106 | stream: stream, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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/room.rs:73:13 [INFO] [stderr] | [INFO] [stderr] 73 | visibility: visibility, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `visibility` [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/room.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | user_count: user_count, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_count` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:4:22 [INFO] [stderr] | [INFO] [stderr] 4 | pub const USERNAME: &'static str = "abcdefgh"; [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:7:22 [INFO] [stderr] | [INFO] [stderr] 7 | pub const PASSWORD: &'static str = "ijklmnop"; [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:9:25 [INFO] [stderr] | [INFO] [stderr] 9 | pub const SERVER_HOST: &'static str = "server.slsknet.org"; [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:12:25 [INFO] [stderr] | [INFO] [stderr] 12 | pub const LISTEN_HOST: &'static str = "0.0.0.0"; [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:15:26 [INFO] [stderr] | [INFO] [stderr] 15 | pub const CONTROL_HOST: &'static str = "localhost"; [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/proto/codec.rs:374:10 [INFO] [stderr] | [INFO] [stderr] 374 | (16777215, [255, 255, 255, 0]), [INFO] [stderr] | ^^^^^^^^ help: consider: `16_777_215` [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/proto/codec.rs:375:10 [INFO] [stderr] | [INFO] [stderr] 375 | (16777216, [0, 0, 0, 1]), [INFO] [stderr] | ^^^^^^^^ help: consider: `16_777_216` [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/proto/codec.rs:571:32 [INFO] [stderr] | [INFO] [stderr] 571 | const STRING_ENCODINGS: [(&'static str, &'static [u8]); 3] = [ [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/proto/codec.rs:571:46 [INFO] [stderr] | [INFO] [stderr] 571 | const STRING_ENCODINGS: [(&'static str, &'static [u8]); 3] = [ [INFO] [stderr] | -^^^^^^^----- help: consider removing `'static`: `&[u8]` [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: You matched a field with a wildcard pattern. Consider using `..` instead [INFO] [stderr] --> src/proto/server/response.rs:423:17 [INFO] [stderr] | [INFO] [stderr] 423 | password_md5_opt: _, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unneeded_field_pattern)] on by default [INFO] [stderr] = help: Try with `LoginOk { ref motd, ip, .. }` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_field_pattern [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/config.rs:4:22 [INFO] [stderr] | [INFO] [stderr] 4 | pub const USERNAME: &'static str = "abcdefgh"; [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:7:22 [INFO] [stderr] | [INFO] [stderr] 7 | pub const PASSWORD: &'static str = "ijklmnop"; [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:9:25 [INFO] [stderr] | [INFO] [stderr] 9 | pub const SERVER_HOST: &'static str = "server.slsknet.org"; [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:12:25 [INFO] [stderr] | [INFO] [stderr] 12 | pub const LISTEN_HOST: &'static str = "0.0.0.0"; [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:15:26 [INFO] [stderr] | [INFO] [stderr] 15 | pub const CONTROL_HOST: &'static str = "localhost"; [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: You matched a field with a wildcard pattern. Consider using `..` instead [INFO] [stderr] --> src/proto/server/response.rs:423:17 [INFO] [stderr] | [INFO] [stderr] 423 | password_md5_opt: _, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unneeded_field_pattern)] on by default [INFO] [stderr] = help: Try with `LoginOk { ref motd, ip, .. }` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_field_pattern [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/client.rs:51:15 [INFO] [stderr] | [INFO] [stderr] 51 | proto_tx: mio::deprecated::Sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Handler': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:261:6 [INFO] [stderr] | [INFO] [stderr] 261 | impl mio::deprecated::Handler for Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:348:19 [INFO] [stderr] | [INFO] [stderr] 348 | pub type Sender = mio::deprecated::Sender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:351:17 [INFO] [stderr] | [INFO] [stderr] 351 | event_loop: mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryRead': update to use `Poll` [INFO] [stderr] --> src/proto/packet.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use mio::deprecated::TryRead; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/client.rs:70:19 [INFO] [stderr] | [INFO] [stderr] 70 | proto_tx: mio::deprecated::Sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:121:26 [INFO] [stderr] | [INFO] [stderr] 121 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:169:26 [INFO] [stderr] | [INFO] [stderr] 169 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:211:26 [INFO] [stderr] | [INFO] [stderr] 211 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:235:26 [INFO] [stderr] | [INFO] [stderr] 235 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:267:26 [INFO] [stderr] | [INFO] [stderr] 267 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:312:43 [INFO] [stderr] | [INFO] [stderr] 312 | fn notify(&mut self, event_loop: &mut mio::deprecated::EventLoop, request: Request) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:358:35 [INFO] [stderr] | [INFO] [stderr] 358 | let mut event_loop = try!(mio::deprecated::EventLoop::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryWrite': update to use `Poll` [INFO] [stderr] --> src/proto/stream.rs:44:12 [INFO] [stderr] | [INFO] [stderr] 44 | T: mio::deprecated::TryWrite, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/client.rs:51:15 [INFO] [stderr] | [INFO] [stderr] 51 | proto_tx: mio::deprecated::Sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Handler': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:261:6 [INFO] [stderr] | [INFO] [stderr] 261 | impl mio::deprecated::Handler for Handler { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:348:19 [INFO] [stderr] | [INFO] [stderr] 348 | pub type Sender = mio::deprecated::Sender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:351:17 [INFO] [stderr] | [INFO] [stderr] 351 | event_loop: mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryRead': update to use `Poll` [INFO] [stderr] --> src/proto/packet.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use mio::deprecated::TryRead; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::Sender': update to use `Poll` [INFO] [stderr] --> src/client.rs:70:19 [INFO] [stderr] | [INFO] [stderr] 70 | proto_tx: mio::deprecated::Sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:121:26 [INFO] [stderr] | [INFO] [stderr] 121 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:169:26 [INFO] [stderr] | [INFO] [stderr] 169 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:211:26 [INFO] [stderr] | [INFO] [stderr] 211 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:235:26 [INFO] [stderr] | [INFO] [stderr] 235 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:267:26 [INFO] [stderr] | [INFO] [stderr] 267 | event_loop: &mut mio::deprecated::EventLoop, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:312:43 [INFO] [stderr] | [INFO] [stderr] 312 | fn notify(&mut self, event_loop: &mut mio::deprecated::EventLoop, request: Request) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::EventLoop': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:358:35 [INFO] [stderr] | [INFO] [stderr] 358 | let mut event_loop = try!(mio::deprecated::EventLoop::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryWrite': update to use `Poll` [INFO] [stderr] --> src/proto/stream.rs:44:12 [INFO] [stderr] | [INFO] [stderr] 44 | T: mio::deprecated::TryWrite, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:128:14 [INFO] [stderr] | [INFO] [stderr] 128 | .send(proto::Request::ServerRequest(request)) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:135:14 [INFO] [stderr] | [INFO] [stderr] 135 | .send(proto::Request::PeerMessage(peer_id, message)) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:351:22 [INFO] [stderr] | [INFO] [stderr] 351 | .send(proto::Request::ServerRequest( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:369:22 [INFO] [stderr] | [INFO] [stderr] 369 | .send(proto::Request::ServerRequest( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:518:22 [INFO] [stderr] | [INFO] [stderr] 518 | .send(proto::Request::PeerConnect( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:128:14 [INFO] [stderr] | [INFO] [stderr] 128 | .send(proto::Request::ServerRequest(request)) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:135:14 [INFO] [stderr] | [INFO] [stderr] 135 | .send(proto::Request::PeerMessage(peer_id, message)) [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:351:22 [INFO] [stderr] | [INFO] [stderr] 351 | .send(proto::Request::ServerRequest( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:369:22 [INFO] [stderr] | [INFO] [stderr] 369 | .send(proto::Request::ServerRequest( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::send': update to use `Poll` [INFO] [stderr] --> src/client.rs:518:22 [INFO] [stderr] | [INFO] [stderr] 518 | .send(proto::Request::PeerConnect( [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:139:25 [INFO] [stderr] | [INFO] [stderr] 139 | try!(event_loop.register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:142:13 [INFO] [stderr] | [INFO] [stderr] 142 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:146:25 [INFO] [stderr] | [INFO] [stderr] 146 | try!(event_loop.register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:149:13 [INFO] [stderr] | [INFO] [stderr] 149 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | .register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:198:17 [INFO] [stderr] | [INFO] [stderr] 198 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:220:22 [INFO] [stderr] | [INFO] [stderr] 220 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:139:25 [INFO] [stderr] | [INFO] [stderr] 139 | try!(event_loop.register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:248:26 [INFO] [stderr] | [INFO] [stderr] 248 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:142:13 [INFO] [stderr] | [INFO] [stderr] 142 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:146:25 [INFO] [stderr] | [INFO] [stderr] 146 | try!(event_loop.register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:149:13 [INFO] [stderr] | [INFO] [stderr] 149 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:287:22 [INFO] [stderr] | [INFO] [stderr] 287 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:290:25 [INFO] [stderr] | [INFO] [stderr] 290 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::register': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:195:14 [INFO] [stderr] | [INFO] [stderr] 195 | .register( [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:198:17 [INFO] [stderr] | [INFO] [stderr] 198 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:220:22 [INFO] [stderr] | [INFO] [stderr] 220 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:248:26 [INFO] [stderr] | [INFO] [stderr] 248 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::reregister': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:287:22 [INFO] [stderr] | [INFO] [stderr] 287 | .reregister( [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::all': removed [INFO] [stderr] --> src/proto/handler.rs:290:25 [INFO] [stderr] | [INFO] [stderr] 290 | mio::Ready::all(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::new': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:358:35 [INFO] [stderr] | [INFO] [stderr] 358 | let mut event_loop = try!(mio::deprecated::EventLoop::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::channel': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:370:25 [INFO] [stderr] | [INFO] [stderr] 370 | self.event_loop.channel() [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::run': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:374:25 [INFO] [stderr] | [INFO] [stderr] 374 | self.event_loop.run(&mut self.handler) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::new': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:358:35 [INFO] [stderr] | [INFO] [stderr] 358 | let mut event_loop = try!(mio::deprecated::EventLoop::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::channel': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:370:25 [INFO] [stderr] | [INFO] [stderr] 370 | self.event_loop.channel() [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item '>::run': update to use `Poll` [INFO] [stderr] --> src/proto/handler.rs:374:25 [INFO] [stderr] | [INFO] [stderr] 374 | self.event_loop.run(&mut self.handler) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryRead::try_read': update to use `Poll` [INFO] [stderr] --> src/proto/packet.rs:364:27 [INFO] [stderr] | [INFO] [stderr] 364 | match try!(stream.try_read(&mut self.buffer[offset..])) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryRead::try_read': update to use `Poll` [INFO] [stderr] --> src/proto/packet.rs:364:27 [INFO] [stderr] | [INFO] [stderr] 364 | match try!(stream.try_read(&mut self.buffer[offset..])) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryWrite::try_write': update to use `Poll` [INFO] [stderr] --> src/proto/stream.rs:46:29 [INFO] [stderr] | [INFO] [stderr] 46 | let result = writer.try_write(&self.bytes[self.cursor..]); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::deprecated::TryWrite::try_write': update to use `Poll` [INFO] [stderr] --> src/proto/stream.rs:46:29 [INFO] [stderr] | [INFO] [stderr] 46 | let result = writer.try_write(&self.bytes[self.cursor..]); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::is_hup': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:170:22 [INFO] [stderr] | [INFO] [stderr] 170 | if event_set.is_hup() || event_set.is_error() { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::is_error': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:170:44 [INFO] [stderr] | [INFO] [stderr] 170 | if event_set.is_hup() || event_set.is_error() { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::hup': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:201:54 [INFO] [stderr] | [INFO] [stderr] 201 | let mut event_set = mio::Ready::readable() | mio::Ready::hup() | mio::Ready::error(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::error': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:201:74 [INFO] [stderr] | [INFO] [stderr] 201 | let mut event_set = mio::Ready::readable() | mio::Ready::hup() | mio::Ready::error(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::is_hup': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:170:22 [INFO] [stderr] | [INFO] [stderr] 170 | if event_set.is_hup() || event_set.is_error() { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::is_error': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:170:44 [INFO] [stderr] | [INFO] [stderr] 170 | if event_set.is_hup() || event_set.is_error() { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::hup': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:201:54 [INFO] [stderr] | [INFO] [stderr] 201 | let mut event_set = mio::Ready::readable() | mio::Ready::hup() | mio::Ready::error(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'mio::Ready::error': use UnixReady instead [INFO] [stderr] --> src/proto/stream.rs:201:74 [INFO] [stderr] | [INFO] [stderr] 201 | let mut event_set = mio::Ready::readable() | mio::Ready::hup() | mio::Ready::error(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `occupied_entry` [INFO] [stderr] --> src/proto/handler.rs:174:40 [INFO] [stderr] | [INFO] [stderr] 174 | Some(slab::Entry::Occupied(occupied_entry)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider using `_occupied_entry` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sock` [INFO] [stderr] --> src/proto/handler.rs:276:29 [INFO] [stderr] | [INFO] [stderr] 276 | Ok((sock, addr)) => { [INFO] [stderr] | ^^^^ help: consider using `_sock` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `occupied_entry` [INFO] [stderr] --> src/proto/handler.rs:174:40 [INFO] [stderr] | [INFO] [stderr] 174 | Some(slab::Entry::Occupied(occupied_entry)) => { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider using `_occupied_entry` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sock` [INFO] [stderr] --> src/proto/handler.rs:276:29 [INFO] [stderr] | [INFO] [stderr] 276 | Ok((sock, addr)) => { [INFO] [stderr] | ^^^^ help: consider using `_sock` instead [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ControlNotification` [INFO] [stderr] --> src/client.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | ControlNotification(control::Notification), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Opening` [INFO] [stderr] --> src/client.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | Opening, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `control_rx` [INFO] [stderr] --> src/client.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | control_rx: mpsc::Receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_frame` [INFO] [stderr] --> src/proto/transport.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | / fn decode_frame<'a, T>(frame_type: &str, bytes: &'a mut BytesMut) -> io::Result [INFO] [stderr] 12 | | where [INFO] [stderr] 13 | | T: fmt::Debug, [INFO] [stderr] 14 | | io::Cursor<&'a mut BytesMut>: Decode, [INFO] [stderr] ... | [INFO] [stderr] 26 | | Ok(frame) [INFO] [stderr] 27 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_frame` [INFO] [stderr] --> src/proto/transport.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | fn encode_frame(frame: &T) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `new_framed` [INFO] [stderr] --> src/proto/transport.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new_framed(io: T) -> length_delimited::Framed { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_server_response` [INFO] [stderr] --> src/proto/transport.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn decode_server_response(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_server_response` [INFO] [stderr] --> src/proto/transport.rs:56:1 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn encode_server_response(response: &ServerResponse) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_server_request` [INFO] [stderr] --> src/proto/transport.rs:63:1 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn decode_server_request(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_server_request` [INFO] [stderr] --> src/proto/transport.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn encode_server_request(request: &ServerRequest) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_peer_message` [INFO] [stderr] --> src/proto/transport.rs:76:1 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn decode_peer_message(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_peer_message` [INFO] [stderr] --> src/proto/transport.rs:82:1 [INFO] [stderr] | [INFO] [stderr] 82 | pub fn encode_peer_message(message: &peer::Message) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_strict` [INFO] [stderr] --> src/room.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | fn get_strict(&self, room_name: &str) -> Result<&Room, Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get` [INFO] [stderr] --> src/user.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn get(&self, user_name: &str) -> Option<&User> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_privileged` [INFO] [stderr] --> src/user.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn is_privileged(&self, user_name: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_err()` [INFO] [stderr] --> src/client.rs:154:16 [INFO] [stderr] | [INFO] [stderr] 154 | if let Err(_) = result { [INFO] [stderr] | _________- ^^^^^^ [INFO] [stderr] 155 | | info!("Controller has disconnected."); [INFO] [stderr] 156 | | self.control_tx = None; [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________- help: try this: `if result.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: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:94:16 [INFO] [stderr] | [INFO] [stderr] 94 | if n > u16::MAX as u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(u16::MAX)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ControlNotification` [INFO] [stderr] --> src/client.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | ControlNotification(control::Notification), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Opening` [INFO] [stderr] --> src/client.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | Opening, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `control_rx` [INFO] [stderr] --> src/client.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | control_rx: mpsc::Receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `new` [INFO] [stderr] --> src/proto/codec.rs:180:5 [INFO] [stderr] | [INFO] [stderr] 180 | pub fn new(inner: &'a mut BytesMut) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `has_correct_digest` [INFO] [stderr] --> src/proto/server/request.rs:353:5 [INFO] [stderr] | [INFO] [stderr] 353 | fn has_correct_digest(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_frame` [INFO] [stderr] --> src/proto/transport.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | / fn decode_frame<'a, T>(frame_type: &str, bytes: &'a mut BytesMut) -> io::Result [INFO] [stderr] 12 | | where [INFO] [stderr] 13 | | T: fmt::Debug, [INFO] [stderr] 14 | | io::Cursor<&'a mut BytesMut>: Decode, [INFO] [stderr] ... | [INFO] [stderr] 26 | | Ok(frame) [INFO] [stderr] 27 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_frame` [INFO] [stderr] --> src/proto/transport.rs:29:1 [INFO] [stderr] | [INFO] [stderr] 29 | fn encode_frame(frame: &T) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `new_framed` [INFO] [stderr] --> src/proto/transport.rs:40:1 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new_framed(io: T) -> length_delimited::Framed { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_server_response` [INFO] [stderr] --> src/proto/transport.rs:50:1 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn decode_server_response(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_server_response` [INFO] [stderr] --> src/proto/transport.rs:56:1 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn encode_server_response(response: &ServerResponse) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_server_request` [INFO] [stderr] --> src/proto/transport.rs:63:1 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn decode_server_request(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_server_request` [INFO] [stderr] --> src/proto/transport.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | pub fn encode_server_request(request: &ServerRequest) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_peer_message` [INFO] [stderr] --> src/proto/transport.rs:76:1 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn decode_peer_message(bytes: &mut BytesMut) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encode_peer_message` [INFO] [stderr] --> src/proto/transport.rs:82:1 [INFO] [stderr] | [INFO] [stderr] 82 | pub fn encode_peer_message(message: &peer::Message) -> io::Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_strict` [INFO] [stderr] --> src/room.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | fn get_strict(&self, room_name: &str) -> Result<&Room, Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get` [INFO] [stderr] --> src/user.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn get(&self, user_name: &str) -> Option<&User> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_privileged` [INFO] [stderr] --> src/user.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn is_privileged(&self, user_name: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:193:25 [INFO] [stderr] | [INFO] [stderr] 193 | self.encode_u32(val as u32) [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(val)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_err()` [INFO] [stderr] --> src/client.rs:154:16 [INFO] [stderr] | [INFO] [stderr] 154 | if let Err(_) = result { [INFO] [stderr] | _________- ^^^^^^ [INFO] [stderr] 155 | | info!("Controller has disconnected."); [INFO] [stderr] 156 | | self.control_tx = None; [INFO] [stderr] 157 | | } [INFO] [stderr] | |_________- help: try this: `if result.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: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/proto/codec.rs:236:13 [INFO] [stderr] | [INFO] [stderr] 236 | for ref item in vec { [INFO] [stderr] | ^^^^^^^^ --- help: try: `let item = &vec;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:489:22 [INFO] [stderr] | [INFO] [stderr] 489 | if val > u16::MAX as u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(u16::MAX)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:508:32 [INFO] [stderr] | [INFO] [stderr] 508 | if expected_val <= u16::MAX as u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(u16::MAX)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:532:23 [INFO] [stderr] | [INFO] [stderr] 532 | if val <= u16::MAX as u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(u16::MAX)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:94:16 [INFO] [stderr] | [INFO] [stderr] 94 | if n > u16::MAX as u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `u32::from(u16::MAX)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/codec.rs:193:25 [INFO] [stderr] | [INFO] [stderr] 193 | self.encode_u32(val as u32) [INFO] [stderr] | ^^^^^^^^^^ help: try: `u32::from(val)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/packet.rs:287:9 [INFO] [stderr] | [INFO] [stderr] 287 | (*self as u32).write_to_packet(packet) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(*self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/proto/packet.rs:305:9 [INFO] [stderr] | [INFO] [stderr] 305 | try!(packet.write(&bytes)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/proto/codec.rs:236:13 [INFO] [stderr] | [INFO] [stderr] 236 | for ref item in vec { [INFO] [stderr] | ^^^^^^^^ --- help: try: `let item = &vec;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: The function/method `::read_u32` doesn't need a mutable reference [INFO] [stderr] --> src/proto/packet.rs:383:58 [INFO] [stderr] | [INFO] [stderr] 383 | let message_len = LittleEndian::read_u32(&mut self.buffer) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/proto/packet.rs:287:9 [INFO] [stderr] | [INFO] [stderr] 287 | (*self as u32).write_to_packet(packet) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(*self)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/proto/packet.rs:305:9 [INFO] [stderr] | [INFO] [stderr] 305 | try!(packet.write(&bytes)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: The function/method `::read_u32` doesn't need a mutable reference [INFO] [stderr] --> src/proto/packet.rs:383:58 [INFO] [stderr] | [INFO] [stderr] 383 | let message_len = LittleEndian::read_u32(&mut self.buffer) as usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/proto/server/request.rs:340:12 [INFO] [stderr] | [INFO] [stderr] 340 | if password.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!password.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/proto/server/request.rs:340:12 [INFO] [stderr] | [INFO] [stderr] 340 | if password.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!password.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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/proto/server/response.rs:831:9 [INFO] [stderr] | [INFO] [stderr] 831 | / let mut operators = vec![]; [INFO] [stderr] 832 | | if self.has_remaining() { [INFO] [stderr] 833 | | owner = Some(self.decode()?); [INFO] [stderr] 834 | | operators = self.decode()?; [INFO] [stderr] 835 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let operators = if self.has_remaining() { ..; self.decode()? } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/proto/server/response.rs:831:9 [INFO] [stderr] | [INFO] [stderr] 831 | / let mut operators = vec![]; [INFO] [stderr] 832 | | if self.has_remaining() { [INFO] [stderr] 833 | | owner = Some(self.decode()?); [INFO] [stderr] 834 | | operators = self.decode()?; [INFO] [stderr] 835 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let operators = if self.has_remaining() { ..; self.decode()? } else { < [ _ ] > :: into_vec ( box [ $ ( $ x ) , * ] ) };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [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: this loop could be written as a `while let` loop [INFO] [stderr] --> src/proto/stream.rs:145:9 [INFO] [stderr] | [INFO] [stderr] 145 | / loop { [INFO] [stderr] 146 | | let mut outbuf = match self.queue.pop_front() { [INFO] [stderr] 147 | | Some(outbuf) => outbuf, [INFO] [stderr] 148 | | None => break, [INFO] [stderr] ... | [INFO] [stderr] 163 | | } [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ help: try: `while let Some(outbuf) = self.queue.pop_front() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/proto/stream.rs:204:12 [INFO] [stderr] | [INFO] [stderr] 204 | if self.queue.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.queue.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: manual implementation of an assign operation [INFO] [stderr] --> src/proto/stream.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | event_set = event_set | mio::Ready::writable(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_set |= mio::Ready::writable()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/proto/stream.rs:145:9 [INFO] [stderr] | [INFO] [stderr] 145 | / loop { [INFO] [stderr] 146 | | let mut outbuf = match self.queue.pop_front() { [INFO] [stderr] 147 | | Some(outbuf) => outbuf, [INFO] [stderr] 148 | | None => break, [INFO] [stderr] ... | [INFO] [stderr] 163 | | } [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ help: try: `while let Some(outbuf) = self.queue.pop_front() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/proto/stream.rs:204:12 [INFO] [stderr] | [INFO] [stderr] 204 | if self.queue.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.queue.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: manual implementation of an assign operation [INFO] [stderr] --> src/proto/stream.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | event_set = event_set | mio::Ready::writable(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `event_set |= mio::Ready::writable()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/room.rs:166:16 [INFO] [stderr] | [INFO] [stderr] 166 | if let Some(_) = self.map.insert(name, room) { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 167 | | error!("Room present twice in room list response"); [INFO] [stderr] 168 | | } [INFO] [stderr] | |_________- help: try this: `if self.map.insert(name, room).is_some()` [INFO] [stderr] | [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: redundant pattern matching, consider using `is_some()` [INFO] [stderr] --> src/room.rs:166:16 [INFO] [stderr] | [INFO] [stderr] 166 | if let Some(_) = self.map.insert(name, room) { [INFO] [stderr] | _________- ^^^^^^^ [INFO] [stderr] 167 | | error!("Room present twice in room list response"); [INFO] [stderr] 168 | | } [INFO] [stderr] | |_________- help: try this: `if self.map.insert(name, room).is_some()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `solstice`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `solstice`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "2fb2d97bb3e02db3f99d9dcef973fb3b06b379d8cbc7e7d04c46436662a12ea3"` [INFO] running `"docker" "rm" "-f" "2fb2d97bb3e02db3f99d9dcef973fb3b06b379d8cbc7e7d04c46436662a12ea3"` [INFO] [stdout] 2fb2d97bb3e02db3f99d9dcef973fb3b06b379d8cbc7e7d04c46436662a12ea3