[INFO] updating cached repository AlexeyAkhunov/parse_bitcoin
[INFO] running `"git" "fetch" "--all"`
[INFO] [stdout] Fetching origin
[INFO] [stderr] From git://github.com/AlexeyAkhunov/parse_bitcoin
[INFO] [stderr] * branch HEAD -> FETCH_HEAD
[INFO] running `"git" "clone" "work/cache/sources/gh/AlexeyAkhunov/parse_bitcoin" "work/ex/clippy-test-run/sources/stable/gh/AlexeyAkhunov/parse_bitcoin"`
[INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/AlexeyAkhunov/parse_bitcoin'...
[INFO] [stderr] done.
[INFO] running `"git" "clone" "work/cache/sources/gh/AlexeyAkhunov/parse_bitcoin" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlexeyAkhunov/parse_bitcoin"`
[INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlexeyAkhunov/parse_bitcoin'...
[INFO] [stderr] done.
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 9a89a0985e773f9f7e58d1efda42d292e6404ec6
[INFO] sha for GitHub repo AlexeyAkhunov/parse_bitcoin: 9a89a0985e773f9f7e58d1efda42d292e6404ec6
[INFO] validating manifest of AlexeyAkhunov/parse_bitcoin 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 AlexeyAkhunov/parse_bitcoin 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 AlexeyAkhunov/parse_bitcoin
[INFO] finished frobbing AlexeyAkhunov/parse_bitcoin
[INFO] frobbed toml for AlexeyAkhunov/parse_bitcoin written to work/ex/clippy-test-run/sources/stable/gh/AlexeyAkhunov/parse_bitcoin/Cargo.toml
[INFO] started frobbing AlexeyAkhunov/parse_bitcoin
[INFO] finished frobbing AlexeyAkhunov/parse_bitcoin
[INFO] frobbed toml for AlexeyAkhunov/parse_bitcoin written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/AlexeyAkhunov/parse_bitcoin/Cargo.toml
[INFO] crate AlexeyAkhunov/parse_bitcoin 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 AlexeyAkhunov/parse_bitcoin against stable for clippy-test-run
[INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/AlexeyAkhunov/parse_bitcoin:/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] c2dacb9c91f8fe7f1c65972796522bfaccd36580155811a0724e9f36f68dc05f
[INFO] running `"docker" "start" "-a" "c2dacb9c91f8fe7f1c65972796522bfaccd36580155811a0724e9f36f68dc05f"`
[INFO] [stderr] Checking num-bigint v0.1.36
[INFO] [stderr] Checking bloomfilter v0.0.10
[INFO] [stderr] Checking num-rational v0.1.36
[INFO] [stderr] Checking num v0.1.37
[INFO] [stderr] Checking rust-base58 v0.0.4
[INFO] [stderr] Checking parse_bitcoin v0.1.0 (/opt/crater/workdir)
[INFO] [stderr] warning: redundant field names in struct initialization
[INFO] [stderr] --> src/main.rs:178:66
[INFO] [stderr] |
[INFO] [stderr] 178 | inputs.push(Some(TxInput{time: time, script: cloned_script_sig}));
[INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time`
[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/main.rs:963:74
[INFO] [stderr] |
[INFO] [stderr] 963 | last_used.insert(addr_str, TimeValue{time: time, value: value});
[INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time`
[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/main.rs:963:86
[INFO] [stderr] |
[INFO] [stderr] 963 | last_used.insert(addr_str, TimeValue{time: time, 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/main.rs:980:66
[INFO] [stderr] |
[INFO] [stderr] 980 | last_used.insert(addr_str, TimeValue{time:time, value:value});
[INFO] [stderr] | ^^^^^^^^^ help: replace it with: `time`
[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/main.rs:980:77
[INFO] [stderr] |
[INFO] [stderr] 980 | last_used.insert(addr_str, TimeValue{time:time, 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/main.rs:178:66
[INFO] [stderr] |
[INFO] [stderr] 178 | inputs.push(Some(TxInput{time: time, script: cloned_script_sig}));
[INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time`
[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/main.rs:963:74
[INFO] [stderr] |
[INFO] [stderr] 963 | last_used.insert(addr_str, TimeValue{time: time, value: value});
[INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `time`
[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/main.rs:963:86
[INFO] [stderr] |
[INFO] [stderr] 963 | last_used.insert(addr_str, TimeValue{time: time, 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/main.rs:980:66
[INFO] [stderr] |
[INFO] [stderr] 980 | last_used.insert(addr_str, TimeValue{time:time, value:value});
[INFO] [stderr] | ^^^^^^^^^ help: replace it with: `time`
[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/main.rs:980:77
[INFO] [stderr] |
[INFO] [stderr] 980 | last_used.insert(addr_str, TimeValue{time:time, 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: unused import: `std::fs::Metadata`
[INFO] [stderr] --> src/main.rs:4:5
[INFO] [stderr] |
[INFO] [stderr] 4 | use std::fs::Metadata;
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^
[INFO] [stderr] |
[INFO] [stderr] = note: #[warn(unused_imports)] on by default
[INFO] [stderr]
[INFO] [stderr] warning: unused imports: `SeekFrom`, `Seek`
[INFO] [stderr] --> src/main.rs:6:32
[INFO] [stderr] |
[INFO] [stderr] 6 | use std::io::{Read, BufReader, Seek, SeekFrom};
[INFO] [stderr] | ^^^^ ^^^^^^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `format`
[INFO] [stderr] --> src/main.rs:8:23
[INFO] [stderr] |
[INFO] [stderr] 8 | use std::fmt::{Write, format};
[INFO] [stderr] | ^^^^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `std::cmp::PartialEq`
[INFO] [stderr] --> src/main.rs:9:5
[INFO] [stderr] |
[INFO] [stderr] 9 | use std::cmp::PartialEq;
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `FromBase58`
[INFO] [stderr] --> src/main.rs:16:29
[INFO] [stderr] |
[INFO] [stderr] 16 | use rust_base58::{ToBase58, FromBase58};
[INFO] [stderr] | ^^^^^^^^^^
[INFO] [stderr]
[INFO] [stderr] warning: unused import: `bloomfilter::Bloom`
[INFO] [stderr] --> src/main.rs:22:5
[INFO] [stderr] |
[INFO] [stderr] 22 | use bloomfilter::Bloom;
[INFO] [stderr] | ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]
[INFO] [stderr] warning: long literal lacking separators
[INFO] [stderr] --> src/main.rs:56:39
[INFO] [stderr] |
[INFO] [stderr] 56 | if block_number > 1000000 {
[INFO] [stderr] | ^^^^^^^ help: consider: `1_000_000`
[INFO] [stderr] |
[INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default
[INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal
[INFO] [stderr]
[INFO] [stderr] warning: long literal lacking separators
[INFO] [stderr] --> src/main.rs:125:28
[INFO] [stderr] |
[INFO] [stderr] 125 | assert_eq!(3652501241, magic);
[INFO] [stderr] | ^^^^^^^^^^ help: consider: `3_652_501_241`
[INFO] [stderr] |
[INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal
[INFO] [stderr]
[INFO] [stderr] warning: this if statement can be collapsed
[INFO] [stderr] --> src/main.rs:162:21
[INFO] [stderr] |
[INFO] [stderr] 162 | / if !is_coinbase {
[INFO] [stderr] 163 | | if (block[prevout_hash_pos] & 0x3) == prefix {
[INFO] [stderr] 164 | | let id = copy_id(&block[prevout_hash_pos..prevout_hash_pos+32]);
[INFO] [stderr] 165 | | let remove_from_map = match state.out_map.get_mut(&id) {
[INFO] [stderr] ... |
[INFO] [stderr] 201 | | }
[INFO] [stderr] 202 | | }
[INFO] [stderr] | |_____________________^
[INFO] [stderr] |
[INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default
[INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if
[INFO] [stderr] help: try
[INFO] [stderr] |
[INFO] [stderr] 162 | if !is_coinbase && (block[prevout_hash_pos] & 0x3) == prefix {
[INFO] [stderr] 163 | let id = copy_id(&block[prevout_hash_pos..prevout_hash_pos+32]);
[INFO] [stderr] 164 | let remove_from_map = match state.out_map.get_mut(&id) {
[INFO] [stderr] 165 | None => {
[INFO] [stderr] 166 | let inputs: &mut Vec