[INFO] updating cached repository fabianschuiki/bender [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/fabianschuiki/bender [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/fabianschuiki/bender" "work/ex/clippy-test-run/sources/stable/gh/fabianschuiki/bender"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/fabianschuiki/bender'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/fabianschuiki/bender" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/fabianschuiki/bender"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/fabianschuiki/bender'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 6faeada885de26be3cfb446aae960e7900272abe [INFO] sha for GitHub repo fabianschuiki/bender: 6faeada885de26be3cfb446aae960e7900272abe [INFO] validating manifest of fabianschuiki/bender 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 fabianschuiki/bender 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 fabianschuiki/bender [INFO] finished frobbing fabianschuiki/bender [INFO] frobbed toml for fabianschuiki/bender written to work/ex/clippy-test-run/sources/stable/gh/fabianschuiki/bender/Cargo.toml [INFO] started frobbing fabianschuiki/bender [INFO] finished frobbing fabianschuiki/bender [INFO] frobbed toml for fabianschuiki/bender written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/fabianschuiki/bender/Cargo.toml [INFO] crate fabianschuiki/bender has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting fabianschuiki/bender against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/fabianschuiki/bender:/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] 85d954b2fd0d8dcdfac372ceaad8028ef2273f679bc71cae2ff038dfc6293176 [INFO] running `"docker" "start" "-a" "85d954b2fd0d8dcdfac372ceaad8028ef2273f679bc71cae2ff038dfc6293176"` [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking serde_yaml v0.7.3 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking tokio-signal v0.1.3 [INFO] [stderr] Checking blake2 v0.7.0 [INFO] [stderr] Checking thread_local v0.2.7 [INFO] [stderr] Checking aho-corasick v0.5.3 [INFO] [stderr] Checking tokio-process v0.1.5 [INFO] [stderr] Checking regex v0.1.80 [INFO] [stderr] Checking semver-parser v0.6.2 [INFO] [stderr] Checking semver v0.5.1 [INFO] [stderr] Checking bender v0.8.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/config.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | plugins: plugins, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `plugins` [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/config.rs:428:13 [INFO] [stderr] | [INFO] [stderr] 428 | include_dirs: include_dirs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `include_dirs` [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/config.rs:429:13 [INFO] [stderr] | [INFO] [stderr] 429 | defines: defines, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `defines` [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/sess.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | root: root, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `root` [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/sess.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | manifest: manifest, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `manifest` [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/sess.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `config` [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/sess.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [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/sess.rs:351:13 [INFO] [stderr] | [INFO] [stderr] 351 | package: package, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `package` [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/sess.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | include_dirs: include_dirs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `include_dirs` [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/sess.rs:355:13 [INFO] [stderr] | [INFO] [stderr] 355 | defines: defines, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `defines` [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/sess.rs:356:13 [INFO] [stderr] | [INFO] [stderr] 356 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:377:13 [INFO] [stderr] | [INFO] [stderr] 377 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/sess.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/sess.rs:560:17 [INFO] [stderr] | [INFO] [stderr] 560 | versions: versions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `versions` [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/sess.rs:561:17 [INFO] [stderr] | [INFO] [stderr] 561 | refs: refs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `refs` [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/sess.rs:562:17 [INFO] [stderr] | [INFO] [stderr] 562 | revs: revs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `revs` [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/sess.rs:949:33 [INFO] [stderr] | [INFO] [stderr] 949 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:965:25 [INFO] [stderr] | [INFO] [stderr] 965 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:1022:37 [INFO] [stderr] | [INFO] [stderr] 1022 | package: package, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `package` [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/resolver.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/resolver.rs:127:29 [INFO] [stderr] | [INFO] [stderr] 127 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `version` [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/resolver.rs:137:13 [INFO] [stderr] | [INFO] [stderr] 137 | packages: packages [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `packages` [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/resolver.rs:500:13 [INFO] [stderr] | [INFO] [stderr] 500 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/resolver.rs:537:13 [INFO] [stderr] | [INFO] [stderr] 537 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/resolver.rs:538:13 [INFO] [stderr] | [INFO] [stderr] 538 | versions: versions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `versions` [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/git.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | path: path, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `path` [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/git.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/src.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/src.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/config.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | plugins: plugins, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `plugins` [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/config.rs:428:13 [INFO] [stderr] | [INFO] [stderr] 428 | include_dirs: include_dirs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `include_dirs` [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/config.rs:429:13 [INFO] [stderr] | [INFO] [stderr] 429 | defines: defines, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `defines` [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/sess.rs:84:13 [INFO] [stderr] | [INFO] [stderr] 84 | root: root, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `root` [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/sess.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | manifest: manifest, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `manifest` [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/sess.rs:86:13 [INFO] [stderr] | [INFO] [stderr] 86 | config: config, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `config` [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/sess.rs:87:13 [INFO] [stderr] | [INFO] [stderr] 87 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [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/sess.rs:351:13 [INFO] [stderr] | [INFO] [stderr] 351 | package: package, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `package` [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/sess.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | include_dirs: include_dirs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `include_dirs` [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/sess.rs:355:13 [INFO] [stderr] | [INFO] [stderr] 355 | defines: defines, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `defines` [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/sess.rs:356:13 [INFO] [stderr] | [INFO] [stderr] 356 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:377:13 [INFO] [stderr] | [INFO] [stderr] 377 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/sess.rs:378:13 [INFO] [stderr] | [INFO] [stderr] 378 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/sess.rs:560:17 [INFO] [stderr] | [INFO] [stderr] 560 | versions: versions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `versions` [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/sess.rs:561:17 [INFO] [stderr] | [INFO] [stderr] 561 | refs: refs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `refs` [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/sess.rs:562:17 [INFO] [stderr] | [INFO] [stderr] 562 | revs: revs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `revs` [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/sess.rs:949:33 [INFO] [stderr] | [INFO] [stderr] 949 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:965:25 [INFO] [stderr] | [INFO] [stderr] 965 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/sess.rs:1022:37 [INFO] [stderr] | [INFO] [stderr] 1022 | package: package, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `package` [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/resolver.rs:33:13 [INFO] [stderr] | [INFO] [stderr] 33 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/resolver.rs:127:29 [INFO] [stderr] | [INFO] [stderr] 127 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `version` [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/resolver.rs:137:13 [INFO] [stderr] | [INFO] [stderr] 137 | packages: packages [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `packages` [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/resolver.rs:500:13 [INFO] [stderr] | [INFO] [stderr] 500 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/resolver.rs:537:13 [INFO] [stderr] | [INFO] [stderr] 537 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/resolver.rs:538:13 [INFO] [stderr] | [INFO] [stderr] 538 | versions: versions, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `versions` [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/git.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | path: path, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `path` [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/git.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | sess: sess, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sess` [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/target.rs:71:64 [INFO] [stderr] | [INFO] [stderr] 71 | let mut lexer = TargetLexer { inner: iter, partial: None, next: next }; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `next` [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/future_throttle.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | size: size, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [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/src.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/src.rs:83:13 [INFO] [stderr] | [INFO] [stderr] 83 | files: files, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `files` [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/target.rs:71:64 [INFO] [stderr] | [INFO] [stderr] 71 | let mut lexer = TargetLexer { inner: iter, partial: None, next: next }; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `next` [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/future_throttle.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | size: size, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [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: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/cli.rs:288:29 [INFO] [stderr] | [INFO] [stderr] 288 | if let Some(mut home) = std::env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. [INFO] [stderr] --> src/cli.rs:288:29 [INFO] [stderr] | [INFO] [stderr] 288 | if let Some(mut home) = std::env::home_dir() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/util.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | while let Some(i) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for i in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/util.rs:101:69 [INFO] [stderr] | [INFO] [stderr] 101 | deserializer.deserialize_any(Visitor::(PhantomData)).map(|v| StringOrStruct(v)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `StringOrStruct` [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: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/config.rs:191:25 [INFO] [stderr] | [INFO] [stderr] 191 | impl Validate for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::implicit_hasher)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 191 | impl Validate for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:278:28 [INFO] [stderr] | [INFO] [stderr] 278 | let exp_inc_dirs = self.export_include_dirs.unwrap_or(Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.export_include_dirs.unwrap_or_default()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:423:28 [INFO] [stderr] | [INFO] [stderr] 423 | let include_dirs = self.include_dirs.unwrap_or(Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.include_dirs.unwrap_or_default()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:424:23 [INFO] [stderr] | [INFO] [stderr] 424 | let defines = self.defines.unwrap_or(HashMap::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.defines.unwrap_or_default()` [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: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/config.rs:537:28 [INFO] [stderr] | [INFO] [stderr] 537 | impl PrefixPaths for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 537 | impl PrefixPaths for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `config::PartialConfig` [INFO] [stderr] --> src/config.rs:590:5 [INFO] [stderr] | [INFO] [stderr] 590 | / pub fn new() -> PartialConfig { [INFO] [stderr] 591 | | PartialConfig { [INFO] [stderr] 592 | | database: None, [INFO] [stderr] 593 | | git: None, [INFO] [stderr] ... | [INFO] [stderr] 596 | | } [INFO] [stderr] 597 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 577 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/sess.rs:241:22 [INFO] [stderr] | [INFO] [stderr] 241 | let result = self.names.lock().unwrap().get(name).map(|id| *id); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.names.lock().unwrap().get(name).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/sess.rs:520:46 [INFO] [stderr] | [INFO] [stderr] 520 | let rev_ids: HashSet<&str> = revs.iter().map(|s| *s).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `revs.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/sess.rs:544:40 [INFO] [stderr] | [INFO] [stderr] 544 | if tag.starts_with("v") { [INFO] [stderr] | ^^^ help: try using a char instead: `'v'` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:709:25 [INFO] [stderr] | [INFO] [stderr] 709 | git.clone() [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `git` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:716:25 [INFO] [stderr] | [INFO] [stderr] 716 | git.clone().spawn_with(move |c| { [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `git` [INFO] [stderr] | [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:746:34 [INFO] [stderr] | [INFO] [stderr] 746 | let cache_key = (dep_id, version.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `version` [INFO] [stderr] | [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: redundant closure found [INFO] [stderr] --> src/sess.rs:789:82 [INFO] [stderr] | [INFO] [stderr] 789 | Box::new(db.cat_file(entry.hash).map(|f| Some(f))) [INFO] [stderr] | ^^^^^^^^^^^ help: remove closure as shown: `Some` [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] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/sess.rs:962:60 [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(p.clone())) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(&(*p).clone())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(&std::path::PathBuf::clone(p))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `sess::SessionArenas` [INFO] [stderr] --> src/sess.rs:1063:5 [INFO] [stderr] | [INFO] [stderr] 1063 | / pub fn new() -> SessionArenas { [INFO] [stderr] 1064 | | SessionArenas { [INFO] [stderr] 1065 | | path: Arena::new(), [INFO] [stderr] 1066 | | string: Arena::new(), [INFO] [stderr] ... | [INFO] [stderr] 1070 | | } [INFO] [stderr] 1071 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 1061 | impl Default for sess::SessionArenas { [INFO] [stderr] 1062 | fn default() -> Self { [INFO] [stderr] 1063 | Self::new() [INFO] [stderr] 1064 | } [INFO] [stderr] 1065 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/sess.rs:1114:5 [INFO] [stderr] | [INFO] [stderr] 1114 | / pub fn version<'a>(&'a self) -> DependencyVersion<'a> { [INFO] [stderr] 1115 | | match self.source { [INFO] [stderr] 1116 | | DependencySource::Registry => unimplemented!(), [INFO] [stderr] 1117 | | DependencySource::Path(_) => DependencyVersion::Path, [INFO] [stderr] 1118 | | DependencySource::Git(_) => DependencyVersion::Git(self.revision.as_ref().unwrap()), [INFO] [stderr] 1119 | | } [INFO] [stderr] 1120 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/resolver.rs:118:35 [INFO] [stderr] | [INFO] [stderr] 118 | let rev = gv.revs[pick].clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 118 | let rev = &(*gv.revs[pick]).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 118 | let rev = &str::clone(gv.revs[pick]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/resolver.rs:241:65 [INFO] [stderr] | [INFO] [stderr] 241 | let v = map.entry(name.as_str()).or_insert_with(|| Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [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 are using an explicit closure for cloning elements [INFO] [stderr] --> src/resolver.rs:357:24 [INFO] [stderr] | [INFO] [stderr] 357 | *ids = (*ids).intersection(&indices).map(|i| *i).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `(*ids).intersection(&indices).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/resolver.rs:390:37 [INFO] [stderr] | [INFO] [stderr] 390 | ids.iter().map(|i| *i).min().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `ids.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/resolver.rs:461:17 [INFO] [stderr] | [INFO] [stderr] 461 | let ref mut existing = self.table.get_mut(name).unwrap().manifest; [INFO] [stderr] | ----^^^^^^^^^^^^^^^^---------------------------------------------- help: try: `let existing = &mut self.table.get_mut(name).unwrap().manifest;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/future_throttle.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn spawn<'a, F>(&'a self, f: F) -> ThrottledFuture<'a, ::Future> [INFO] [stderr] 37 | | where F: IntoFuture [INFO] [stderr] 38 | | { [INFO] [stderr] 39 | | ThrottledFuture { [INFO] [stderr] ... | [INFO] [stderr] 43 | | } [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `bender`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> src/util.rs:37:25 [INFO] [stderr] | [INFO] [stderr] 37 | while let Some(i) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for i in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/util.rs:101:69 [INFO] [stderr] | [INFO] [stderr] 101 | deserializer.deserialize_any(Visitor::(PhantomData)).map(|v| StringOrStruct(v)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `StringOrStruct` [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: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/config.rs:191:25 [INFO] [stderr] | [INFO] [stderr] 191 | impl Validate for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::implicit_hasher)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 191 | impl Validate for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:278:28 [INFO] [stderr] | [INFO] [stderr] 278 | let exp_inc_dirs = self.export_include_dirs.unwrap_or(Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.export_include_dirs.unwrap_or_default()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:423:28 [INFO] [stderr] | [INFO] [stderr] 423 | let include_dirs = self.include_dirs.unwrap_or(Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.include_dirs.unwrap_or_default()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `unwrap_or` followed by a call to `new` [INFO] [stderr] --> src/config.rs:424:23 [INFO] [stderr] | [INFO] [stderr] 424 | let defines = self.defines.unwrap_or(HashMap::new()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `self.defines.unwrap_or_default()` [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: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/config.rs:537:28 [INFO] [stderr] | [INFO] [stderr] 537 | impl PrefixPaths for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 537 | impl PrefixPaths for HashMap [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `config::PartialConfig` [INFO] [stderr] --> src/config.rs:590:5 [INFO] [stderr] | [INFO] [stderr] 590 | / pub fn new() -> PartialConfig { [INFO] [stderr] 591 | | PartialConfig { [INFO] [stderr] 592 | | database: None, [INFO] [stderr] 593 | | git: None, [INFO] [stderr] ... | [INFO] [stderr] 596 | | } [INFO] [stderr] 597 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 577 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/sess.rs:241:22 [INFO] [stderr] | [INFO] [stderr] 241 | let result = self.names.lock().unwrap().get(name).map(|id| *id); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.names.lock().unwrap().get(name).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/sess.rs:520:46 [INFO] [stderr] | [INFO] [stderr] 520 | let rev_ids: HashSet<&str> = revs.iter().map(|s| *s).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `revs.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/sess.rs:544:40 [INFO] [stderr] | [INFO] [stderr] 544 | if tag.starts_with("v") { [INFO] [stderr] | ^^^ help: try using a char instead: `'v'` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:709:25 [INFO] [stderr] | [INFO] [stderr] 709 | git.clone() [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `git` [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:716:25 [INFO] [stderr] | [INFO] [stderr] 716 | git.clone().spawn_with(move |c| { [INFO] [stderr] | ^^^^^^^^^^^ help: try removing the `clone` call: `git` [INFO] [stderr] | [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: using `clone` on a `Copy` type [INFO] [stderr] --> src/sess.rs:746:34 [INFO] [stderr] | [INFO] [stderr] 746 | let cache_key = (dep_id, version.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `version` [INFO] [stderr] | [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: redundant closure found [INFO] [stderr] --> src/sess.rs:789:82 [INFO] [stderr] | [INFO] [stderr] 789 | Box::new(db.cat_file(entry.hash).map(|f| Some(f))) [INFO] [stderr] | ^^^^^^^^^^^ help: remove closure as shown: `Some` [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] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/sess.rs:962:60 [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(p.clone())) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::clone_double_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(&(*p).clone())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 962 | .map(|p| self.sess.intern_path(&std::path::PathBuf::clone(p))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `sess::SessionArenas` [INFO] [stderr] --> src/sess.rs:1063:5 [INFO] [stderr] | [INFO] [stderr] 1063 | / pub fn new() -> SessionArenas { [INFO] [stderr] 1064 | | SessionArenas { [INFO] [stderr] 1065 | | path: Arena::new(), [INFO] [stderr] 1066 | | string: Arena::new(), [INFO] [stderr] ... | [INFO] [stderr] 1070 | | } [INFO] [stderr] 1071 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 1061 | impl Default for sess::SessionArenas { [INFO] [stderr] 1062 | fn default() -> Self { [INFO] [stderr] 1063 | Self::new() [INFO] [stderr] 1064 | } [INFO] [stderr] 1065 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/sess.rs:1114:5 [INFO] [stderr] | [INFO] [stderr] 1114 | / pub fn version<'a>(&'a self) -> DependencyVersion<'a> { [INFO] [stderr] 1115 | | match self.source { [INFO] [stderr] 1116 | | DependencySource::Registry => unimplemented!(), [INFO] [stderr] 1117 | | DependencySource::Path(_) => DependencyVersion::Path, [INFO] [stderr] 1118 | | DependencySource::Git(_) => DependencyVersion::Git(self.revision.as_ref().unwrap()), [INFO] [stderr] 1119 | | } [INFO] [stderr] 1120 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: using `clone` on a double-reference; this will copy the reference instead of cloning the inner type [INFO] [stderr] --> src/resolver.rs:118:35 [INFO] [stderr] | [INFO] [stderr] 118 | let rev = gv.revs[pick].clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_double_ref [INFO] [stderr] help: try dereferencing it [INFO] [stderr] | [INFO] [stderr] 118 | let rev = &(*gv.revs[pick]).clone(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] help: or try being explicit about what type to clone [INFO] [stderr] | [INFO] [stderr] 118 | let rev = &str::clone(gv.revs[pick]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/resolver.rs:241:65 [INFO] [stderr] | [INFO] [stderr] 241 | let v = map.entry(name.as_str()).or_insert_with(|| Vec::new()); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [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 are using an explicit closure for cloning elements [INFO] [stderr] --> src/resolver.rs:357:24 [INFO] [stderr] | [INFO] [stderr] 357 | *ids = (*ids).intersection(&indices).map(|i| *i).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `(*ids).intersection(&indices).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> src/resolver.rs:390:37 [INFO] [stderr] | [INFO] [stderr] 390 | ids.iter().map(|i| *i).min().unwrap(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `ids.iter().cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/resolver.rs:461:17 [INFO] [stderr] | [INFO] [stderr] 461 | let ref mut existing = self.table.get_mut(name).unwrap().manifest; [INFO] [stderr] | ----^^^^^^^^^^^^^^^^---------------------------------------------- help: try: `let existing = &mut self.table.get_mut(name).unwrap().manifest;` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/future_throttle.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn spawn<'a, F>(&'a self, f: F) -> ThrottledFuture<'a, ::Future> [INFO] [stderr] 37 | | where F: IntoFuture [INFO] [stderr] 38 | | { [INFO] [stderr] 39 | | ThrottledFuture { [INFO] [stderr] ... | [INFO] [stderr] 43 | | } [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `bender`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "85d954b2fd0d8dcdfac372ceaad8028ef2273f679bc71cae2ff038dfc6293176"` [INFO] running `"docker" "rm" "-f" "85d954b2fd0d8dcdfac372ceaad8028ef2273f679bc71cae2ff038dfc6293176"` [INFO] [stdout] 85d954b2fd0d8dcdfac372ceaad8028ef2273f679bc71cae2ff038dfc6293176