[INFO] cloning repository https://github.com/N0fix/Ariane [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/N0fix/Ariane" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FN0fix%2FAriane", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FN0fix%2FAriane'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ce98e12b96bc66c835ed9f264273f90373ffca11 [INFO] testing N0fix/Ariane against try#8da20828b6ea601dfd8e2448cb50ace88876bd78 for pr-150933 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FN0fix%2FAriane" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/N0fix/Ariane [INFO] finished tweaking git repo https://github.com/N0fix/Ariane [INFO] tweaked toml for git repo https://github.com/N0fix/Ariane written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/N0fix/Ariane on toolchain 8da20828b6ea601dfd8e2448cb50ace88876bd78 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/N0fix/Ariane 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" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fe2a9be20cc037e375d9601d01e786c948d4229089ddd67b0e06f1e0f6571b89 [INFO] running `Command { std: "docker" "start" "-a" "fe2a9be20cc037e375d9601d01e786c948d4229089ddd67b0e06f1e0f6571b89", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fe2a9be20cc037e375d9601d01e786c948d4229089ddd67b0e06f1e0f6571b89", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fe2a9be20cc037e375d9601d01e786c948d4229089ddd67b0e06f1e0f6571b89", kill_on_drop: false }` [INFO] [stdout] fe2a9be20cc037e375d9601d01e786c948d4229089ddd67b0e06f1e0f6571b89 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 823adbca8b8d0ead483f1c6e6aea40cad3b05100e513090d32173c97cec11193 [INFO] running `Command { std: "docker" "start" "-a" "823adbca8b8d0ead483f1c6e6aea40cad3b05100e513090d32173c97cec11193", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.6.3 [INFO] [stderr] Compiling futures-channel v0.3.28 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling syn v2.0.31 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Compiling thiserror-core v1.0.38 [INFO] [stderr] Compiling utf8parse v0.2.1 [INFO] [stderr] Compiling anstyle v1.0.2 [INFO] [stderr] Compiling anstyle-query v1.0.0 [INFO] [stderr] Compiling portable-atomic v1.4.3 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling colorchoice v1.0.0 [INFO] [stderr] Compiling miniz_oxide v0.7.1 [INFO] [stderr] Compiling hashbrown v0.14.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling anstyle-parse v0.2.1 [INFO] [stderr] Compiling clap_lex v0.5.1 [INFO] [stderr] Compiling console v0.15.7 [INFO] [stderr] Compiling anstream v0.5.0 [INFO] [stderr] Compiling filetime v0.2.22 [INFO] [stderr] Compiling xattr v1.0.1 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling plain v0.2.3 [INFO] [stderr] Compiling uuid v1.4.1 [INFO] [stderr] Compiling winnow v0.5.15 [INFO] [stderr] Compiling either v1.9.0 [INFO] [stderr] Compiling fallible-iterator v0.2.0 [INFO] [stderr] Compiling clap_builder v4.4.2 [INFO] [stderr] Compiling tar v0.4.40 [INFO] [stderr] Compiling flate2 v1.0.27 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling aho-corasick v1.0.5 [INFO] [stderr] Compiling indexmap v2.0.0 [INFO] [stderr] Compiling iced-x86 v1.20.0 [INFO] [stderr] Compiling fuzzyhash v0.2.2 [INFO] [stderr] Compiling json v0.12.4 [INFO] [stderr] Compiling indicatif v0.17.6 [INFO] [stderr] Compiling regex-automata v0.3.8 [INFO] [stderr] Compiling thiserror-core-impl v1.0.38 [INFO] [stderr] Compiling ruzstd v0.4.0 [INFO] [stderr] Compiling serde_derive v1.0.188 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling scroll_derive v0.11.1 [INFO] [stderr] Compiling clap_derive v4.4.2 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling object v0.32.1 [INFO] [stderr] Compiling scroll v0.11.0 [INFO] [stderr] Compiling pdb v0.8.0 [INFO] [stderr] Compiling goblin v0.7.1 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling clap v4.4.2 [INFO] [stderr] Compiling regex v1.9.5 [INFO] [stderr] Compiling env_logger v0.10.0 [INFO] [stderr] Compiling serde v1.0.188 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling h2 v0.3.21 [INFO] [stderr] Compiling futures-executor v0.3.28 [INFO] [stderr] Compiling futures v0.3.28 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Compiling serde_path_to_error v0.1.14 [INFO] [stderr] Compiling serde_spanned v0.6.3 [INFO] [stderr] Compiling toml_datetime v0.6.3 [INFO] [stderr] Compiling chrono v0.4.28 [INFO] [stderr] Compiling toml_edit v0.19.14 [INFO] [stderr] Compiling hyper v0.14.27 [INFO] [stderr] Compiling hyper-tls v0.5.0 [INFO] [stderr] Compiling reqwest v0.11.20 [INFO] [stderr] Compiling crates_io_api v0.8.1 [INFO] [stderr] Compiling ariane v1.0.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/compilation/compile.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [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: `collections::HashMap` [INFO] [stdout] --> src/compilation/compile.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{collections::HashMap, fs::OpenOptions, path::Path, process::Command}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Formatted` [INFO] [stdout] --> src/compilation/compile.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use toml_edit::{Array, Document, Formatted, Item, Value}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::info_gathering::krate::Krate` [INFO] [stdout] --> src/compilation/compile.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::info_gathering::krate::Krate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/functions_utils/search.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fs` [INFO] [stdout] --> src/functions_utils/search.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{fs, path::Path}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stdout] --> src/functions_utils/search.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use fuzzyhash::FuzzyHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::section_table::SectionTable` [INFO] [stdout] --> src/functions_utils/search.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use goblin::pe::section_table::SectionTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::Coff` [INFO] [stdout] --> src/functions_utils/search.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use goblin::pe::Coff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pe` [INFO] [stdout] --> src/functions_utils/search.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use goblin::{archive, pe}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `object::coff` [INFO] [stdout] --> src/functions_utils/search.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use object::coff; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FuzzyFunc` and `Hash` [INFO] [stdout] --> src/functions_utils/search.rs:15:52 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::sig::sig_generation::{hash_single_func, FuzzyFunc, Hash}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/info_gathering/compiler.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | io::{Cursor, Write}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/info_gathering/krate.rs:2:18 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::Error` [INFO] [stdout] --> src/info_gathering/krate.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | error::Error, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/sig/comparaison.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `functions_utils::search::Function` and `sig::sig_generation::hash_functions` [INFO] [stdout] --> src/sig/comparaison.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{functions_utils::search::Function, sig::sig_generation::hash_functions}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::export::find_fn_name` [INFO] [stdout] --> src/sig/sig_generation.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::{functions_utils::search::Function, utils::export::find_fn_name}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/functions_utils/search.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/functions_utils/search.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | let mut result = get_exception_data_functions(&exe_bytes); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `member` [INFO] [stdout] --> src/functions_utils/search.rs:232:24 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_member` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/functions_utils/search.rs:232:32 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reloc` [INFO] [stdout] --> src/functions_utils/search.rs:259:33 [INFO] [stdout] | [INFO] [stdout] 259 | ... for reloc in sec_data.relocations(extracted).unwrap().into_iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_reloc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VALID_MIN_BYTES_FUNCTION_TRESHOLD` is never used [INFO] [stdout] --> src/functions_utils/search.rs:41:7 [INFO] [stdout] | [INFO] [stdout] 41 | const VALID_MIN_BYTES_FUNCTION_TRESHOLD: u32 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tag` is never read [INFO] [stdout] --> src/info_gathering/compiler.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct CommitHash { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 9 | hash: String, [INFO] [stdout] 10 | tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CommitHash` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/functions_utils/search.rs:74:39 [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | k.fill_information_from_crates_api(); [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] 61 | let _ = k.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | self.fill_information_from_crates_api(); [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] 70 | let _ = self.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/info_gathering/krate.rs:93:36 [INFO] [stdout] | [INFO] [stdout] 93 | let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `Path` does not implement `Clone`, so calling `clone` on `&Path` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 93 - let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] 93 + let tarball_path = dest_dir.join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `debug`, `info`, and `log_enabled` [INFO] [stdout] --> src/commands/download.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | use log::{debug, error, info, log_enabled, Level}; [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: `compilation::compile` [INFO] [stdout] --> src/commands/info.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | compilation::compile, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `debug`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/commands/info.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subcommand` [INFO] [stdout] --> src/commands/recover.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use clap::{Parser, Subcommand}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stdout] --> src/commands/recover.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use fuzzyhash::FuzzyHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level` and `log_enabled` [INFO] [stdout] --> src/commands/recover.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `semver::Version` [INFO] [stdout] --> src/commands/recover.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use semver::Version; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/commands/recover.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/commands/recover.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/commands/recover.rs:24:37 [INFO] [stdout] | [INFO] [stdout] 24 | use ariane::info_gathering::krate::{self, Dependencies, Krate}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Parser` [INFO] [stdout] --> src/commands/recover.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | use clap::{Parser, Subcommand}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/commands/download.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Err(e) => { [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: variable does not need to be mutable [INFO] [stdout] --> src/commands/recover.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | let mut deps_krates = deps.get_dependencies_mut(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/commands/recover.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [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] 127 | let _ = extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.62s [INFO] running `Command { std: "docker" "inspect" "823adbca8b8d0ead483f1c6e6aea40cad3b05100e513090d32173c97cec11193", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "823adbca8b8d0ead483f1c6e6aea40cad3b05100e513090d32173c97cec11193", kill_on_drop: false }` [INFO] [stdout] 823adbca8b8d0ead483f1c6e6aea40cad3b05100e513090d32173c97cec11193 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 80ab11a234ee020da524f80e09549dd3ae0ebca29d2e8c21a746afe1ea9b7843 [INFO] running `Command { std: "docker" "start" "-a" "80ab11a234ee020da524f80e09549dd3ae0ebca29d2e8c21a746afe1ea9b7843", kill_on_drop: false }` [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/compilation/compile.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [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: `collections::HashMap` [INFO] [stdout] --> src/compilation/compile.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{collections::HashMap, fs::OpenOptions, path::Path, process::Command}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Formatted` [INFO] [stdout] --> src/compilation/compile.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use toml_edit::{Array, Document, Formatted, Item, Value}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::info_gathering::krate::Krate` [INFO] [stdout] --> src/compilation/compile.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::info_gathering::krate::Krate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/functions_utils/search.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fs` [INFO] [stdout] --> src/functions_utils/search.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{fs, path::Path}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stdout] --> src/functions_utils/search.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use fuzzyhash::FuzzyHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::section_table::SectionTable` [INFO] [stdout] --> src/functions_utils/search.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use goblin::pe::section_table::SectionTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::Coff` [INFO] [stdout] --> src/functions_utils/search.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use goblin::pe::Coff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pe` [INFO] [stdout] --> src/functions_utils/search.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use goblin::{archive, pe}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `object::coff` [INFO] [stdout] --> src/functions_utils/search.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use object::coff; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FuzzyFunc` and `Hash` [INFO] [stdout] --> src/functions_utils/search.rs:15:52 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::sig::sig_generation::{hash_single_func, FuzzyFunc, Hash}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/info_gathering/compiler.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | io::{Cursor, Write}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/info_gathering/krate.rs:2:18 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::Error` [INFO] [stdout] --> src/info_gathering/krate.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | error::Error, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/sig/comparaison.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `functions_utils::search::Function` and `sig::sig_generation::hash_functions` [INFO] [stdout] --> src/sig/comparaison.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{functions_utils::search::Function, sig::sig_generation::hash_functions}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::export::find_fn_name` [INFO] [stdout] --> src/sig/sig_generation.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::{functions_utils::search::Function, utils::export::find_fn_name}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/functions_utils/search.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/functions_utils/search.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | let mut result = get_exception_data_functions(&exe_bytes); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `member` [INFO] [stdout] --> src/functions_utils/search.rs:232:24 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_member` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/functions_utils/search.rs:232:32 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reloc` [INFO] [stdout] --> src/functions_utils/search.rs:259:33 [INFO] [stdout] | [INFO] [stdout] 259 | ... for reloc in sec_data.relocations(extracted).unwrap().into_iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_reloc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VALID_MIN_BYTES_FUNCTION_TRESHOLD` is never used [INFO] [stdout] --> src/functions_utils/search.rs:41:7 [INFO] [stdout] | [INFO] [stdout] 41 | const VALID_MIN_BYTES_FUNCTION_TRESHOLD: u32 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tag` is never read [INFO] [stdout] --> src/info_gathering/compiler.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct CommitHash { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 9 | hash: String, [INFO] [stdout] 10 | tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CommitHash` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/functions_utils/search.rs:74:39 [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | k.fill_information_from_crates_api(); [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] 61 | let _ = k.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling ariane v1.0.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | self.fill_information_from_crates_api(); [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] 70 | let _ = self.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/info_gathering/krate.rs:93:36 [INFO] [stdout] | [INFO] [stdout] 93 | let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `Path` does not implement `Clone`, so calling `clone` on `&Path` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 93 - let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] 93 + let tarball_path = dest_dir.join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/compilation/compile.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [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: `collections::HashMap` [INFO] [stdout] --> src/compilation/compile.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{collections::HashMap, fs::OpenOptions, path::Path, process::Command}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Formatted` [INFO] [stdout] --> src/compilation/compile.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use toml_edit::{Array, Document, Formatted, Item, Value}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::info_gathering::krate::Krate` [INFO] [stdout] --> src/compilation/compile.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::info_gathering::krate::Krate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/functions_utils/search.rs:1:18 [INFO] [stdout] | [INFO] [stdout] 1 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fs` [INFO] [stdout] --> src/functions_utils/search.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | use std::{fs, path::Path}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stdout] --> src/functions_utils/search.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use fuzzyhash::FuzzyHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::section_table::SectionTable` [INFO] [stdout] --> src/functions_utils/search.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use goblin::pe::section_table::SectionTable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `goblin::pe::Coff` [INFO] [stdout] --> src/functions_utils/search.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use goblin::pe::Coff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pe` [INFO] [stdout] --> src/functions_utils/search.rs:10:23 [INFO] [stdout] | [INFO] [stdout] 10 | use goblin::{archive, pe}; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `object::coff` [INFO] [stdout] --> src/functions_utils/search.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use object::coff; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FuzzyFunc` and `Hash` [INFO] [stdout] --> src/functions_utils/search.rs:15:52 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::sig::sig_generation::{hash_single_func, FuzzyFunc, Hash}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/info_gathering/compiler.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | io::{Cursor, Write}, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/info_gathering/krate.rs:2:18 [INFO] [stdout] | [INFO] [stdout] 2 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `error::Error` [INFO] [stdout] --> src/info_gathering/krate.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | error::Error, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/sig/comparaison.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `functions_utils::search::Function` and `sig::sig_generation::hash_functions` [INFO] [stdout] --> src/sig/comparaison.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{functions_utils::search::Function, sig::sig_generation::hash_functions}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::export::find_fn_name` [INFO] [stdout] --> src/sig/sig_generation.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::{functions_utils::search::Function, utils::export::find_fn_name}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `debug`, `info`, and `log_enabled` [INFO] [stdout] --> src/commands/download.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | use log::{debug, error, info, log_enabled, Level}; [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: `compilation::compile` [INFO] [stdout] --> src/commands/info.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | compilation::compile, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level`, `debug`, `error`, `info`, and `log_enabled` [INFO] [stdout] --> src/commands/info.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^ ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Subcommand` [INFO] [stdout] --> src/commands/recover.rs:4:20 [INFO] [stdout] | [INFO] [stdout] 4 | use clap::{Parser, Subcommand}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stdout] --> src/commands/recover.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use fuzzyhash::FuzzyHash; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Level` and `log_enabled` [INFO] [stdout] --> src/commands/recover.rs:8:31 [INFO] [stdout] | [INFO] [stdout] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `semver::Version` [INFO] [stdout] --> src/commands/recover.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use semver::Version; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/commands/recover.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/commands/recover.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/commands/recover.rs:24:37 [INFO] [stdout] | [INFO] [stdout] 24 | use ariane::info_gathering::krate::{self, Dependencies, Krate}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/functions_utils/search.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Parser` [INFO] [stdout] --> src/commands/recover.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | use clap::{Parser, Subcommand}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/commands/download.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | Err(e) => { [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: variable does not need to be mutable [INFO] [stdout] --> src/functions_utils/search.rs:217:9 [INFO] [stdout] | [INFO] [stdout] 217 | let mut result = get_exception_data_functions(&exe_bytes); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `member` [INFO] [stdout] --> src/functions_utils/search.rs:232:24 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_member` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/functions_utils/search.rs:232:32 [INFO] [stdout] | [INFO] [stdout] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reloc` [INFO] [stdout] --> src/functions_utils/search.rs:259:33 [INFO] [stdout] | [INFO] [stdout] 259 | ... for reloc in sec_data.relocations(extracted).unwrap().into_iter() { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_reloc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/commands/recover.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | let mut deps_krates = deps.get_dependencies_mut(); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/commands/recover.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [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] 127 | let _ = extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `VALID_MIN_BYTES_FUNCTION_TRESHOLD` is never used [INFO] [stdout] --> src/functions_utils/search.rs:41:7 [INFO] [stdout] | [INFO] [stdout] 41 | const VALID_MIN_BYTES_FUNCTION_TRESHOLD: u32 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tag` is never read [INFO] [stdout] --> src/info_gathering/compiler.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct CommitHash { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 9 | hash: String, [INFO] [stdout] 10 | tag: Option, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CommitHash` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/functions_utils/search.rs:74:39 [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec { [INFO] [stdout] | ^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | k.fill_information_from_crates_api(); [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] 61 | let _ = k.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/info_gathering/krate.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | self.fill_information_from_crates_api(); [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] 70 | let _ = self.fill_information_from_crates_api(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/info_gathering/krate.rs:93:36 [INFO] [stdout] | [INFO] [stdout] 93 | let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `Path` does not implement `Clone`, so calling `clone` on `&Path` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 93 - let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] 93 + let tarball_path = dest_dir.join(format!("{:#}.tar.gz", self.name)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s [INFO] running `Command { std: "docker" "inspect" "80ab11a234ee020da524f80e09549dd3ae0ebca29d2e8c21a746afe1ea9b7843", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "80ab11a234ee020da524f80e09549dd3ae0ebca29d2e8c21a746afe1ea9b7843", kill_on_drop: false }` [INFO] [stdout] 80ab11a234ee020da524f80e09549dd3ae0ebca29d2e8c21a746afe1ea9b7843 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:cfa559dde23f44738f9990739aaa3487d8df3af37eb5df0572f7cf76004a604a" "/opt/rustwide/cargo-home/bin/cargo" "+8da20828b6ea601dfd8e2448cb50ace88876bd78" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7a0273ed48cb040774448e03b5f6f9c9e9090386fbffc736fc8050af7944b930 [INFO] running `Command { std: "docker" "start" "-a" "7a0273ed48cb040774448e03b5f6f9c9e9090386fbffc736fc8050af7944b930", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stderr] --> src/compilation/compile.rs:1:18 [INFO] [stderr] | [INFO] [stderr] 1 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `collections::HashMap` [INFO] [stderr] --> src/compilation/compile.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | use std::{collections::HashMap, fs::OpenOptions, path::Path, process::Command}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Formatted` [INFO] [stderr] --> src/compilation/compile.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | use toml_edit::{Array, Document, Formatted, Item, Value}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::info_gathering::krate::Krate` [INFO] [stderr] --> src/compilation/compile.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::info_gathering::krate::Krate; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stderr] --> src/functions_utils/search.rs:1:18 [INFO] [stderr] | [INFO] [stderr] 1 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fs` [INFO] [stderr] --> src/functions_utils/search.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | use std::{fs, path::Path}; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stderr] --> src/functions_utils/search.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use fuzzyhash::FuzzyHash; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `goblin::pe::section_table::SectionTable` [INFO] [stderr] --> src/functions_utils/search.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use goblin::pe::section_table::SectionTable; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `goblin::pe::Coff` [INFO] [stderr] --> src/functions_utils/search.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use goblin::pe::Coff; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `pe` [INFO] [stderr] --> src/functions_utils/search.rs:10:23 [INFO] [stderr] | [INFO] [stderr] 10 | use goblin::{archive, pe}; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `object::coff` [INFO] [stderr] --> src/functions_utils/search.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use object::coff; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `FuzzyFunc` and `Hash` [INFO] [stderr] --> src/functions_utils/search.rs:15:52 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::sig::sig_generation::{hash_single_func, FuzzyFunc, Hash}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Write` [INFO] [stderr] --> src/info_gathering/compiler.rs:3:18 [INFO] [stderr] | [INFO] [stderr] 3 | io::{Cursor, Write}, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stderr] --> src/info_gathering/krate.rs:2:18 [INFO] [stderr] | [INFO] [stderr] 2 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `error::Error` [INFO] [stderr] --> src/info_gathering/krate.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | error::Error, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Level`, `error`, `info`, and `log_enabled` [INFO] [stderr] --> src/sig/comparaison.rs:4:18 [INFO] [stderr] | [INFO] [stderr] 4 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `functions_utils::search::Function` and `sig::sig_generation::hash_functions` [INFO] [stderr] --> src/sig/comparaison.rs:8:13 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::{functions_utils::search::Function, sig::sig_generation::hash_functions}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `utils::export::find_fn_name` [INFO] [stderr] --> src/sig/sig_generation.rs:6:48 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::{functions_utils::search::Function, utils::export::find_fn_name}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Write` [INFO] [stderr] --> src/functions_utils/search.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::io::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/functions_utils/search.rs:217:9 [INFO] [stderr] | [INFO] [stderr] 217 | let mut result = get_exception_data_functions(&exe_bytes); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `member` [INFO] [stderr] --> src/functions_utils/search.rs:232:24 [INFO] [stderr] | [INFO] [stderr] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_member` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/functions_utils/search.rs:232:32 [INFO] [stderr] | [INFO] [stderr] 232 | for (name, member, idx) in &archive.summarize() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reloc` [INFO] [stderr] --> src/functions_utils/search.rs:259:33 [INFO] [stderr] | [INFO] [stderr] 259 | ... for reloc in sec_data.relocations(extracted).unwrap().into_iter() { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_reloc` [INFO] [stderr] [INFO] [stderr] warning: constant `VALID_MIN_BYTES_FUNCTION_TRESHOLD` is never used [INFO] [stderr] --> src/functions_utils/search.rs:41:7 [INFO] [stderr] | [INFO] [stderr] 41 | const VALID_MIN_BYTES_FUNCTION_TRESHOLD: u32 = 50; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: field `tag` is never read [INFO] [stderr] --> src/info_gathering/compiler.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 8 | pub struct CommitHash { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 9 | hash: String, [INFO] [stderr] 10 | tag: Option, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `CommitHash` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/functions_utils/search.rs:74:39 [INFO] [stderr] | [INFO] [stderr] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec { [INFO] [stderr] | ^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 74 | fn get_exception_data_functions(file: &[u8]) -> Vec> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/info_gathering/krate.rs:61:9 [INFO] [stderr] | [INFO] [stderr] 61 | k.fill_information_from_crates_api(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 61 | let _ = k.fill_information_from_crates_api(); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/info_gathering/krate.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | self.fill_information_from_crates_api(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 70 | let _ = self.fill_information_from_crates_api(); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/info_gathering/krate.rs:93:36 [INFO] [stderr] | [INFO] [stderr] 93 | let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the type `Path` does not implement `Clone`, so calling `clone` on `&Path` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 93 - let tarball_path = dest_dir.clone().join(format!("{:#}.tar.gz", self.name)); [INFO] [stderr] 93 + let tarball_path = dest_dir.join(format!("{:#}.tar.gz", self.name)); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `ariane` (lib) generated 29 warnings (run `cargo fix --lib -p ariane` to apply 24 suggestions) [INFO] [stderr] warning: `ariane` (lib test) generated 29 warnings (29 duplicates) [INFO] [stderr] warning: unused imports: `Level`, `debug`, `info`, and `log_enabled` [INFO] [stderr] --> src/commands/download.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `compilation::compile` [INFO] [stderr] --> src/commands/info.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | compilation::compile, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Level`, `debug`, `error`, `info`, and `log_enabled` [INFO] [stderr] --> src/commands/info.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^ ^^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Subcommand` [INFO] [stderr] --> src/commands/recover.rs:4:20 [INFO] [stderr] | [INFO] [stderr] 4 | use clap::{Parser, Subcommand}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fuzzyhash::FuzzyHash` [INFO] [stderr] --> src/commands/recover.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use fuzzyhash::FuzzyHash; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Level` and `log_enabled` [INFO] [stderr] --> src/commands/recover.rs:8:31 [INFO] [stderr] | [INFO] [stderr] 8 | use log::{debug, error, info, log_enabled, Level}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `semver::Version` [INFO] [stderr] --> src/commands/recover.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use semver::Version; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::File` [INFO] [stderr] --> src/commands/recover.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use std::fs::File; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::result` [INFO] [stderr] --> src/commands/recover.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | use std::result; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> src/commands/recover.rs:24:37 [INFO] [stderr] | [INFO] [stderr] 24 | use ariane::info_gathering::krate::{self, Dependencies, Krate}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Parser` [INFO] [stderr] --> src/commands/recover.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | use clap::{Parser, Subcommand}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/commands/download.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | Err(e) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/commands/recover.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | let mut deps_krates = deps.get_dependencies_mut(); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/commands/recover.rs:127:5 [INFO] [stderr] | [INFO] [stderr] 127 | extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 127 | let _ = extract_targz(targz_path.as_path(), &dest_dir.join(dest_dir)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `ariane` (bin "ariane" test) generated 14 warnings (run `cargo fix --bin "ariane" -p ariane --tests` to apply 12 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ariane-2edc187714745efb) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/bin.rs (/opt/rustwide/target/debug/deps/ariane-5f75a612c20b243c) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests ariane [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/sig/sig_generation.rs - sig::sig_generation::hash_single_func (line 57) ... FAILED [INFO] [stdout] test src/info_gathering/krate.rs - info_gathering::krate::Dependencies (line 198) ... FAILED [INFO] [stdout] test src/info_gathering/compiler.rs - info_gathering::compiler::RustcInformation (line 30) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/sig/sig_generation.rs - sig::sig_generation::hash_single_func (line 57) stdout ---- [INFO] [stdout] error: expected one of `!` or `::`, found `rax` [INFO] [stdout] --> src/sig/sig_generation.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | lea rax, off_14006580 [INFO] [stdout] | ^^^ expected one of `!` or `::` [INFO] [stdout] | [INFO] [stdout] help: there is a keyword `let` with a similar name [INFO] [stdout] | [INFO] [stdout] 58 - lea rax, off_14006580 [INFO] [stdout] 58 + let rax, off_14006580 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/info_gathering/krate.rs - info_gathering::krate::Dependencies (line 198) stdout ---- [INFO] [stdout] error[E0425]: cannot find type `Dependencies` in this scope [INFO] [stdout] --> src/info_gathering/krate.rs:199:15 [INFO] [stdout] | [INFO] [stdout] 199 | let mut deps: Dependencies = Dependencies::from_buffer(&bytes); [INFO] [stdout] | ^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 198 + use ariane::info_gathering::krate::Dependencies; [INFO] [stdout] | [INFO] [stdout] 198 + use crates_io_api::Dependencies; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Dependencies` in this scope [INFO] [stdout] --> src/info_gathering/krate.rs:199:30 [INFO] [stdout] | [INFO] [stdout] 199 | let mut deps: Dependencies = Dependencies::from_buffer(&bytes); [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Dependencies` [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these structs [INFO] [stdout] | [INFO] [stdout] 198 + use ariane::info_gathering::krate::Dependencies; [INFO] [stdout] | [INFO] [stdout] 198 + use crates_io_api::Dependencies; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `bytes` in this scope [INFO] [stdout] --> src/info_gathering/krate.rs:199:57 [INFO] [stdout] | [INFO] [stdout] 199 | let mut deps: Dependencies = Dependencies::from_buffer(&bytes); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0433. [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/info_gathering/compiler.rs - info_gathering::compiler::RustcInformation (line 30) stdout ---- [INFO] [stdout] error[E0433]: cannot find type `RustcInformation` in this scope [INFO] [stdout] --> src/info_gathering/compiler.rs:33:31 [INFO] [stdout] | [INFO] [stdout] 33 | if let Some(compiler_info) = RustcInformation::from_file(&Path::new(&args.file))? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ use of undeclared type `RustcInformation` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 30 + use ariane::info_gathering::compiler::RustcInformation; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Path` in this scope [INFO] [stdout] --> src/info_gathering/compiler.rs:33:60 [INFO] [stdout] | [INFO] [stdout] 33 | if let Some(compiler_info) = RustcInformation::from_file(&Path::new(&args.file))? { [INFO] [stdout] | ^^^^ use of undeclared type `Path` [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 30 + use std::path::Path; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `args` in this scope [INFO] [stdout] --> src/info_gathering/compiler.rs:33:71 [INFO] [stdout] | [INFO] [stdout] 33 | if let Some(compiler_info) = RustcInformation::from_file(&Path::new(&args.file))? { [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 30 + use std::env::args; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0433. [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/info_gathering/compiler.rs - info_gathering::compiler::RustcInformation (line 30) [INFO] [stdout] src/info_gathering/krate.rs - info_gathering::krate::Dependencies (line 198) [INFO] [stdout] src/sig/sig_generation.rs - sig::sig_generation::hash_single_func (line 57) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "7a0273ed48cb040774448e03b5f6f9c9e9090386fbffc736fc8050af7944b930", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a0273ed48cb040774448e03b5f6f9c9e9090386fbffc736fc8050af7944b930", kill_on_drop: false }` [INFO] [stdout] 7a0273ed48cb040774448e03b5f6f9c9e9090386fbffc736fc8050af7944b930