[INFO] crate phoenix-channels 0.1.3 is already in cache [INFO] extracting crate phoenix-channels 0.1.3 into work/ex/clippy-test-run/sources/stable/reg/phoenix-channels/0.1.3 [INFO] extracting crate phoenix-channels 0.1.3 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/phoenix-channels/0.1.3 [INFO] validating manifest of phoenix-channels-0.1.3 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 phoenix-channels-0.1.3 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 phoenix-channels-0.1.3 [INFO] finished frobbing phoenix-channels-0.1.3 [INFO] frobbed toml for phoenix-channels-0.1.3 written to work/ex/clippy-test-run/sources/stable/reg/phoenix-channels/0.1.3/Cargo.toml [INFO] started frobbing phoenix-channels-0.1.3 [INFO] finished frobbing phoenix-channels-0.1.3 [INFO] frobbed toml for phoenix-channels-0.1.3 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/phoenix-channels/0.1.3/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting phoenix-channels-0.1.3 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/reg/phoenix-channels/0.1.3:/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] 7b3cae0318fea18aa1254d1b9a4b70dc04ff867dd20eaef9bd9d2e36b5fc31da [INFO] running `"docker" "start" "-a" "7b3cae0318fea18aa1254d1b9a4b70dc04ff867dd20eaef9bd9d2e36b5fc31da"` [INFO] [stderr] Checking websocket v0.20.4 [INFO] [stderr] Checking phoenix-channels v0.1.3 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/client.rs:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [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:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | sender_ref: sender_ref, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sender_ref` [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:147:13 [INFO] [stderr] | [INFO] [stderr] 147 | receiver: receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `receiver` [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/receiver.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | 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/receiver.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | reader: reader, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `reader` [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/sender.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | 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/sender.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | writer: writer, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `writer` [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:91:13 [INFO] [stderr] | [INFO] [stderr] 91 | logger: logger, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `logger` [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:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | sender_ref: sender_ref, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `sender_ref` [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:147:13 [INFO] [stderr] | [INFO] [stderr] 147 | receiver: receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `receiver` [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/receiver.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | 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/receiver.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | reader: reader, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `reader` [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/sender.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | 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/sender.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | writer: writer, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `writer` [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: unneeded return statement [INFO] [stderr] --> src/client.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | return ClientError::Connect(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ClientError::Connect(e)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | return ClientError::Join(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ClientError::Join(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | return Ok((sender, receiver)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((sender, receiver))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | return Ok((client, rx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((client, rx))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | return ClientError::Connect(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ClientError::Connect(e)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | return ClientError::Join(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ClientError::Join(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | return Ok((sender, receiver)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((sender, receiver))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | return Ok((client, rx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((client, rx))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / return thread::spawn(move || { [INFO] [stderr] 102 | | loop { [INFO] [stderr] 103 | | thread::sleep(Duration::from_secs(2)); [INFO] [stderr] 104 | | // if the mutex is poisoned then the whole thread wont work [INFO] [stderr] ... | [INFO] [stderr] 107 | | } [INFO] [stderr] 108 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 101 | thread::spawn(move || { [INFO] [stderr] 102 | loop { [INFO] [stderr] 103 | thread::sleep(Duration::from_secs(2)); [INFO] [stderr] 104 | // if the mutex is poisoned then the whole thread wont work [INFO] [stderr] 105 | let mut sender = sender_ref.lock().unwrap(); [INFO] [stderr] 106 | sender.heartbeat(); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | / return thread::spawn(move || { [INFO] [stderr] 113 | | for message in MessageIterator::new(receiver) { [INFO] [stderr] 114 | | let result = sender.send(message); [INFO] [stderr] 115 | | [INFO] [stderr] ... | [INFO] [stderr] 120 | | } [INFO] [stderr] 121 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 112 | thread::spawn(move || { [INFO] [stderr] 113 | for message in MessageIterator::new(receiver) { [INFO] [stderr] 114 | let result = sender.send(message); [INFO] [stderr] 115 | [INFO] [stderr] 116 | // exit the thread cleanly if the channel is closed [INFO] [stderr] 117 | if result.is_err() { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:125:9 [INFO] [stderr] | [INFO] [stderr] 125 | / return match self.sender_ref.lock() { [INFO] [stderr] 126 | | Ok(mut sender) => Ok(sender.join(channel)?), [INFO] [stderr] 127 | | Err(_) => Err(ClientError::Thread(String::from("Cannot join as sender mutex has been poisoned"))), [INFO] [stderr] 128 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 125 | match self.sender_ref.lock() { [INFO] [stderr] 126 | Ok(mut sender) => Ok(sender.join(channel)?), [INFO] [stderr] 127 | Err(_) => Err(ClientError::Thread(String::from("Cannot join as sender mutex has been poisoned"))), [INFO] [stderr] 128 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | return Ok(()); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:156:9 [INFO] [stderr] | [INFO] [stderr] 156 | return self.receiver.next(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.receiver.next()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/receiver.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | return Some(Message::from_result(result)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(Message::from_result(result))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sender.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | return Ok(self.join_ref); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self.join_ref)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sender.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | return Ok(self.message_ref); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self.message_ref)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | / return thread::spawn(move || { [INFO] [stderr] 102 | | loop { [INFO] [stderr] 103 | | thread::sleep(Duration::from_secs(2)); [INFO] [stderr] 104 | | // if the mutex is poisoned then the whole thread wont work [INFO] [stderr] ... | [INFO] [stderr] 107 | | } [INFO] [stderr] 108 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 101 | thread::spawn(move || { [INFO] [stderr] 102 | loop { [INFO] [stderr] 103 | thread::sleep(Duration::from_secs(2)); [INFO] [stderr] 104 | // if the mutex is poisoned then the whole thread wont work [INFO] [stderr] 105 | let mut sender = sender_ref.lock().unwrap(); [INFO] [stderr] 106 | sender.heartbeat(); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 112 | / return thread::spawn(move || { [INFO] [stderr] 113 | | for message in MessageIterator::new(receiver) { [INFO] [stderr] 114 | | let result = sender.send(message); [INFO] [stderr] 115 | | [INFO] [stderr] ... | [INFO] [stderr] 120 | | } [INFO] [stderr] 121 | | }); [INFO] [stderr] | |___________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 112 | thread::spawn(move || { [INFO] [stderr] 113 | for message in MessageIterator::new(receiver) { [INFO] [stderr] 114 | let result = sender.send(message); [INFO] [stderr] 115 | [INFO] [stderr] 116 | // exit the thread cleanly if the channel is closed [INFO] [stderr] 117 | if result.is_err() { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:125:9 [INFO] [stderr] | [INFO] [stderr] 125 | / return match self.sender_ref.lock() { [INFO] [stderr] 126 | | Ok(mut sender) => Ok(sender.join(channel)?), [INFO] [stderr] 127 | | Err(_) => Err(ClientError::Thread(String::from("Cannot join as sender mutex has been poisoned"))), [INFO] [stderr] 128 | | }; [INFO] [stderr] | |__________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 125 | match self.sender_ref.lock() { [INFO] [stderr] 126 | Ok(mut sender) => Ok(sender.join(channel)?), [INFO] [stderr] 127 | Err(_) => Err(ClientError::Thread(String::from("Cannot join as sender mutex has been poisoned"))), [INFO] [stderr] 128 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | return Ok(()); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/client.rs:156:9 [INFO] [stderr] | [INFO] [stderr] 156 | return self.receiver.next(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.receiver.next()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/receiver.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | return Some(Message::from_result(result)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(Message::from_result(result))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sender.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | return Ok(self.join_ref); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self.join_ref)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/sender.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | return Ok(self.message_ref); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(self.message_ref)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/message.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return Ok(message); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(message)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/message.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | return Message::from_owned(result?); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Message::from_owned(result?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | return MessageError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `MessageError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return MessageError::Json(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `MessageError::Json(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return ConnectError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | return ConnectError::Parse(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::Parse(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | return ConnectError::IO(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::IO(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return JoinError::Json(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JoinError::Json(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | return JoinError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JoinError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/message.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | return Ok(message); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(message)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/message.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | return Message::from_owned(result?); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Message::from_owned(result?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | return MessageError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `MessageError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return MessageError::Json(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `MessageError::Json(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return ConnectError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | return ConnectError::Parse(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::Parse(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | return ConnectError::IO(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `ConnectError::IO(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return JoinError::Json(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JoinError::Json(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/error.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | return JoinError::WebSocket(e); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `JoinError::WebSocket(e)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: field is never used: `logger` [INFO] [stderr] --> src/client.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | logger: slog::Logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `logger` [INFO] [stderr] --> src/receiver.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | logger: slog::Logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `logger` [INFO] [stderr] --> src/client.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 71 | logger: slog::Logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `logger` [INFO] [stderr] --> src/receiver.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | logger: slog::Logger, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/client.rs:46:25 [INFO] [stderr] | [INFO] [stderr] 46 | let logger = logger.unwrap_or(slog::Logger::root(slog_stdlog::StdLog.fuse(), o!())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| slog::Logger::root(slog_stdlog::StdLog.fuse(), o!()))` [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 `unwrap_or` followed by a function call [INFO] [stderr] --> src/client.rs:79:29 [INFO] [stderr] | [INFO] [stderr] 79 | let logger = logger.unwrap_or(slog::Logger::root(slog_stdlog::StdLog.fuse(), o!())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| slog::Logger::root(slog_stdlog::StdLog.fuse(), o!()))` [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/client.rs:46:25 [INFO] [stderr] | [INFO] [stderr] 46 | let logger = logger.unwrap_or(slog::Logger::root(slog_stdlog::StdLog.fuse(), o!())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| slog::Logger::root(slog_stdlog::StdLog.fuse(), o!()))` [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/client.rs:106:17 [INFO] [stderr] | [INFO] [stderr] 106 | sender.heartbeat(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/client.rs:79:29 [INFO] [stderr] | [INFO] [stderr] 79 | let logger = logger.unwrap_or(slog::Logger::root(slog_stdlog::StdLog.fuse(), o!())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| slog::Logger::root(slog_stdlog::StdLog.fuse(), o!()))` [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/client.rs:106:17 [INFO] [stderr] | [INFO] [stderr] 106 | sender.heartbeat(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.52s [INFO] running `"docker" "inspect" "7b3cae0318fea18aa1254d1b9a4b70dc04ff867dd20eaef9bd9d2e36b5fc31da"` [INFO] running `"docker" "rm" "-f" "7b3cae0318fea18aa1254d1b9a4b70dc04ff867dd20eaef9bd9d2e36b5fc31da"` [INFO] [stdout] 7b3cae0318fea18aa1254d1b9a4b70dc04ff867dd20eaef9bd9d2e36b5fc31da