[INFO] updating cached repository limitee/cronjob [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/limitee/cronjob [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/limitee/cronjob" "work/ex/clippy-test-run/sources/stable/gh/limitee/cronjob"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/limitee/cronjob'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/limitee/cronjob" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/limitee/cronjob"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/limitee/cronjob'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 94b6edd0e8906f51d18e8184ea16dae2ba14d906 [INFO] sha for GitHub repo limitee/cronjob: 94b6edd0e8906f51d18e8184ea16dae2ba14d906 [INFO] validating manifest of limitee/cronjob 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 limitee/cronjob 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 limitee/cronjob [INFO] finished frobbing limitee/cronjob [INFO] frobbed toml for limitee/cronjob written to work/ex/clippy-test-run/sources/stable/gh/limitee/cronjob/Cargo.toml [INFO] started frobbing limitee/cronjob [INFO] finished frobbing limitee/cronjob [INFO] frobbed toml for limitee/cronjob written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/limitee/cronjob/Cargo.toml [INFO] crate limitee/cronjob 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 limitee/cronjob against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-3/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/limitee/cronjob:/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] dff0ffafdc72ce5c3f0b81768985ce8645fdbdd2136f130e021080a237ec55eb [INFO] running `"docker" "start" "-a" "dff0ffafdc72ce5c3f0b81768985ce8645fdbdd2136f130e021080a237ec55eb"` [INFO] [stderr] Checking cronjob v0.0.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | second: second, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `second` [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/lib.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | minute: minute, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `minute` [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/lib.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | hour: hour, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `hour` [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/lib.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | second: second, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `second` [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/lib.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | minute: minute, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `minute` [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/lib.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | hour: hour, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `hour` [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/lib.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | return self.expression.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.expression.clone()` [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/lib.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | return Option::None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Option::None` [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/lib.rs:129:13 [INFO] [stderr] | [INFO] [stderr] 129 | return Option::Some(dt); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Option::Some(dt)` [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/lib.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | return by_four && ((!by_hundred) || by_four_hundred); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `by_four && ((!by_hundred) || by_four_hundred)` [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/lib.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | return self.status; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.status` [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: unnecessary parentheses around method argument [INFO] [stderr] --> src/lib.rs:240:41 [INFO] [stderr] | [INFO] [stderr] 240 | tx.send((x)).unwrap(); [INFO] [stderr] | ^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:240:41 [INFO] [stderr] | [INFO] [stderr] 240 | tx.send((x)).unwrap(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/lib.rs:248:33 [INFO] [stderr] | [INFO] [stderr] 248 | tx.send((Local::now())).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:248:33 [INFO] [stderr] | [INFO] [stderr] 248 | tx.send((Local::now())).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:97:9 [INFO] [stderr] | [INFO] [stderr] 97 | return self.expression.clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.expression.clone()` [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/lib.rs:126:13 [INFO] [stderr] | [INFO] [stderr] 126 | return Option::None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Option::None` [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/lib.rs:129:13 [INFO] [stderr] | [INFO] [stderr] 129 | return Option::Some(dt); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Option::Some(dt)` [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/lib.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | return by_four && ((!by_hundred) || by_four_hundred); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `by_four && ((!by_hundred) || by_four_hundred)` [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/lib.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | return self.status; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.status` [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: unnecessary parentheses around method argument [INFO] [stderr] --> src/lib.rs:240:41 [INFO] [stderr] | [INFO] [stderr] 240 | tx.send((x)).unwrap(); [INFO] [stderr] | ^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:240:41 [INFO] [stderr] | [INFO] [stderr] 240 | tx.send((x)).unwrap(); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around method argument [INFO] [stderr] --> src/lib.rs:248:33 [INFO] [stderr] | [INFO] [stderr] 248 | tx.send((Local::now())).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/lib.rs:248:33 [INFO] [stderr] | [INFO] [stderr] 248 | tx.send((Local::now())).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | pub fn to_right_position(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:106:27 [INFO] [stderr] | [INFO] [stderr] 106 | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.hour[self.cur_hour as usize]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:107:22 [INFO] [stderr] | [INFO] [stderr] 107 | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.minute[self.cur_minute as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:108:22 [INFO] [stderr] | [INFO] [stderr] 108 | *self.second.get(self.cur_second as usize).unwrap() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.second[self.cur_second as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: defining a method called `next` on this type; consider implementing the `std::iter::Iterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:120:5 [INFO] [stderr] | [INFO] [stderr] 120 | / pub fn next(&mut self) -> Option> { [INFO] [stderr] 121 | | let dt = Local.ymd(self.cur_year, self.cur_month as u32, self.cur_day as u32) [INFO] [stderr] 122 | | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] 123 | | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] ... | [INFO] [stderr] 130 | | } [INFO] [stderr] 131 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:122:23 [INFO] [stderr] | [INFO] [stderr] 122 | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.hour[self.cur_hour as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:123:18 [INFO] [stderr] | [INFO] [stderr] 123 | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.minute[self.cur_minute as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:124:18 [INFO] [stderr] | [INFO] [stderr] 124 | *self.second.get(self.cur_second as usize).unwrap() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.second[self.cur_second as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:238:25 [INFO] [stderr] | [INFO] [stderr] 238 | / match job.next() { [INFO] [stderr] 239 | | Some(x) => { [INFO] [stderr] 240 | | tx.send((x)).unwrap(); [INFO] [stderr] 241 | | }, [INFO] [stderr] 242 | | None => { [INFO] [stderr] 243 | | }, [INFO] [stderr] 244 | | } [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 238 | if let Some(x) = job.next() { [INFO] [stderr] 239 | tx.send((x)).unwrap(); [INFO] [stderr] 240 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:103:30 [INFO] [stderr] | [INFO] [stderr] 103 | pub fn to_right_position(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:106:27 [INFO] [stderr] | [INFO] [stderr] 106 | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.hour[self.cur_hour as usize]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:107:22 [INFO] [stderr] | [INFO] [stderr] 107 | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.minute[self.cur_minute as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:108:22 [INFO] [stderr] | [INFO] [stderr] 108 | *self.second.get(self.cur_second as usize).unwrap() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.second[self.cur_second as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: defining a method called `next` on this type; consider implementing the `std::iter::Iterator` trait or choosing a less ambiguous name [INFO] [stderr] --> src/lib.rs:120:5 [INFO] [stderr] | [INFO] [stderr] 120 | / pub fn next(&mut self) -> Option> { [INFO] [stderr] 121 | | let dt = Local.ymd(self.cur_year, self.cur_month as u32, self.cur_day as u32) [INFO] [stderr] 122 | | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] 123 | | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] ... | [INFO] [stderr] 130 | | } [INFO] [stderr] 131 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::should_implement_trait)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:122:23 [INFO] [stderr] | [INFO] [stderr] 122 | .and_hms(*self.hour.get(self.cur_hour as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.hour[self.cur_hour as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:123:18 [INFO] [stderr] | [INFO] [stderr] 123 | *self.minute.get(self.cur_minute as usize).unwrap() as u32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.minute[self.cur_minute as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a Vec. Using `[]` is more clear and more concise [INFO] [stderr] --> src/lib.rs:124:18 [INFO] [stderr] | [INFO] [stderr] 124 | *self.second.get(self.cur_second as usize).unwrap() as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.second[self.cur_second as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/lib.rs:238:25 [INFO] [stderr] | [INFO] [stderr] 238 | / match job.next() { [INFO] [stderr] 239 | | Some(x) => { [INFO] [stderr] 240 | | tx.send((x)).unwrap(); [INFO] [stderr] 241 | | }, [INFO] [stderr] 242 | | None => { [INFO] [stderr] 243 | | }, [INFO] [stderr] 244 | | } [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 238 | if let Some(x) = job.next() { [INFO] [stderr] 239 | tx.send((x)).unwrap(); [INFO] [stderr] 240 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.40s [INFO] running `"docker" "inspect" "dff0ffafdc72ce5c3f0b81768985ce8645fdbdd2136f130e021080a237ec55eb"` [INFO] running `"docker" "rm" "-f" "dff0ffafdc72ce5c3f0b81768985ce8645fdbdd2136f130e021080a237ec55eb"` [INFO] [stdout] dff0ffafdc72ce5c3f0b81768985ce8645fdbdd2136f130e021080a237ec55eb