[INFO] crate kic 0.1.1 is already in cache [INFO] extracting crate kic 0.1.1 into work/ex/clippy-test-run/sources/stable/reg/kic/0.1.1 [INFO] extracting crate kic 0.1.1 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/kic/0.1.1 [INFO] validating manifest of kic-0.1.1 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 kic-0.1.1 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 kic-0.1.1 [INFO] finished frobbing kic-0.1.1 [INFO] frobbed toml for kic-0.1.1 written to work/ex/clippy-test-run/sources/stable/reg/kic/0.1.1/Cargo.toml [INFO] started frobbing kic-0.1.1 [INFO] finished frobbing kic-0.1.1 [INFO] frobbed toml for kic-0.1.1 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/kic/0.1.1/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 kic-0.1.1 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/kic/0.1.1:/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] c72031c5b5a01fbfbb31c0781010ee173e8ef5ddeeeedb2172da8c0ccd5531d8 [INFO] running `"docker" "start" "-a" "c72031c5b5a01fbfbb31c0781010ee173e8ef5ddeeeedb2172da8c0ccd5531d8"` [INFO] [stderr] Checking kic v0.1.1 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/command/config.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `command` [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/command/config.rs:35:36 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [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/command/config.rs:35:46 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [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/command/ignore.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | Ignore { command: command, paths: paths } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `command` [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/command/ignore.rs:35:36 [INFO] [stderr] | [INFO] [stderr] 35 | Ignore { command: command, paths: paths } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `paths` [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/command/sweep.rs:69:17 [INFO] [stderr] | [INFO] [stderr] 69 | Sweep { option1: option1, option2: option2 } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `option1` [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/command/sweep.rs:69:35 [INFO] [stderr] | [INFO] [stderr] 69 | Sweep { option1: option1, option2: option2 } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `option2` [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/command/burn.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | Burn { option: option } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `option` [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/error.rs:137:23 [INFO] [stderr] | [INFO] [stderr] 137 | ConfigError { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/error.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | CronError { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/error.rs:206:25 [INFO] [stderr] | [INFO] [stderr] 206 | EssentialLack { what: what } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `what` [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/error.rs:230:29 [INFO] [stderr] | [INFO] [stderr] 230 | RunningPlaceError { dir: dir } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [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/error.rs:376:17 [INFO] [stderr] | [INFO] [stderr] 376 | Usage { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib/setting/config.rs:131:18 [INFO] [stderr] | [INFO] [stderr] 131 | Config { toml: toml } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `toml` [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/command/config.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `command` [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/command/config.rs:35:36 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [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/command/config.rs:35:46 [INFO] [stderr] | [INFO] [stderr] 35 | Config { command: command, key: key, value: value } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [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/command/ignore.rs:35:18 [INFO] [stderr] | [INFO] [stderr] 35 | Ignore { command: command, paths: paths } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `command` [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/command/ignore.rs:35:36 [INFO] [stderr] | [INFO] [stderr] 35 | Ignore { command: command, paths: paths } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `paths` [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/command/sweep.rs:69:17 [INFO] [stderr] | [INFO] [stderr] 69 | Sweep { option1: option1, option2: option2 } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `option1` [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/command/sweep.rs:69:35 [INFO] [stderr] | [INFO] [stderr] 69 | Sweep { option1: option1, option2: option2 } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `option2` [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/command/burn.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | Burn { option: option } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `option` [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/error.rs:137:23 [INFO] [stderr] | [INFO] [stderr] 137 | ConfigError { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib/setting/ignore.rs:46:18 [INFO] [stderr] | [INFO] [stderr] 46 | Ignore { entries: entries } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `entries` [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/error.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | CronError { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/error.rs:206:25 [INFO] [stderr] | [INFO] [stderr] 206 | EssentialLack { what: what } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `what` [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/error.rs:230:29 [INFO] [stderr] | [INFO] [stderr] 230 | RunningPlaceError { dir: dir } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib/setting/storage.rs:42:19 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `now` [INFO] [stderr] | [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/setting/storage.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `date` [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/setting/storage.rs:42:90 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `indeed` [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/error.rs:376:17 [INFO] [stderr] | [INFO] [stderr] 376 | Usage { kind: kind } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/lib/setting/config.rs:131:18 [INFO] [stderr] | [INFO] [stderr] 131 | Config { toml: toml } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `toml` [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/setting/ignore.rs:46:18 [INFO] [stderr] | [INFO] [stderr] 46 | Ignore { entries: entries } [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `entries` [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/setting/storage.rs:42:19 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `now` [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/setting/storage.rs:42:29 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `date` [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/setting/storage.rs:42:90 [INFO] [stderr] | [INFO] [stderr] 42 | Storage { now: now, date: date, log_file: format!("{}.log", file_name.as_ref()), indeed: indeed } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `indeed` [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: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/fs.rs:331:5 [INFO] [stderr] | [INFO] [stderr] 331 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/setting/config.rs:603:5 [INFO] [stderr] | [INFO] [stderr] 603 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/setting/config.rs:608:5 [INFO] [stderr] | [INFO] [stderr] 608 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/setting/config.rs:613:5 [INFO] [stderr] | [INFO] [stderr] 613 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/setting/config.rs:629:5 [INFO] [stderr] | [INFO] [stderr] 629 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: argument must be of the form: `expected = "error message"` [INFO] [stderr] --> src/lib/setting/cron.rs:311:1 [INFO] [stderr] | [INFO] [stderr] 311 | #[should_panic(expect = "entered unreachable code")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: Errors in this attribute were erroneously allowed and will become a hard error in a future release. [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/command/version.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | return Usage::new(UsageKind::Version); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Version)` [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/command/init.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return Usage::new(UsageKind::Init); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Init)` [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/command/config.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | return Usage::new(UsageKind::Config); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Config)` [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/command/ignore.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | return Usage::new(UsageKind::Ignore); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Ignore)` [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/command/sweep.rs:17:9 [INFO] [stderr] | [INFO] [stderr] 17 | return Usage::new(UsageKind::Sweep); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Sweep)` [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/command/burn.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return Usage::new(UsageKind::Burn); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Burn)` [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/command/start.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | return Usage::new(UsageKind::Start); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Start)` [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/command/end.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | return Usage::new(UsageKind::End); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::End)` [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/command/destroy.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | return Usage::new(UsageKind::Destroy); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Destroy)` [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/command/patrol.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | return Usage::new(UsageKind::Patrol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Patrol)` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | pub const ME: &'static str = "kic"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:2:21 [INFO] [stderr] | [INFO] [stderr] 2 | pub const VERSION: &'static str = env!("CARGO_PKG_VERSION"); [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:4:22 [INFO] [stderr] | [INFO] [stderr] 4 | pub const MAIN_DIR: &'static str = "."; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub const BANNED_DIRS: [&'static str; 20] = [ [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:53:30 [INFO] [stderr] | [INFO] [stderr] 53 | pub const WORKING_DIR_NAME: &'static str = ".kic"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | pub const STORAGE_DIR_NAME: &'static str = "warehouse"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:55:30 [INFO] [stderr] | [INFO] [stderr] 55 | pub const CONFIG_FILE_NAME: &'static str = "config.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:56:30 [INFO] [stderr] | [INFO] [stderr] 56 | pub const IGNORE_FILE_NAME: &'static str = "ignore"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:20:37 [INFO] [stderr] | [INFO] [stderr] 20 | const CONFIG_KEY_BURN_MORATORIUM : &'static str = "burn.moratorium"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:21:37 [INFO] [stderr] | [INFO] [stderr] 21 | const CONFIG_KEY_SWEEP_MORATORIUM: &'static str = "sweep.moratorium"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:22:37 [INFO] [stderr] | [INFO] [stderr] 22 | const CONFIG_KEY_SWEEP_PERIOD : &'static str = "sweep.period"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:23:37 [INFO] [stderr] | [INFO] [stderr] 23 | const CONFIG_KEY_SWEEP_TIME : &'static str = "sweep.time"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:25:47 [INFO] [stderr] | [INFO] [stderr] 25 | const CONFIG_DEFAULT_VALUE_BURN_MORATORIUM : &'static str = "2 weeks"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:26:47 [INFO] [stderr] | [INFO] [stderr] 26 | const CONFIG_DEFAULT_VALUE_SWEEP_MORATORIUM: &'static str = "10 minutes"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:27:47 [INFO] [stderr] | [INFO] [stderr] 27 | const CONFIG_DEFAULT_VALUE_SWEEP_PERIOD : &'static str = "daily"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:28:47 [INFO] [stderr] | [INFO] [stderr] 28 | const CONFIG_DEFAULT_VALUE_SWEEP_TIME : &'static str = "00:00"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/command/version.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | return Usage::new(UsageKind::Version); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Version)` [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/command/init.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return Usage::new(UsageKind::Init); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Init)` [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/command/config.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | return Usage::new(UsageKind::Config); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Config)` [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/command/ignore.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 15 | return Usage::new(UsageKind::Ignore); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Ignore)` [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/command/sweep.rs:17:9 [INFO] [stderr] | [INFO] [stderr] 17 | return Usage::new(UsageKind::Sweep); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Sweep)` [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/command/burn.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return Usage::new(UsageKind::Burn); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Burn)` [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/command/start.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | return Usage::new(UsageKind::Start); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Start)` [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/command/end.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | return Usage::new(UsageKind::End); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::End)` [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/command/destroy.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | return Usage::new(UsageKind::Destroy); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Destroy)` [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/command/patrol.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | return Usage::new(UsageKind::Patrol); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Usage::new(UsageKind::Patrol)` [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: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:1:16 [INFO] [stderr] | [INFO] [stderr] 1 | pub const ME: &'static str = "kic"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:2:21 [INFO] [stderr] | [INFO] [stderr] 2 | pub const VERSION: &'static str = env!("CARGO_PKG_VERSION"); [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:4:22 [INFO] [stderr] | [INFO] [stderr] 4 | pub const MAIN_DIR: &'static str = "."; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:7:26 [INFO] [stderr] | [INFO] [stderr] 7 | pub const BANNED_DIRS: [&'static str; 20] = [ [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:53:30 [INFO] [stderr] | [INFO] [stderr] 53 | pub const WORKING_DIR_NAME: &'static str = ".kic"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:54:30 [INFO] [stderr] | [INFO] [stderr] 54 | pub const STORAGE_DIR_NAME: &'static str = "warehouse"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:55:30 [INFO] [stderr] | [INFO] [stderr] 55 | pub const CONFIG_FILE_NAME: &'static str = "config.toml"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/constant.rs:56:30 [INFO] [stderr] | [INFO] [stderr] 56 | pub const IGNORE_FILE_NAME: &'static str = "ignore"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:20:37 [INFO] [stderr] | [INFO] [stderr] 20 | const CONFIG_KEY_BURN_MORATORIUM : &'static str = "burn.moratorium"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:21:37 [INFO] [stderr] | [INFO] [stderr] 21 | const CONFIG_KEY_SWEEP_MORATORIUM: &'static str = "sweep.moratorium"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:22:37 [INFO] [stderr] | [INFO] [stderr] 22 | const CONFIG_KEY_SWEEP_PERIOD : &'static str = "sweep.period"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:23:37 [INFO] [stderr] | [INFO] [stderr] 23 | const CONFIG_KEY_SWEEP_TIME : &'static str = "sweep.time"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:25:47 [INFO] [stderr] | [INFO] [stderr] 25 | const CONFIG_DEFAULT_VALUE_BURN_MORATORIUM : &'static str = "2 weeks"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:26:47 [INFO] [stderr] | [INFO] [stderr] 26 | const CONFIG_DEFAULT_VALUE_SWEEP_MORATORIUM: &'static str = "10 minutes"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:27:47 [INFO] [stderr] | [INFO] [stderr] 27 | const CONFIG_DEFAULT_VALUE_SWEEP_PERIOD : &'static str = "daily"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/lib/setting/config.rs:28:47 [INFO] [stderr] | [INFO] [stderr] 28 | const CONFIG_DEFAULT_VALUE_SWEEP_TIME : &'static str = "00:00"; [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib/setting/config.rs:159:28 [INFO] [stderr] | [INFO] [stderr] 159 | None => return unreachable!("Evil thing will occur in toml-rs!!"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib/setting/config.rs:159:28 [INFO] [stderr] | [INFO] [stderr] 159 | None => return unreachable!("Evil thing will occur in toml-rs!!"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/config.rs:56:93 [INFO] [stderr] | [INFO] [stderr] 56 | Self::run_after_confirmation(message,|| setting::Config::default().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/command/ignore.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | if paths.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:47:33 [INFO] [stderr] | [INFO] [stderr] 47 | ignore.create().map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/command/ignore.rs:53:12 [INFO] [stderr] | [INFO] [stderr] 53 | if paths.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:59:33 [INFO] [stderr] | [INFO] [stderr] 59 | ignore.create().map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:65:22 [INFO] [stderr] | [INFO] [stderr] 65 | .map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:71:94 [INFO] [stderr] | [INFO] [stderr] 71 | Self::run_after_confirmation(message, || setting::Ignore::default().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:77:90 [INFO] [stderr] | [INFO] [stderr] 77 | Self::run_after_confirmation(message, || setting::Ignore::new().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/command/sweep.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | .any(|option| match option { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 24 | | &&Some(ref o) => o == "indeed", [INFO] [stderr] 25 | | &&None => false, [INFO] [stderr] 26 | | }); [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 23 | .any(|option| match *option { [INFO] [stderr] 24 | &Some(ref o) => o == "indeed", [INFO] [stderr] 25 | &None => false, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/command/sweep.rs:27:19 [INFO] [stderr] | [INFO] [stderr] 27 | let all = match &self.option1 { [INFO] [stderr] | ___________________^ [INFO] [stderr] 28 | | &Some(ref o) => match o.as_ref() { [INFO] [stderr] 29 | | "all" => true, [INFO] [stderr] 30 | | "indeed" => false, [INFO] [stderr] ... | [INFO] [stderr] 33 | | &None => false, [INFO] [stderr] 34 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 27 | let all = match self.option1 { [INFO] [stderr] 28 | Some(ref o) => match o.as_ref() { [INFO] [stderr] 29 | "all" => true, [INFO] [stderr] 30 | "indeed" => false, [INFO] [stderr] 31 | _ => return Err(From::from(self.usage())), [INFO] [stderr] 32 | }, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/sweep.rs:63:68 [INFO] [stderr] | [INFO] [stderr] 63 | storage.squeeze_empty_dirs(potentially_empty_dirs).map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/command/burn.rs:17:22 [INFO] [stderr] | [INFO] [stderr] 17 | let indeed = match &self.option { [INFO] [stderr] | ______________________^ [INFO] [stderr] 18 | | &Some(ref option) => match option.as_ref() { [INFO] [stderr] 19 | | "indeed" => true, [INFO] [stderr] 20 | | _ => return Err(From::from(self.usage())), [INFO] [stderr] 21 | | }, [INFO] [stderr] 22 | | &None => false, [INFO] [stderr] 23 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 17 | let indeed = match self.option { [INFO] [stderr] 18 | Some(ref option) => match option.as_ref() { [INFO] [stderr] 19 | "indeed" => true, [INFO] [stderr] 20 | _ => return Err(From::from(self.usage())), [INFO] [stderr] 21 | }, [INFO] [stderr] 22 | None => false, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/command/mod.rs:97:36 [INFO] [stderr] | [INFO] [stderr] 97 | let command = try!(args.next().ok_or(Usage::new(UsageKind::Nothing))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| Usage::new(UsageKind::Nothing))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/command/mod.rs:100:27 [INFO] [stderr] | [INFO] [stderr] 100 | (try!(args.next().ok_or(Usage::new(UsageKind::Help))), true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| Usage::new(UsageKind::Help))` [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: single-character string constant used as pattern [INFO] [stderr] --> src/lib/fs.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | file_name.starts_with(".") && file_name.len() > 1 && file_name != ".." [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:78:14 [INFO] [stderr] | [INFO] [stderr] 78 | .ok_or(ConfigError::new(ConfigErrorKind::Something)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::new(ConfigErrorKind::Something))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib/setting/config.rs:77:18 [INFO] [stderr] | [INFO] [stderr] 77 | .map(|c| EditableToml(c)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `EditableToml` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:97:16 [INFO] [stderr] | [INFO] [stderr] 97 | fn to_toml(self) -> Toml { [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:174:14 [INFO] [stderr] | [INFO] [stderr] 174 | .ok_or(ConfigError::new(match *key { [INFO] [stderr] | ______________^ [INFO] [stderr] 175 | | ConfigKey::BurnMoratorium => ConfigErrorKind::NotFoundBurnMoratorium, [INFO] [stderr] 176 | | ConfigKey::SweepMoratorium => ConfigErrorKind::NotFoundSweepMoratorium, [INFO] [stderr] 177 | | ConfigKey::SweepPeriod => ConfigErrorKind::NotFoundSweepPeriod, [INFO] [stderr] 178 | | ConfigKey::SweepTime => ConfigErrorKind::NotFoundSweepTime, [INFO] [stderr] 179 | | })); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 174 | .ok_or_else(|| ConfigError::new(match *key { [INFO] [stderr] 175 | ConfigKey::BurnMoratorium => ConfigErrorKind::NotFoundBurnMoratorium, [INFO] [stderr] 176 | ConfigKey::SweepMoratorium => ConfigErrorKind::NotFoundSweepMoratorium, [INFO] [stderr] 177 | ConfigKey::SweepPeriod => ConfigErrorKind::NotFoundSweepPeriod, [INFO] [stderr] 178 | ConfigKey::SweepTime => ConfigErrorKind::NotFoundSweepTime, [INFO] [stderr] 179 | })); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:184:14 [INFO] [stderr] | [INFO] [stderr] 184 | .ok_or(ConfigError::new(ConfigErrorKind::NonStringValue)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::new(ConfigErrorKind::NonStringValue))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:188:24 [INFO] [stderr] | [INFO] [stderr] 188 | pub fn to_duration(value: String) -> Duration { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/lib/setting/config.rs:195:22 [INFO] [stderr] | [INFO] [stderr] 195 | Ok(u) => u as i64, [INFO] [stderr] | ^^^^^^^^ help: try: `i64::from(u)` [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: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:208:31 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn to_hour_and_minute(value: String) -> (u32, u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:233:37 [INFO] [stderr] | [INFO] [stderr] 233 | fn to_naive_time>(value: S) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: trivial regex [INFO] [stderr] --> src/lib/setting/cron.rs:48:35 [INFO] [stderr] | [INFO] [stderr] 48 | let re = match Regex::new(r"\*") { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivial_regex)] on by default [INFO] [stderr] = help: consider using `str::contains` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivial_regex [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/cron.rs:58:37 [INFO] [stderr] | [INFO] [stderr] 58 | let exe = try!(exe.to_str().ok_or(CronError::new(CronErrorKind::BinExistsInInvalidDir))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| CronError::new(CronErrorKind::BinExistsInInvalidDir))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib/setting/cron.rs:144:12 [INFO] [stderr] | [INFO] [stderr] 144 | if target_paths.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!target_paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib/setting/cron.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | / match &mut child.stdin { [INFO] [stderr] 183 | | &mut Some(ref mut stdin) => try!(stdin.write_all(contents.as_bytes())), [INFO] [stderr] 184 | | &mut None => unreachable!("Please set Stdio::piped()!!"), [INFO] [stderr] 185 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 182 | match *(&mut child.stdin) { [INFO] [stderr] 183 | Some(ref mut stdin) => try!(stdin.write_all(contents.as_bytes())), [INFO] [stderr] 184 | None => unreachable!("Please set Stdio::piped()!!"), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/cron.rs:203:14 [INFO] [stderr] | [INFO] [stderr] 203 | .ok_or(CronError::new(CronErrorKind::InvalidPath)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| CronError::new(CronErrorKind::InvalidPath))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/ignore.rs:25:18 [INFO] [stderr] | [INFO] [stderr] 25 | fn to_string(entries: BTreeSet) -> String { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib/setting/ignore.rs:85:33 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn add(mut self, paths: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib/setting/ignore.rs:101:36 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn remove(mut self, paths: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/config.rs:56:93 [INFO] [stderr] | [INFO] [stderr] 56 | Self::run_after_confirmation(message,|| setting::Config::default().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/command/ignore.rs:41:12 [INFO] [stderr] | [INFO] [stderr] 41 | if paths.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:47:33 [INFO] [stderr] | [INFO] [stderr] 47 | ignore.create().map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/command/ignore.rs:53:12 [INFO] [stderr] | [INFO] [stderr] 53 | if paths.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:59:33 [INFO] [stderr] | [INFO] [stderr] 59 | ignore.create().map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:65:22 [INFO] [stderr] | [INFO] [stderr] 65 | .map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:71:94 [INFO] [stderr] | [INFO] [stderr] 71 | Self::run_after_confirmation(message, || setting::Ignore::default().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/ignore.rs:77:90 [INFO] [stderr] | [INFO] [stderr] 77 | Self::run_after_confirmation(message, || setting::Ignore::new().create().map_err(|e| From::from(e))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/command/sweep.rs:23:27 [INFO] [stderr] | [INFO] [stderr] 23 | .any(|option| match option { [INFO] [stderr] | ___________________________^ [INFO] [stderr] 24 | | &&Some(ref o) => o == "indeed", [INFO] [stderr] 25 | | &&None => false, [INFO] [stderr] 26 | | }); [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 23 | .any(|option| match *option { [INFO] [stderr] 24 | &Some(ref o) => o == "indeed", [INFO] [stderr] 25 | &None => false, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/command/sweep.rs:27:19 [INFO] [stderr] | [INFO] [stderr] 27 | let all = match &self.option1 { [INFO] [stderr] | ___________________^ [INFO] [stderr] 28 | | &Some(ref o) => match o.as_ref() { [INFO] [stderr] 29 | | "all" => true, [INFO] [stderr] 30 | | "indeed" => false, [INFO] [stderr] ... | [INFO] [stderr] 33 | | &None => false, [INFO] [stderr] 34 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 27 | let all = match self.option1 { [INFO] [stderr] 28 | Some(ref o) => match o.as_ref() { [INFO] [stderr] 29 | "all" => true, [INFO] [stderr] 30 | "indeed" => false, [INFO] [stderr] 31 | _ => return Err(From::from(self.usage())), [INFO] [stderr] 32 | }, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/command/sweep.rs:63:68 [INFO] [stderr] | [INFO] [stderr] 63 | storage.squeeze_empty_dirs(potentially_empty_dirs).map_err(|e| From::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove closure as shown: `From::from` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to both the expression and the patterns [INFO] [stderr] --> src/command/burn.rs:17:22 [INFO] [stderr] | [INFO] [stderr] 17 | let indeed = match &self.option { [INFO] [stderr] | ______________________^ [INFO] [stderr] 18 | | &Some(ref option) => match option.as_ref() { [INFO] [stderr] 19 | | "indeed" => true, [INFO] [stderr] 20 | | _ => return Err(From::from(self.usage())), [INFO] [stderr] 21 | | }, [INFO] [stderr] 22 | | &None => false, [INFO] [stderr] 23 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 17 | let indeed = match self.option { [INFO] [stderr] 18 | Some(ref option) => match option.as_ref() { [INFO] [stderr] 19 | "indeed" => true, [INFO] [stderr] 20 | _ => return Err(From::from(self.usage())), [INFO] [stderr] 21 | }, [INFO] [stderr] 22 | None => false, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/command/mod.rs:97:36 [INFO] [stderr] | [INFO] [stderr] 97 | let command = try!(args.next().ok_or(Usage::new(UsageKind::Nothing))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| Usage::new(UsageKind::Nothing))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/command/mod.rs:100:27 [INFO] [stderr] | [INFO] [stderr] 100 | (try!(args.next().ok_or(Usage::new(UsageKind::Help))), true) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| Usage::new(UsageKind::Help))` [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: single-character string constant used as pattern [INFO] [stderr] --> src/lib/fs.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | file_name.starts_with(".") && file_name.len() > 1 && file_name != ".." [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:78:14 [INFO] [stderr] | [INFO] [stderr] 78 | .ok_or(ConfigError::new(ConfigErrorKind::Something)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::new(ConfigErrorKind::Something))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/lib/setting/config.rs:77:18 [INFO] [stderr] | [INFO] [stderr] 77 | .map(|c| EditableToml(c)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `EditableToml` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:97:16 [INFO] [stderr] | [INFO] [stderr] 97 | fn to_toml(self) -> Toml { [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: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:174:14 [INFO] [stderr] | [INFO] [stderr] 174 | .ok_or(ConfigError::new(match *key { [INFO] [stderr] | ______________^ [INFO] [stderr] 175 | | ConfigKey::BurnMoratorium => ConfigErrorKind::NotFoundBurnMoratorium, [INFO] [stderr] 176 | | ConfigKey::SweepMoratorium => ConfigErrorKind::NotFoundSweepMoratorium, [INFO] [stderr] 177 | | ConfigKey::SweepPeriod => ConfigErrorKind::NotFoundSweepPeriod, [INFO] [stderr] 178 | | ConfigKey::SweepTime => ConfigErrorKind::NotFoundSweepTime, [INFO] [stderr] 179 | | })); [INFO] [stderr] | |_______________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 174 | .ok_or_else(|| ConfigError::new(match *key { [INFO] [stderr] 175 | ConfigKey::BurnMoratorium => ConfigErrorKind::NotFoundBurnMoratorium, [INFO] [stderr] 176 | ConfigKey::SweepMoratorium => ConfigErrorKind::NotFoundSweepMoratorium, [INFO] [stderr] 177 | ConfigKey::SweepPeriod => ConfigErrorKind::NotFoundSweepPeriod, [INFO] [stderr] 178 | ConfigKey::SweepTime => ConfigErrorKind::NotFoundSweepTime, [INFO] [stderr] 179 | })); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/config.rs:184:14 [INFO] [stderr] | [INFO] [stderr] 184 | .ok_or(ConfigError::new(ConfigErrorKind::NonStringValue)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| ConfigError::new(ConfigErrorKind::NonStringValue))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:188:24 [INFO] [stderr] | [INFO] [stderr] 188 | pub fn to_duration(value: String) -> Duration { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/lib/setting/config.rs:195:22 [INFO] [stderr] | [INFO] [stderr] 195 | Ok(u) => u as i64, [INFO] [stderr] | ^^^^^^^^ help: try: `i64::from(u)` [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: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:208:31 [INFO] [stderr] | [INFO] [stderr] 208 | pub fn to_hour_and_minute(value: String) -> (u32, u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/config.rs:233:37 [INFO] [stderr] | [INFO] [stderr] 233 | fn to_naive_time>(value: S) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [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: trivial regex [INFO] [stderr] --> src/lib/setting/cron.rs:48:35 [INFO] [stderr] | [INFO] [stderr] 48 | let re = match Regex::new(r"\*") { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivial_regex)] on by default [INFO] [stderr] = help: consider using `str::contains` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivial_regex [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/cron.rs:58:37 [INFO] [stderr] | [INFO] [stderr] 58 | let exe = try!(exe.to_str().ok_or(CronError::new(CronErrorKind::BinExistsInInvalidDir))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| CronError::new(CronErrorKind::BinExistsInInvalidDir))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/lib/setting/cron.rs:144:12 [INFO] [stderr] | [INFO] [stderr] 144 | if target_paths.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!target_paths.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/lib/setting/cron.rs:182:9 [INFO] [stderr] | [INFO] [stderr] 182 | / match &mut child.stdin { [INFO] [stderr] 183 | | &mut Some(ref mut stdin) => try!(stdin.write_all(contents.as_bytes())), [INFO] [stderr] 184 | | &mut None => unreachable!("Please set Stdio::piped()!!"), [INFO] [stderr] 185 | | }; [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 182 | match *(&mut child.stdin) { [INFO] [stderr] 183 | Some(ref mut stdin) => try!(stdin.write_all(contents.as_bytes())), [INFO] [stderr] 184 | None => unreachable!("Please set Stdio::piped()!!"), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/lib/setting/cron.rs:203:14 [INFO] [stderr] | [INFO] [stderr] 203 | .ok_or(CronError::new(CronErrorKind::InvalidPath)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| CronError::new(CronErrorKind::InvalidPath))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/lib/setting/ignore.rs:25:18 [INFO] [stderr] | [INFO] [stderr] 25 | fn to_string(entries: BTreeSet) -> String { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib/setting/ignore.rs:85:33 [INFO] [stderr] | [INFO] [stderr] 85 | pub fn add(mut self, paths: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/lib/setting/ignore.rs:101:36 [INFO] [stderr] | [INFO] [stderr] 101 | pub fn remove(mut self, paths: &Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^ help: change this to: `&[String]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.96s [INFO] running `"docker" "inspect" "c72031c5b5a01fbfbb31c0781010ee173e8ef5ddeeeedb2172da8c0ccd5531d8"` [INFO] running `"docker" "rm" "-f" "c72031c5b5a01fbfbb31c0781010ee173e8ef5ddeeeedb2172da8c0ccd5531d8"` [INFO] [stdout] c72031c5b5a01fbfbb31c0781010ee173e8ef5ddeeeedb2172da8c0ccd5531d8