[INFO] crate humanize-rs 0.1.5 is already in cache [INFO] extracting crate humanize-rs 0.1.5 into work/ex/clippy-test-run/sources/stable/reg/humanize-rs/0.1.5 [INFO] extracting crate humanize-rs 0.1.5 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/humanize-rs/0.1.5 [INFO] validating manifest of humanize-rs-0.1.5 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 humanize-rs-0.1.5 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 humanize-rs-0.1.5 [INFO] finished frobbing humanize-rs-0.1.5 [INFO] frobbed toml for humanize-rs-0.1.5 written to work/ex/clippy-test-run/sources/stable/reg/humanize-rs/0.1.5/Cargo.toml [INFO] started frobbing humanize-rs-0.1.5 [INFO] finished frobbing humanize-rs-0.1.5 [INFO] frobbed toml for humanize-rs-0.1.5 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/humanize-rs/0.1.5/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 humanize-rs-0.1.5 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/humanize-rs/0.1.5:/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 -Dclippy::into_iter_on_array" "-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] 3a1e6069d0bec54a68ca484a92c56ff79e833e61c0226095f5023095eef48cea [INFO] running `"docker" "start" "-a" "3a1e6069d0bec54a68ca484a92c56ff79e833e61c0226095f5023095eef48cea"` [INFO] [stderr] Checking humanize-rs v0.1.5 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/time/mod.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | sec: sec, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `sec` [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/time/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | nano: nano, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `nano` [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/time/mod.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | sec: sec, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `sec` [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/time/mod.rs:154:13 [INFO] [stderr] | [INFO] [stderr] 154 | nano: nano, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `nano` [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/bytes/mod.rs:172:9 [INFO] [stderr] | [INFO] [stderr] 172 | return self.0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `self.0` [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/time/timezone.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return self.0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `self.0` [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: long literal lacking separators [INFO] [stderr] --> src/time/mod.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | const MAX_SECONDS: u64 = 315569433600; [INFO] [stderr] | ^^^^^^^^^^^^ help: consider: `315_569_433_600` [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/time/mod.rs:35:10 [INFO] [stderr] | [INFO] [stderr] 35 | sec: 62167132800, [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `62_167_132_800` [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: unneeded return statement [INFO] [stderr] --> src/time/mod.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `y % 4 == 0 && (y % 100 != 0 || y % 400 == 0)` [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/time/mod.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | return min <= n && n <= max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `min <= n && n <= max` [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: this if statement can be collapsed [INFO] [stderr] --> src/time/mod.rs:300:5 [INFO] [stderr] | [INFO] [stderr] 300 | / if bs.len() > DATE_TIME_FORMAT_MIN_LENGTH { [INFO] [stderr] 301 | | if (bs[DATE_TIME_FORMAT_MIN_LENGTH] != b'T' && bs[DATE_TIME_FORMAT_MIN_LENGTH] != b' ') [INFO] [stderr] 302 | | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 3] != b':' [INFO] [stderr] 303 | | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 6] != b':' [INFO] [stderr] ... | [INFO] [stderr] 306 | | } [INFO] [stderr] 307 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 300 | if bs.len() > DATE_TIME_FORMAT_MIN_LENGTH && ((bs[DATE_TIME_FORMAT_MIN_LENGTH] != b'T' && bs[DATE_TIME_FORMAT_MIN_LENGTH] != b' ') [INFO] [stderr] 301 | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 3] != b':' [INFO] [stderr] 302 | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 6] != b':') { [INFO] [stderr] 303 | return false; [INFO] [stderr] 304 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/time/mod.rs:309:5 [INFO] [stderr] | [INFO] [stderr] 309 | / if bs.len() > DATE_TIME_FORMAT_WITH_TIME { [INFO] [stderr] 310 | | if bs[DATE_TIME_FORMAT_WITH_TIME] != b'.' [INFO] [stderr] 311 | | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'Z' [INFO] [stderr] 312 | | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'+' [INFO] [stderr] ... | [INFO] [stderr] 316 | | } [INFO] [stderr] 317 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 309 | if bs.len() > DATE_TIME_FORMAT_WITH_TIME && bs[DATE_TIME_FORMAT_WITH_TIME] != b'.' [INFO] [stderr] 310 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'Z' [INFO] [stderr] 311 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'+' [INFO] [stderr] 312 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'-' { [INFO] [stderr] 313 | return false; [INFO] [stderr] 314 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/bytes/mod.rs:172:9 [INFO] [stderr] | [INFO] [stderr] 172 | return self.0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `self.0` [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/time/timezone.rs:53:9 [INFO] [stderr] | [INFO] [stderr] 53 | return self.0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `self.0` [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: long literal lacking separators [INFO] [stderr] --> src/time/mod.rs:33:26 [INFO] [stderr] | [INFO] [stderr] 33 | const MAX_SECONDS: u64 = 315569433600; [INFO] [stderr] | ^^^^^^^^^^^^ help: consider: `315_569_433_600` [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/time/mod.rs:35:10 [INFO] [stderr] | [INFO] [stderr] 35 | sec: 62167132800, [INFO] [stderr] | ^^^^^^^^^^^ help: consider: `62_167_132_800` [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: unneeded return statement [INFO] [stderr] --> src/time/mod.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `y % 4 == 0 && (y % 100 != 0 || y % 400 == 0)` [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/time/mod.rs:190:5 [INFO] [stderr] | [INFO] [stderr] 190 | return min <= n && n <= max; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `min <= n && n <= max` [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: this if statement can be collapsed [INFO] [stderr] --> src/time/mod.rs:300:5 [INFO] [stderr] | [INFO] [stderr] 300 | / if bs.len() > DATE_TIME_FORMAT_MIN_LENGTH { [INFO] [stderr] 301 | | if (bs[DATE_TIME_FORMAT_MIN_LENGTH] != b'T' && bs[DATE_TIME_FORMAT_MIN_LENGTH] != b' ') [INFO] [stderr] 302 | | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 3] != b':' [INFO] [stderr] 303 | | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 6] != b':' [INFO] [stderr] ... | [INFO] [stderr] 306 | | } [INFO] [stderr] 307 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 300 | if bs.len() > DATE_TIME_FORMAT_MIN_LENGTH && ((bs[DATE_TIME_FORMAT_MIN_LENGTH] != b'T' && bs[DATE_TIME_FORMAT_MIN_LENGTH] != b' ') [INFO] [stderr] 301 | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 3] != b':' [INFO] [stderr] 302 | || bs[DATE_TIME_FORMAT_MIN_LENGTH + 6] != b':') { [INFO] [stderr] 303 | return false; [INFO] [stderr] 304 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/time/mod.rs:309:5 [INFO] [stderr] | [INFO] [stderr] 309 | / if bs.len() > DATE_TIME_FORMAT_WITH_TIME { [INFO] [stderr] 310 | | if bs[DATE_TIME_FORMAT_WITH_TIME] != b'.' [INFO] [stderr] 311 | | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'Z' [INFO] [stderr] 312 | | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'+' [INFO] [stderr] ... | [INFO] [stderr] 316 | | } [INFO] [stderr] 317 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 309 | if bs.len() > DATE_TIME_FORMAT_WITH_TIME && bs[DATE_TIME_FORMAT_WITH_TIME] != b'.' [INFO] [stderr] 310 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'Z' [INFO] [stderr] 311 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'+' [INFO] [stderr] 312 | && bs[DATE_TIME_FORMAT_WITH_TIME] != b'-' { [INFO] [stderr] 313 | return false; [INFO] [stderr] 314 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:16:40 [INFO] [stderr] | [INFO] [stderr] 16 | expect: Some(Duration::new(1514736000, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_514_736_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:20:40 [INFO] [stderr] | [INFO] [stderr] 20 | expect: Some(Duration::new(1517414400, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_517_414_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:24:40 [INFO] [stderr] | [INFO] [stderr] 24 | expect: Some(Duration::new(1519833600, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_519_833_600` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:28:40 [INFO] [stderr] | [INFO] [stderr] 28 | expect: Some(Duration::new(1522512000, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_522_512_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:32:40 [INFO] [stderr] | [INFO] [stderr] 32 | expect: Some(Duration::new(1525104000, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_525_104_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:36:40 [INFO] [stderr] | [INFO] [stderr] 36 | expect: Some(Duration::new(1527782400, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_527_782_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:40:40 [INFO] [stderr] | [INFO] [stderr] 40 | expect: Some(Duration::new(1530374400, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_530_374_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:44:40 [INFO] [stderr] | [INFO] [stderr] 44 | expect: Some(Duration::new(1533052800, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_533_052_800` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:48:40 [INFO] [stderr] | [INFO] [stderr] 48 | expect: Some(Duration::new(1535731200, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_535_731_200` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:52:40 [INFO] [stderr] | [INFO] [stderr] 52 | expect: Some(Duration::new(1538323200, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_538_323_200` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:56:40 [INFO] [stderr] | [INFO] [stderr] 56 | expect: Some(Duration::new(1541001600, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_541_001_600` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:60:40 [INFO] [stderr] | [INFO] [stderr] 60 | expect: Some(Duration::new(1543593600, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_543_593_600` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:70:17 [INFO] [stderr] | [INFO] [stderr] 70 | 234867232, [INFO] [stderr] | ^^^^^^^^^ help: consider: `234_867_232` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:73:40 [INFO] [stderr] | [INFO] [stderr] 73 | expect: Some(Duration::new(1537520204, 234867232)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `1_537_520_204` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:73:52 [INFO] [stderr] | [INFO] [stderr] 73 | expect: Some(Duration::new(1537520204, 234867232)), [INFO] [stderr] | ^^^^^^^^^ help: consider: `234_867_232` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:77:40 [INFO] [stderr] | [INFO] [stderr] 77 | expect: Some(Duration::new(949334400, 0)), [INFO] [stderr] | ^^^^^^^^^ help: consider: `949_334_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:81:40 [INFO] [stderr] | [INFO] [stderr] 81 | expect: Some(Duration::new(951840000, 0)), [INFO] [stderr] | ^^^^^^^^^ help: consider: `951_840_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:85:40 [INFO] [stderr] | [INFO] [stderr] 85 | expect: Some(Duration::new(4105094400, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_105_094_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:89:40 [INFO] [stderr] | [INFO] [stderr] 89 | expect: Some(Duration::new(4107513600, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_107_513_600` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:93:40 [INFO] [stderr] | [INFO] [stderr] 93 | expect: Some(Duration::new(4231238400, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_231_238_400` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:97:40 [INFO] [stderr] | [INFO] [stderr] 97 | expect: Some(Duration::new(4233744000, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_233_744_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:101:40 [INFO] [stderr] | [INFO] [stderr] 101 | expect: Some(Duration::new(4262860800, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_262_860_800` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:105:40 [INFO] [stderr] | [INFO] [stderr] 105 | expect: Some(Duration::new(4265280000, 0)), [INFO] [stderr] | ^^^^^^^^^^ help: consider: `4_265_280_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:239:60 [INFO] [stderr] | [INFO] [stderr] 239 | Time::from_timetuple(2006, 1, 2, 15, 4, 5, 999999999, TimeZone::utc()).unwrap(), [INFO] [stderr] | ^^^^^^^^^ help: consider: `999_999_999` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:245:60 [INFO] [stderr] | [INFO] [stderr] 245 | Time::from_timetuple(2006, 1, 2, 15, 4, 5, 123000000, TimeZone::utc()).unwrap(), [INFO] [stderr] | ^^^^^^^^^ help: consider: `123_000_000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:257:17 [INFO] [stderr] | [INFO] [stderr] 257 | 234867232, [INFO] [stderr] | ^^^^^^^^^ help: consider: `234_867_232` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/time/tests.rs:362:13 [INFO] [stderr] | [INFO] [stderr] 362 | 234867232, [INFO] [stderr] | ^^^^^^^^^ help: consider: `234_867_232` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bytes/mod.rs:76:21 [INFO] [stderr] | [INFO] [stderr] 76 | fn size(&self) -> Result { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/bytes/mod.rs:161:5 [INFO] [stderr] | [INFO] [stderr] 161 | / pub fn new(value: T, unit: Unit) -> Result, ParseError> { [INFO] [stderr] 162 | | let unit_size = unit.size::()?; [INFO] [stderr] 163 | | let size = value.checked_mul(unit_size).ok_or(ParseError::Overflow)?; [INFO] [stderr] 164 | | [INFO] [stderr] 165 | | Ok(Bytes(size)) [INFO] [stderr] 166 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/bytes/mod.rs:188:14 [INFO] [stderr] | [INFO] [stderr] 188 | .unwrap_or(input.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| input.len())` [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: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/duration/mod.rs:82:45 [INFO] [stderr] | [INFO] [stderr] 82 | .and_then(|res| res.checked_add((c - DIGIT_MIN) as u64)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(c - DIGIT_MIN)` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 37 | impl_int!(u8); [INFO] [stderr] | -------------- in this macro invocation [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 40 | impl_int!(u16); [INFO] [stderr] | --------------- in this macro invocation [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 43 | impl_int!(u32); [INFO] [stderr] | --------------- in this macro invocation [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: Negation by multiplying with -1 [INFO] [stderr] --> src/time/timezone.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | 3600 * -1, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::neg_multiply)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time/timezone.rs:52:19 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn offset(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/time/mod.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | / pub fn from_timetuple( [INFO] [stderr] 78 | | year: u32, [INFO] [stderr] 79 | | month: u32, [INFO] [stderr] 80 | | day: u32, [INFO] [stderr] ... | [INFO] [stderr] 155 | | }) [INFO] [stderr] 156 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:131:28 [INFO] [stderr] | [INFO] [stderr] 131 | let mut sec: u64 = d as u64 * SECS_PER_DAY [INFO] [stderr] | ^^^^^^^^ help: try: `u64::from(d)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:132:15 [INFO] [stderr] | [INFO] [stderr] 132 | + hour as u64 * SECS_PER_HOUR [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(hour)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:133:15 [INFO] [stderr] | [INFO] [stderr] 133 | + minute as u64 * SECS_PER_MINUTE [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(minute)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:134:15 [INFO] [stderr] | [INFO] [stderr] 134 | + second as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(second)` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/time/mod.rs:256:5 [INFO] [stderr] | [INFO] [stderr] 256 | / let second: u32; [INFO] [stderr] 257 | | if size > DATE_TIME_FORMAT_MIN_LENGTH { [INFO] [stderr] 258 | | hour = read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 1..DATE_TIME_FORMAT_MIN_LENGTH + 3])?; [INFO] [stderr] 259 | | minute = read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 4..DATE_TIME_FORMAT_MIN_LENGTH + 6])?; [INFO] [stderr] ... | [INFO] [stderr] 264 | | second = 0; [INFO] [stderr] 265 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let second = if size > DATE_TIME_FORMAT_MIN_LENGTH { ..; read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 7..DATE_TIME_FORMAT_MIN_LENGTH + 9])? } else { ..; 0 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/time/mod.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | / let tzstr: &str; [INFO] [stderr] 269 | | if size > DATE_TIME_FORMAT_WITH_TIME { [INFO] [stderr] 270 | | let tz_start: usize; [INFO] [stderr] 271 | | if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { [INFO] [stderr] ... | [INFO] [stderr] 286 | | tzstr = ""; [INFO] [stderr] 287 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let tzstr = if size > DATE_TIME_FORMAT_WITH_TIME { ..; from_utf8(&bs[tz_start..]).or(Err(ParseError::InvalidTimezone))? } else { ..; "" };` [INFO] [stderr] | [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/time/mod.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | / let tz_start: usize; [INFO] [stderr] 271 | | if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { [INFO] [stderr] 272 | | let (v, read) = read_nano(&bs[DATE_TIME_FORMAT_WITH_TIME + 1..]); [INFO] [stderr] 273 | | if read == 0 { [INFO] [stderr] ... | [INFO] [stderr] 280 | | tz_start = DATE_TIME_FORMAT_WITH_TIME; [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let tz_start = if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { ..; DATE_TIME_FORMAT_WITH_TIME + 1 + read } else { ..; DATE_TIME_FORMAT_WITH_TIME };` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | n = n * 10; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `n *= 10` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:333:14 [INFO] [stderr] | [INFO] [stderr] 333 | n += (c - b'0') as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c - b'0')` [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:351:9 [INFO] [stderr] | [INFO] [stderr] 351 | n = n * 10; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `n *= 10` [INFO] [stderr] | [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:352:14 [INFO] [stderr] | [INFO] [stderr] 352 | n += (c - b'0') as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c - b'0')` [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:358:9 [INFO] [stderr] | [INFO] [stderr] 358 | n = n * 10_u32.pow((9 - read) as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n *= 10_u32.pow((9 - read) as u32)` [INFO] [stderr] | [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 argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/bytes/mod.rs:76:21 [INFO] [stderr] | [INFO] [stderr] 76 | fn size(&self) -> Result { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/bytes/mod.rs:161:5 [INFO] [stderr] | [INFO] [stderr] 161 | / pub fn new(value: T, unit: Unit) -> Result, ParseError> { [INFO] [stderr] 162 | | let unit_size = unit.size::()?; [INFO] [stderr] 163 | | let size = value.checked_mul(unit_size).ok_or(ParseError::Overflow)?; [INFO] [stderr] 164 | | [INFO] [stderr] 165 | | Ok(Bytes(size)) [INFO] [stderr] 166 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a function call [INFO] [stderr] --> src/bytes/mod.rs:188:14 [INFO] [stderr] | [INFO] [stderr] 188 | .unwrap_or(input.len()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| input.len())` [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: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/duration/mod.rs:82:45 [INFO] [stderr] | [INFO] [stderr] 82 | .and_then(|res| res.checked_add((c - DIGIT_MIN) as u64)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(c - DIGIT_MIN)` [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 u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 37 | impl_int!(u8); [INFO] [stderr] | -------------- in this macro invocation [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 u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 40 | impl_int!(u16); [INFO] [stderr] | --------------- in this macro invocation [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/num/mod.rs:25:27 [INFO] [stderr] | [INFO] [stderr] 25 | let max = $dst::MAX as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `u64::from($dst::MAX)` [INFO] [stderr] ... [INFO] [stderr] 43 | impl_int!(u32); [INFO] [stderr] | --------------- in this macro invocation [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 i16 to i32 may become silently lossy if types change [INFO] [stderr] --> src/num/tests.rs:12:30 [INFO] [stderr] | [INFO] [stderr] 12 | assert_eq!(res_i32, Some(i16::MAX as i32)); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `i32::from(i16::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: Negation by multiplying with -1 [INFO] [stderr] --> src/time/timezone.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | 3600 * -1, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::neg_multiply)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_multiply [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/time/timezone.rs:52:19 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn offset(&self) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/time/mod.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | / pub fn from_timetuple( [INFO] [stderr] 78 | | year: u32, [INFO] [stderr] 79 | | month: u32, [INFO] [stderr] 80 | | day: u32, [INFO] [stderr] ... | [INFO] [stderr] 155 | | }) [INFO] [stderr] 156 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:131:28 [INFO] [stderr] | [INFO] [stderr] 131 | let mut sec: u64 = d as u64 * SECS_PER_DAY [INFO] [stderr] | ^^^^^^^^ help: try: `u64::from(d)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:132:15 [INFO] [stderr] | [INFO] [stderr] 132 | + hour as u64 * SECS_PER_HOUR [INFO] [stderr] | ^^^^^^^^^^^ help: try: `u64::from(hour)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:133:15 [INFO] [stderr] | [INFO] [stderr] 133 | + minute as u64 * SECS_PER_MINUTE [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(minute)` [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 u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:134:15 [INFO] [stderr] | [INFO] [stderr] 134 | + second as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(second)` [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: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/time/mod.rs:256:5 [INFO] [stderr] | [INFO] [stderr] 256 | / let second: u32; [INFO] [stderr] 257 | | if size > DATE_TIME_FORMAT_MIN_LENGTH { [INFO] [stderr] 258 | | hour = read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 1..DATE_TIME_FORMAT_MIN_LENGTH + 3])?; [INFO] [stderr] 259 | | minute = read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 4..DATE_TIME_FORMAT_MIN_LENGTH + 6])?; [INFO] [stderr] ... | [INFO] [stderr] 264 | | second = 0; [INFO] [stderr] 265 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let second = if size > DATE_TIME_FORMAT_MIN_LENGTH { ..; read_u32(&bs[DATE_TIME_FORMAT_MIN_LENGTH + 7..DATE_TIME_FORMAT_MIN_LENGTH + 9])? } else { ..; 0 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/time/mod.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | / let tzstr: &str; [INFO] [stderr] 269 | | if size > DATE_TIME_FORMAT_WITH_TIME { [INFO] [stderr] 270 | | let tz_start: usize; [INFO] [stderr] 271 | | if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { [INFO] [stderr] ... | [INFO] [stderr] 286 | | tzstr = ""; [INFO] [stderr] 287 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let tzstr = if size > DATE_TIME_FORMAT_WITH_TIME { ..; from_utf8(&bs[tz_start..]).or(Err(ParseError::InvalidTimezone))? } else { ..; "" };` [INFO] [stderr] | [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/time/mod.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | / let tz_start: usize; [INFO] [stderr] 271 | | if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { [INFO] [stderr] 272 | | let (v, read) = read_nano(&bs[DATE_TIME_FORMAT_WITH_TIME + 1..]); [INFO] [stderr] 273 | | if read == 0 { [INFO] [stderr] ... | [INFO] [stderr] 280 | | tz_start = DATE_TIME_FORMAT_WITH_TIME; [INFO] [stderr] 281 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let tz_start = if bs[DATE_TIME_FORMAT_WITH_TIME] == b'.' { ..; DATE_TIME_FORMAT_WITH_TIME + 1 + read } else { ..; DATE_TIME_FORMAT_WITH_TIME };` [INFO] [stderr] | [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | n = n * 10; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `n *= 10` [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:333:14 [INFO] [stderr] | [INFO] [stderr] 333 | n += (c - b'0') as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c - b'0')` [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:351:9 [INFO] [stderr] | [INFO] [stderr] 351 | n = n * 10; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `n *= 10` [INFO] [stderr] | [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: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/time/mod.rs:352:14 [INFO] [stderr] | [INFO] [stderr] 352 | n += (c - b'0') as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(c - b'0')` [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: manual implementation of an assign operation [INFO] [stderr] --> src/time/mod.rs:358:9 [INFO] [stderr] | [INFO] [stderr] 358 | n = n * 10_u32.pow((9 - read) as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `n *= 10_u32.pow((9 - read) as u32)` [INFO] [stderr] | [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/time/tests.rs:135:64 [INFO] [stderr] | [INFO] [stderr] 135 | == Some(SystemTime::UNIX_EPOCH + Duration::new(sec.clone(), 0)), [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `sec` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::clone_on_copy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/time/tests.rs:168:17 [INFO] [stderr] | [INFO] [stderr] 168 | let tuples: Vec<(u32, u32, u32, u32, u32, u32, u32, TimeZone)> = vec![ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.11s [INFO] running `"docker" "inspect" "3a1e6069d0bec54a68ca484a92c56ff79e833e61c0226095f5023095eef48cea"` [INFO] running `"docker" "rm" "-f" "3a1e6069d0bec54a68ca484a92c56ff79e833e61c0226095f5023095eef48cea"` [INFO] [stdout] 3a1e6069d0bec54a68ca484a92c56ff79e833e61c0226095f5023095eef48cea