[INFO] cloning repository https://github.com/dangreco/rust-bsa-extract [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dangreco/rust-bsa-extract" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdangreco%2Frust-bsa-extract", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdangreco%2Frust-bsa-extract'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0de7e560e6e98656c8534fbed14c0136da74d586 [INFO] linting dangreco/rust-bsa-extract against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdangreco%2Frust-bsa-extract" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dangreco/rust-bsa-extract [INFO] finished tweaking git repo https://github.com/dangreco/rust-bsa-extract [INFO] tweaked toml for git repo https://github.com/dangreco/rust-bsa-extract written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dangreco/rust-bsa-extract on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dangreco/rust-bsa-extract already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded byteorder v1.2.6 [INFO] [stderr] Downloaded redox_syscall v0.1.40 [INFO] [stderr] Downloaded time v0.1.40 [INFO] [stderr] Downloaded pbr v1.0.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2901a508f0ad39a1a54402feee0fa273e068a10688126d74e3611f67f50ba6c7 [INFO] running `Command { std: "docker" "start" "-a" "2901a508f0ad39a1a54402feee0fa273e068a10688126d74e3611f67f50ba6c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2901a508f0ad39a1a54402feee0fa273e068a10688126d74e3611f67f50ba6c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2901a508f0ad39a1a54402feee0fa273e068a10688126d74e3611f67f50ba6c7", kill_on_drop: false }` [INFO] [stdout] 2901a508f0ad39a1a54402feee0fa273e068a10688126d74e3611f67f50ba6c7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8b7c538e2dbbb604367a3389993fa4c6234dc29aad37a257db8c962ce075c193 [INFO] running `Command { std: "docker" "start" "-a" "8b7c538e2dbbb604367a3389993fa4c6234dc29aad37a257db8c962ce075c193", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Checking libc v0.2.43 [INFO] [stderr] Checking byteorder v1.2.6 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking pbr v1.0.1 [INFO] [stderr] Checking rust-bsa-extract v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:11:29 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:11:29 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | for i in 0..file_count { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `big_endian` [INFO] [stdout] --> src/data.rs:244:84 [INFO] [stdout] | [INFO] [stdout] 244 | fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_big_endian` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/data.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | Err(e) => { return None } [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/data.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | for i in 0..file_count { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `big_endian` [INFO] [stdout] --> src/data.rs:244:84 [INFO] [stdout] | [INFO] [stdout] 244 | fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_big_endian` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `compressed_block` [INFO] [stdout] --> src/bsa.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let compressed_block = comp.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compressed_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cwd` [INFO] [stdout] --> src/main.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let cwd = env::current_dir().unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cwd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `file_id`, `version`, `offset`, `total_folder_name_length`, and `file_flags` are never read [INFO] [stdout] --> src/bsa.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Header { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 6 | pub file_id: [char; 4], [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 7 | pub version: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | pub offset: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | pub total_folder_name_length: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub total_file_name_length: u32, [INFO] [stdout] 14 | pub file_flags: u32 [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Header` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name_hash` is never read [INFO] [stdout] --> src/bsa.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct FolderRecord { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 19 | pub name_hash: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FolderRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `folder_records` is never read [INFO] [stdout] --> src/bsa.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct BSA { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 120 | pub header: Header, [INFO] [stdout] 121 | pub folder_records: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BSA` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/bsa.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 185 | pub enum ArchiveFlags { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 186 | NamedDirs, [INFO] [stdout] 187 | NamedFiles, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 188 | DefComp, [INFO] [stdout] 189 | RetainDirs, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 190 | RetainFiles, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 191 | RetainOffsets, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 192 | BigEnd, [INFO] [stdout] 193 | RetainStrings, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 194 | Unknown1, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 195 | Unknown2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 196 | Unknown3 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | Ok(v) => { return Some(v) }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - Ok(v) => { return Some(v) }, [INFO] [stdout] 14 + Ok(v) => { Some(v) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 15 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 15 - Err(e) => { return None } [INFO] [stdout] 15 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant slicing of the whole range [INFO] [stdout] --> src/data.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | let mut buf = &data[..]; [INFO] [stdout] | ^^^^^^^^^ help: use the original value instead: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_slicing [INFO] [stdout] = note: `#[warn(clippy::redundant_slicing)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | let res; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `res` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 7 ~ [INFO] [stdout] 8 ~ let res = if big_endian { [INFO] [stdout] 9 ~ buf.read_u32::() [INFO] [stdout] 10 | } else { [INFO] [stdout] 11 ~ buf.read_u32::() [INFO] [stdout] 12 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:29:20 [INFO] [stdout] | [INFO] [stdout] 29 | Ok(v) => { return Some(v) }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - Ok(v) => { return Some(v) }, [INFO] [stdout] 29 + Ok(v) => { Some(v) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:30:21 [INFO] [stdout] | [INFO] [stdout] 30 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 30 - Err(e) => { return None } [INFO] [stdout] 30 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant slicing of the whole range [INFO] [stdout] --> src/data.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 21 | let mut buf = &data[..]; [INFO] [stdout] | ^^^^^^^^^ help: use the original value instead: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_slicing [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | let res; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `res` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 22 ~ [INFO] [stdout] 23 ~ let res = if big_endian { [INFO] [stdout] 24 ~ buf.read_u64::() [INFO] [stdout] 25 | } else { [INFO] [stdout] 26 ~ buf.read_u64::() [INFO] [stdout] 27 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:40:20 [INFO] [stdout] | [INFO] [stdout] 40 | Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] 40 + Ok(v) => { Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:41:21 [INFO] [stdout] | [INFO] [stdout] 41 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - Err(e) => { return None } [INFO] [stdout] 41 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 51 | Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] 51 + Ok(v) => { Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:52:21 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 52 - Err(e) => { return None } [INFO] [stdout] 52 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | return Some((v, len + 1)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 71 - return Some((v, len + 1)) [INFO] [stdout] 71 + Some((v, len + 1)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:73:21 [INFO] [stdout] | [INFO] [stdout] 73 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - Err(e) => { return None } [INFO] [stdout] 73 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `compressed_block` [INFO] [stdout] --> src/bsa.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let compressed_block = comp.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compressed_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cwd` [INFO] [stdout] --> src/main.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let cwd = env::current_dir().unwrap(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cwd` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `file_id`, `version`, `offset`, `total_folder_name_length`, and `file_flags` are never read [INFO] [stdout] --> src/bsa.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Header { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 6 | pub file_id: [char; 4], [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 7 | pub version: u32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 8 | pub offset: u32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | pub total_folder_name_length: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub total_file_name_length: u32, [INFO] [stdout] 14 | pub file_flags: u32 [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Header` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name_hash` is never read [INFO] [stdout] --> src/bsa.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct FolderRecord { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 19 | pub name_hash: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FolderRecord` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `folder_records` is never read [INFO] [stdout] --> src/bsa.rs:121:9 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct BSA { [INFO] [stdout] | --- field in this struct [INFO] [stdout] 120 | pub header: Header, [INFO] [stdout] 121 | pub folder_records: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BSA` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/bsa.rs:187:5 [INFO] [stdout] | [INFO] [stdout] 185 | pub enum ArchiveFlags { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 186 | NamedDirs, [INFO] [stdout] 187 | NamedFiles, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 188 | DefComp, [INFO] [stdout] 189 | RetainDirs, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 190 | RetainFiles, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 191 | RetainOffsets, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 192 | BigEnd, [INFO] [stdout] 193 | RetainStrings, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 194 | Unknown1, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 195 | Unknown2, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 196 | Unknown3 [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:14:20 [INFO] [stdout] | [INFO] [stdout] 14 | Ok(v) => { return Some(v) }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 14 - Ok(v) => { return Some(v) }, [INFO] [stdout] 14 + Ok(v) => { Some(v) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:15:21 [INFO] [stdout] | [INFO] [stdout] 15 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 15 - Err(e) => { return None } [INFO] [stdout] 15 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant slicing of the whole range [INFO] [stdout] --> src/data.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | let mut buf = &data[..]; [INFO] [stdout] | ^^^^^^^^^ help: use the original value instead: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_slicing [INFO] [stdout] = note: `#[warn(clippy::redundant_slicing)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | let res; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `res` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 7 ~ [INFO] [stdout] 8 ~ let res = if big_endian { [INFO] [stdout] 9 ~ buf.read_u32::() [INFO] [stdout] 10 | } else { [INFO] [stdout] 11 ~ buf.read_u32::() [INFO] [stdout] 12 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:29:20 [INFO] [stdout] | [INFO] [stdout] 29 | Ok(v) => { return Some(v) }, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 29 - Ok(v) => { return Some(v) }, [INFO] [stdout] 29 + Ok(v) => { Some(v) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:30:21 [INFO] [stdout] | [INFO] [stdout] 30 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 30 - Err(e) => { return None } [INFO] [stdout] 30 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant slicing of the whole range [INFO] [stdout] --> src/data.rs:21:19 [INFO] [stdout] | [INFO] [stdout] 21 | let mut buf = &data[..]; [INFO] [stdout] | ^^^^^^^^^ help: use the original value instead: `data` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_slicing [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/data.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | let res; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] help: move the declaration `res` here and remove the assignments from the branches [INFO] [stdout] | [INFO] [stdout] 22 ~ [INFO] [stdout] 23 ~ let res = if big_endian { [INFO] [stdout] 24 ~ buf.read_u64::() [INFO] [stdout] 25 | } else { [INFO] [stdout] 26 ~ buf.read_u64::() [INFO] [stdout] 27 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:40:20 [INFO] [stdout] | [INFO] [stdout] 40 | Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 40 - Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] 40 + Ok(v) => { Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:41:21 [INFO] [stdout] | [INFO] [stdout] 41 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 41 - Err(e) => { return None } [INFO] [stdout] 41 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:51:20 [INFO] [stdout] | [INFO] [stdout] 51 | Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 51 - Ok(v) => { return Some((v, byte_length as usize + 1)) }, [INFO] [stdout] 51 + Ok(v) => { Some((v, byte_length as usize + 1)) }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:52:21 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 52 - Err(e) => { return None } [INFO] [stdout] 52 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | return Some((v, len + 1)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 71 - return Some((v, len + 1)) [INFO] [stdout] 71 + Some((v, len + 1)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:73:21 [INFO] [stdout] | [INFO] [stdout] 73 | Err(e) => { return None } [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 73 - Err(e) => { return None } [INFO] [stdout] 73 + Err(e) => { None } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | return Some(header); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 - return Some(header); [INFO] [stdout] 135 + Some(header) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:77:18 [INFO] [stdout] | [INFO] [stdout] 77 | fn get_header(d: &Vec) -> Option
[INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 77 - fn get_header(d: &Vec) -> Option
[INFO] [stdout] 77 + fn get_header(d: &[u8]) -> Option
[INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `version.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:27 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `offset.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:45 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `archive_flags.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:70 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `folder_count.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_count.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:34 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `total_folder_name_length.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:70 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `total_file_name_length.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | || file_flags == None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_flags.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | return folder_records; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 161 - return folder_records; [INFO] [stdout] 161 + folder_records [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:138:26 [INFO] [stdout] | [INFO] [stdout] 138 | fn get_folder_records(d: &Vec, folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 138 - fn get_folder_records(d: &Vec, folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] 138 + fn get_folder_records(d: &[u8], folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | / return FileRecordBlock { [INFO] [stdout] 197 | | name: directory_name, [INFO] [stdout] 198 | | file_records [INFO] [stdout] 199 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 196 ~ FileRecordBlock { [INFO] [stdout] 197 + name: directory_name, [INFO] [stdout] 198 + file_records [INFO] [stdout] 199 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:164:29 [INFO] [stdout] | [INFO] [stdout] 164 | fn get_file_record_block(d: &Vec, folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endia... [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 164 - fn get_file_record_block(d: &Vec, folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endian: bool) -> FileRecordBlock [INFO] [stdout] 164 + fn get_file_record_block(d: &[u8], folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endian: bool) -> FileRecordBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | return file_names; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 217 - return file_names; [INFO] [stdout] 217 + file_names [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:202:22 [INFO] [stdout] | [INFO] [stdout] 202 | fn get_file_names(d: &Vec, offset: u32, file_count: u32) -> Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 202 - fn get_file_names(d: &Vec, offset: u32, file_count: u32) -> Vec [INFO] [stdout] 202 + fn get_file_names(d: &[u8], offset: u32, file_count: u32) -> Vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:236:5 [INFO] [stdout] | [INFO] [stdout] 236 | / return CompressedFileBlock { [INFO] [stdout] 237 | | hash: file_record.name_hash, [INFO] [stdout] 238 | | name, [INFO] [stdout] 239 | | original_size, [INFO] [stdout] 240 | | data: d[start+4..end].to_vec() [INFO] [stdout] 241 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 236 ~ CompressedFileBlock { [INFO] [stdout] 237 + hash: file_record.name_hash, [INFO] [stdout] 238 + name, [INFO] [stdout] 239 + original_size, [INFO] [stdout] 240 + data: d[start+4..end].to_vec() [INFO] [stdout] 241 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:220:33 [INFO] [stdout] | [INFO] [stdout] 220 | fn get_compressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 220 - fn get_compressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] 220 + fn get_compressed_file_block(d: &[u8], file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:257:5 [INFO] [stdout] | [INFO] [stdout] 257 | / return UncompressedFileBlock { [INFO] [stdout] 258 | | hash: file_record.name_hash, [INFO] [stdout] 259 | | name, [INFO] [stdout] 260 | | data: d[start..end].to_vec() [INFO] [stdout] 261 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 257 ~ UncompressedFileBlock { [INFO] [stdout] 258 + hash: file_record.name_hash, [INFO] [stdout] 259 + name, [INFO] [stdout] 260 + data: d[start..end].to_vec() [INFO] [stdout] 261 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:244:35 [INFO] [stdout] | [INFO] [stdout] 244 | fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 244 - fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] 244 + fn get_uncompressed_file_block(d: &[u8], file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | / return BSAParser { [INFO] [stdout] 273 | | data [INFO] [stdout] 274 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 272 ~ BSAParser { [INFO] [stdout] 273 + data [INFO] [stdout] 274 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:340:9 [INFO] [stdout] | [INFO] [stdout] 340 | / return Some(BSA { [INFO] [stdout] 341 | | header, [INFO] [stdout] 342 | | folder_records, [INFO] [stdout] 343 | | file_record_blocks, [INFO] [stdout] ... | [INFO] [stdout] 346 | | file_names [INFO] [stdout] 347 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 340 ~ Some(BSA { [INFO] [stdout] 341 + header, [INFO] [stdout] 342 + folder_records, [INFO] [stdout] 343 + file_record_blocks, [INFO] [stdout] 344 + compressed_file_blocks, [INFO] [stdout] 345 + uncompressed_file_blocks, [INFO] [stdout] 346 + file_names [INFO] [stdout] 347 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | return Some(header); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 - return Some(header); [INFO] [stdout] 135 + Some(header) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:77:18 [INFO] [stdout] | [INFO] [stdout] 77 | fn get_header(d: &Vec) -> Option
[INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 77 - fn get_header(d: &Vec) -> Option
[INFO] [stdout] 77 + fn get_header(d: &[u8]) -> Option
[INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:56:23 [INFO] [stdout] | [INFO] [stdout] 56 | name_hash: self.name_hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.name_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:57:18 [INFO] [stdout] | [INFO] [stdout] 57 | size: self.size.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | offset: self.offset.clone() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:63:26 [INFO] [stdout] | [INFO] [stdout] 63 | self.name_hash = source.name_hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.name_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 64 | self.size = source.size.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | self.offset = source.offset.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.offset` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:80:19 [INFO] [stdout] | [INFO] [stdout] 80 | hash: self.hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:82:28 [INFO] [stdout] | [INFO] [stdout] 82 | original_size: self.original_size.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.original_size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:88:21 [INFO] [stdout] | [INFO] [stdout] 88 | self.hash = source.hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:90:30 [INFO] [stdout] | [INFO] [stdout] 90 | self.original_size = source.original_size.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.original_size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:8 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `version.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] = note: `#[warn(clippy::partialeq_to_none)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:27 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `offset.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:45 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `archive_flags.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:107:70 [INFO] [stdout] | [INFO] [stdout] 107 | if version == None || offset == None || archive_flags == None || folder_count == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `folder_count.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_count.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:34 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `total_folder_name_length.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:108:70 [INFO] [stdout] | [INFO] [stdout] 108 | || file_count == None || total_folder_name_length == None || total_file_name_length == None [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `total_file_name_length.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: binary comparison to literal `Option::None` [INFO] [stdout] --> src/data.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | || file_flags == None { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: use `Option::is_none()` instead: `file_flags.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#partialeq_to_none [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:161:5 [INFO] [stdout] | [INFO] [stdout] 161 | return folder_records; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 161 - return folder_records; [INFO] [stdout] 161 + folder_records [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:138:26 [INFO] [stdout] | [INFO] [stdout] 138 | fn get_folder_records(d: &Vec, folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 138 - fn get_folder_records(d: &Vec, folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] 138 + fn get_folder_records(d: &[u8], folder_count: u32, big_endian: bool) -> Vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:105:19 [INFO] [stdout] | [INFO] [stdout] 105 | hash: self.hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:112:21 [INFO] [stdout] | [INFO] [stdout] 112 | self.hash = source.hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:196:5 [INFO] [stdout] | [INFO] [stdout] 196 | / return FileRecordBlock { [INFO] [stdout] 197 | | name: directory_name, [INFO] [stdout] 198 | | file_records [INFO] [stdout] 199 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 196 ~ FileRecordBlock { [INFO] [stdout] 197 + name: directory_name, [INFO] [stdout] 198 + file_records [INFO] [stdout] 199 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `BSA` contains a capitalized acronym [INFO] [stdout] --> src/bsa.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct BSA { [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Bsa` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:164:29 [INFO] [stdout] | [INFO] [stdout] 164 | fn get_file_record_block(d: &Vec, folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endia... [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 164 - fn get_file_record_block(d: &Vec, folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endian: bool) -> FileRecordBlock [INFO] [stdout] 164 + fn get_file_record_block(d: &[u8], folder_record: &FolderRecord, total_file_name_length: u32, named_directories: bool, big_endian: bool) -> FileRecordBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bsa.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | return (None, None) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 145 - return (None, None) [INFO] [stdout] 145 + (None, None) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | return file_names; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 217 - return file_names; [INFO] [stdout] 217 + file_names [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:202:22 [INFO] [stdout] | [INFO] [stdout] 202 | fn get_file_names(d: &Vec, offset: u32, file_count: u32) -> Vec [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 202 - fn get_file_names(d: &Vec, offset: u32, file_count: u32) -> Vec [INFO] [stdout] 202 + fn get_file_names(d: &[u8], offset: u32, file_count: u32) -> Vec [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `comp` after checking its variant with `is_some` [INFO] [stdout] --> src/bsa.rs:165:44 [INFO] [stdout] | [INFO] [stdout] 164 | if comp.is_some() { [INFO] [stdout] | ----------------- help: try: `if let Some() = comp` [INFO] [stdout] 165 | let compressed_block = comp.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:236:5 [INFO] [stdout] | [INFO] [stdout] 236 | / return CompressedFileBlock { [INFO] [stdout] 237 | | hash: file_record.name_hash, [INFO] [stdout] 238 | | name, [INFO] [stdout] 239 | | original_size, [INFO] [stdout] 240 | | data: d[start+4..end].to_vec() [INFO] [stdout] 241 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 236 ~ CompressedFileBlock { [INFO] [stdout] 237 + hash: file_record.name_hash, [INFO] [stdout] 238 + name, [INFO] [stdout] 239 + original_size, [INFO] [stdout] 240 + data: d[start+4..end].to_vec() [INFO] [stdout] 241 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:220:33 [INFO] [stdout] | [INFO] [stdout] 220 | fn get_compressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 220 - fn get_compressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] 220 + fn get_compressed_file_block(d: &[u8], file_record: &FileRecord, ninth: bool, big_endian: bool) -> CompressedFileBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:257:5 [INFO] [stdout] | [INFO] [stdout] 257 | / return UncompressedFileBlock { [INFO] [stdout] 258 | | hash: file_record.name_hash, [INFO] [stdout] 259 | | name, [INFO] [stdout] 260 | | data: d[start..end].to_vec() [INFO] [stdout] 261 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 257 ~ UncompressedFileBlock { [INFO] [stdout] 258 + hash: file_record.name_hash, [INFO] [stdout] 259 + name, [INFO] [stdout] 260 + data: d[start..end].to_vec() [INFO] [stdout] 261 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> src/data.rs:244:35 [INFO] [stdout] | [INFO] [stdout] 244 | fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 244 - fn get_uncompressed_file_block(d: &Vec, file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] 244 + fn get_uncompressed_file_block(d: &[u8], file_record: &FileRecord, ninth: bool, big_endian: bool) -> UncompressedFileBlock [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | / return BSAParser { [INFO] [stdout] 273 | | data [INFO] [stdout] 274 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 272 ~ BSAParser { [INFO] [stdout] 273 + data [INFO] [stdout] 274 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/main.rs:42:20 [INFO] [stdout] | [INFO] [stdout] 42 | if !bsa_opt.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `bsa_opt.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/data.rs:340:9 [INFO] [stdout] | [INFO] [stdout] 340 | / return Some(BSA { [INFO] [stdout] 341 | | header, [INFO] [stdout] 342 | | folder_records, [INFO] [stdout] 343 | | file_record_blocks, [INFO] [stdout] ... | [INFO] [stdout] 346 | | file_names [INFO] [stdout] 347 | | }); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 340 ~ Some(BSA { [INFO] [stdout] 341 + header, [INFO] [stdout] 342 + folder_records, [INFO] [stdout] 343 + file_record_blocks, [INFO] [stdout] 344 + compressed_file_blocks, [INFO] [stdout] 345 + uncompressed_file_blocks, [INFO] [stdout] 346 + file_names [INFO] [stdout] 347 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `bsa_opt` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:48:31 [INFO] [stdout] | [INFO] [stdout] 42 | if !bsa_opt.is_none() { [INFO] [stdout] | ----------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | let bsa = bsa_opt.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:56:23 [INFO] [stdout] | [INFO] [stdout] 56 | name_hash: self.name_hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.name_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:57:18 [INFO] [stdout] | [INFO] [stdout] 57 | size: self.size.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | offset: self.offset.clone() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.offset` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:63:26 [INFO] [stdout] | [INFO] [stdout] 63 | self.name_hash = source.name_hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.name_hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:64:21 [INFO] [stdout] | [INFO] [stdout] 64 | self.size = source.size.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | self.offset = source.offset.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.offset` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:80:19 [INFO] [stdout] | [INFO] [stdout] 80 | hash: self.hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:82:28 [INFO] [stdout] | [INFO] [stdout] 82 | original_size: self.original_size.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.original_size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:88:21 [INFO] [stdout] | [INFO] [stdout] 88 | self.hash = source.hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:90:30 [INFO] [stdout] | [INFO] [stdout] 90 | self.original_size = source.original_size.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.original_size` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:105:19 [INFO] [stdout] | [INFO] [stdout] 105 | hash: self.hash.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u64` which implements the `Copy` trait [INFO] [stdout] --> src/bsa.rs:112:21 [INFO] [stdout] | [INFO] [stdout] 112 | self.hash = source.hash.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `source.hash` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: name `BSA` contains a capitalized acronym [INFO] [stdout] --> src/bsa.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | pub struct BSA { [INFO] [stdout] | ^^^ help: consider making the acronym lowercase, except the initial letter: `Bsa` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#upper_case_acronyms [INFO] [stdout] = note: `#[warn(clippy::upper_case_acronyms)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/bsa.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | return (None, None) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 145 - return (None, None) [INFO] [stdout] 145 + (None, None) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:36:17 [INFO] [stdout] | [INFO] [stdout] 36 | reader.read_to_end(&mut buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 36 | let _ = reader.read_to_end(&mut buf); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `comp` after checking its variant with `is_some` [INFO] [stdout] --> src/bsa.rs:165:44 [INFO] [stdout] | [INFO] [stdout] 164 | if comp.is_some() { [INFO] [stdout] | ----------------- help: try: `if let Some() = comp` [INFO] [stdout] 165 | let compressed_block = comp.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] = note: `#[warn(clippy::unnecessary_unwrap)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/main.rs:42:20 [INFO] [stdout] | [INFO] [stdout] 42 | if !bsa_opt.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try: `bsa_opt.is_some()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `unwrap` on `bsa_opt` after checking its variant with `is_none` [INFO] [stdout] --> src/main.rs:48:31 [INFO] [stdout] | [INFO] [stdout] 42 | if !bsa_opt.is_none() { [INFO] [stdout] | ----------------- the check is happening here [INFO] [stdout] ... [INFO] [stdout] 48 | let bsa = bsa_opt.unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: try using `match` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_unwrap [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/bsa.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | fs::create_dir_all(&path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 158 | let _ = fs::create_dir_all(&path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/bsa.rs:171:21 [INFO] [stdout] | [INFO] [stdout] 171 | fs::write(format!("{}/{}", path, file_name), uncompressed_block.data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 171 | let _ = fs::write(format!("{}/{}", path, file_name), uncompressed_block.data); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:36:17 [INFO] [stdout] | [INFO] [stdout] 36 | reader.read_to_end(&mut buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 36 | let _ = reader.read_to_end(&mut buf); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/bsa.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | fs::create_dir_all(&path); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 158 | let _ = fs::create_dir_all(&path); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/bsa.rs:171:21 [INFO] [stdout] | [INFO] [stdout] 171 | fs::write(format!("{}/{}", path, file_name), uncompressed_block.data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 171 | let _ = fs::write(format!("{}/{}", path, file_name), uncompressed_block.data); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.22s [INFO] running `Command { std: "docker" "inspect" "8b7c538e2dbbb604367a3389993fa4c6234dc29aad37a257db8c962ce075c193", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b7c538e2dbbb604367a3389993fa4c6234dc29aad37a257db8c962ce075c193", kill_on_drop: false }` [INFO] [stdout] 8b7c538e2dbbb604367a3389993fa4c6234dc29aad37a257db8c962ce075c193