[INFO] fetching crate nargo-script-analyzer 0.0.0... [INFO] testing nargo-script-analyzer-0.0.0 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate nargo-script-analyzer 0.0.0 into /workspace/builds/worker-4-tc2/source [INFO] started tweaking crates.io crate nargo-script-analyzer 0.0.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate nargo-script-analyzer 0.0.0 [INFO] tweaked toml for crates.io crate nargo-script-analyzer 0.0.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate nargo-script-analyzer 0.0.0 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate nargo-script-analyzer 0.0.0 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5eeadd800265d36d338b47bf6c3284ee38794592862fdaba385bc1ce490c1b1e [INFO] running `Command { std: "docker" "start" "-a" "5eeadd800265d36d338b47bf6c3284ee38794592862fdaba385bc1ce490c1b1e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5eeadd800265d36d338b47bf6c3284ee38794592862fdaba385bc1ce490c1b1e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5eeadd800265d36d338b47bf6c3284ee38794592862fdaba385bc1ce490c1b1e", kill_on_drop: false }` [INFO] [stdout] 5eeadd800265d36d338b47bf6c3284ee38794592862fdaba385bc1ce490c1b1e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d4f9236f05fa50fab97f776d78c94f778350ccd5357782d873c9aafa797de204 [INFO] running `Command { std: "docker" "start" "-a" "d4f9236f05fa50fab97f776d78c94f778350ccd5357782d873c9aafa797de204", kill_on_drop: false }` [INFO] [stderr] Compiling syn v2.0.117 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling shell-words v1.1.1 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tempfile v3.26.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dialoguer v0.11.0 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling nargo-types v0.0.0 [INFO] [stderr] Compiling nargo-ir v0.0.0 [INFO] [stderr] Compiling nargo-script-analyzer v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: value assigned to `has_sql_keyword` is never read [INFO] [stdout] --> src/lib.rs:1384:51 [INFO] [stdout] | [INFO] [stdout] 1384 | let mut has_sql_keyword = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `has_user_input` is never read [INFO] [stdout] --> src/lib.rs:1385:50 [INFO] [stdout] | [INFO] [stdout] 1385 | let mut has_user_input = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmt` [INFO] [stdout] --> src/lib.rs:1747:29 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_stmt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `report` [INFO] [stdout] --> src/lib.rs:1747:44 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_statements` is never used [INFO] [stdout] --> src/lib.rs:1739:12 [INFO] [stdout] | [INFO] [stdout] 1739 | fn count_statements(stmt: &JsStmt) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for the crate [INFO] [stdout] --> src/lib.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #![warn(missing_docs)] [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | use nargo_ir::{JsExpr, JsProgram, JsStmt}; [INFO] [stdout] 4 | | use nargo_types::{NargoValue, Result, Span}; [INFO] [stdout] ... | [INFO] [stdout] 2092 | | engine [INFO] [stdout] 2093 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct ScriptMetadata { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub signals: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub computed: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub props: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub emits: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub actions: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub dependencies: HashMap>, // variable -> variables it depends on [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn to_nargo_value(&self) -> NargoValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:1762:1 [INFO] [stdout] | [INFO] [stdout] 1762 | pub struct ScriptAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:1765:5 [INFO] [stdout] | [INFO] [stdout] 1765 | pub fn new() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:1769:5 [INFO] [stdout] | [INFO] [stdout] 1769 | pub fn analyze(&self, program: &JsProgram) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.97s [INFO] running `Command { std: "docker" "inspect" "d4f9236f05fa50fab97f776d78c94f778350ccd5357782d873c9aafa797de204", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d4f9236f05fa50fab97f776d78c94f778350ccd5357782d873c9aafa797de204", kill_on_drop: false }` [INFO] [stdout] d4f9236f05fa50fab97f776d78c94f778350ccd5357782d873c9aafa797de204 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 41a0180c252ac13d1611f1d271f08233a282a821c7b5ea579945a893ae4cef14 [INFO] running `Command { std: "docker" "start" "-a" "41a0180c252ac13d1611f1d271f08233a282a821c7b5ea579945a893ae4cef14", kill_on_drop: false }` [INFO] [stdout] warning: value assigned to `has_sql_keyword` is never read [INFO] [stdout] --> src/lib.rs:1384:51 [INFO] [stdout] | [INFO] [stdout] 1384 | let mut has_sql_keyword = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `has_user_input` is never read [INFO] [stdout] --> src/lib.rs:1385:50 [INFO] [stdout] | [INFO] [stdout] 1385 | let mut has_user_input = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmt` [INFO] [stdout] --> src/lib.rs:1747:29 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_stmt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `report` [INFO] [stdout] --> src/lib.rs:1747:44 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_statements` is never used [INFO] [stdout] --> src/lib.rs:1739:12 [INFO] [stdout] | [INFO] [stdout] 1739 | fn count_statements(stmt: &JsStmt) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for the crate [INFO] [stdout] --> src/lib.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #![warn(missing_docs)] [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | use nargo_ir::{JsExpr, JsProgram, JsStmt}; [INFO] [stdout] 4 | | use nargo_types::{NargoValue, Result, Span}; [INFO] [stdout] ... | [INFO] [stdout] 2092 | | engine [INFO] [stdout] 2093 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct ScriptMetadata { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling nargo-script-analyzer v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub signals: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub computed: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub props: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub emits: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub actions: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub dependencies: HashMap>, // variable -> variables it depends on [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn to_nargo_value(&self) -> NargoValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:1762:1 [INFO] [stdout] | [INFO] [stdout] 1762 | pub struct ScriptAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:1765:5 [INFO] [stdout] | [INFO] [stdout] 1765 | pub fn new() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:1769:5 [INFO] [stdout] | [INFO] [stdout] 1769 | pub fn analyze(&self, program: &JsProgram) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IssueLevel` [INFO] [stdout] --> tests/analyzer_test.rs:2:29 [INFO] [stdout] | [INFO] [stdout] 2 | use nargo_script_analyzer::{IssueLevel, ScriptAnalyzer}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `has_sql_keyword` is never read [INFO] [stdout] --> src/lib.rs:1384:51 [INFO] [stdout] | [INFO] [stdout] 1384 | let mut has_sql_keyword = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `has_user_input` is never read [INFO] [stdout] --> src/lib.rs:1385:50 [INFO] [stdout] | [INFO] [stdout] 1385 | let mut has_user_input = false; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmt` [INFO] [stdout] --> src/lib.rs:1747:29 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_stmt` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `report` [INFO] [stdout] --> src/lib.rs:1747:44 [INFO] [stdout] | [INFO] [stdout] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `count_statements` is never used [INFO] [stdout] --> src/lib.rs:1739:12 [INFO] [stdout] | [INFO] [stdout] 1739 | fn count_statements(stmt: &JsStmt) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for the crate [INFO] [stdout] --> src/lib.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / #![warn(missing_docs)] [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | use nargo_ir::{JsExpr, JsProgram, JsStmt}; [INFO] [stdout] 4 | | use nargo_types::{NargoValue, Result, Span}; [INFO] [stdout] ... | [INFO] [stdout] 2092 | | engine [INFO] [stdout] 2093 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct ScriptMetadata { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub signals: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub computed: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub props: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub emits: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub actions: HashSet, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> src/lib.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub dependencies: HashMap>, // variable -> variables it depends on [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn to_nargo_value(&self) -> NargoValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct [INFO] [stdout] --> src/lib.rs:1762:1 [INFO] [stdout] | [INFO] [stdout] 1762 | pub struct ScriptAnalyzer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for an associated function [INFO] [stdout] --> src/lib.rs:1765:5 [INFO] [stdout] | [INFO] [stdout] 1765 | pub fn new() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a method [INFO] [stdout] --> src/lib.rs:1769:5 [INFO] [stdout] | [INFO] [stdout] 1769 | pub fn analyze(&self, program: &JsProgram) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.96s [INFO] running `Command { std: "docker" "inspect" "41a0180c252ac13d1611f1d271f08233a282a821c7b5ea579945a893ae4cef14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "41a0180c252ac13d1611f1d271f08233a282a821c7b5ea579945a893ae4cef14", kill_on_drop: false }` [INFO] [stdout] 41a0180c252ac13d1611f1d271f08233a282a821c7b5ea579945a893ae4cef14 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 489f79a2cb45566d7d1d152fedd04b8e5d3d5c4aa31c68c1177430326ee52c25 [INFO] running `Command { std: "docker" "start" "-a" "489f79a2cb45566d7d1d152fedd04b8e5d3d5c4aa31c68c1177430326ee52c25", kill_on_drop: false }` [INFO] [stderr] warning: value assigned to `has_sql_keyword` is never read [INFO] [stdout] [INFO] [stderr] --> src/lib.rs:1384:51 [INFO] [stdout] running 0 tests [INFO] [stderr] | [INFO] [stdout] [INFO] [stderr] 1384 | let mut has_sql_keyword = false; [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] | ^^^^^ [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stdout] running 11 tests [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] test test_analysis_report_generation ... ok [INFO] [stderr] [INFO] [stdout] test test_analyze_signals ... ok [INFO] [stderr] warning: value assigned to `has_user_input` is never read [INFO] [stdout] test test_analyze_with_rules_code_style ... ok [INFO] [stderr] --> src/lib.rs:1385:50 [INFO] [stdout] test test_analyze_with_rules_memory_leak ... ok [INFO] [stderr] | [INFO] [stdout] test test_analyze_props_and_emits ... ok [INFO] [stderr] 1385 | let mut has_user_input = false; [INFO] [stdout] test test_analyze_with_rules_performance_bottleneck ... ok [INFO] [stderr] | ^^^^^ [INFO] [stdout] test test_analyze_with_rules_undefined_variable ... ok [INFO] [stderr] | [INFO] [stdout] test test_analyze_with_rules_unused_variable ... ok [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stdout] test test_analyze_with_rules_unsafe_operation ... ok [INFO] [stderr] [INFO] [stdout] test test_analyze_with_rules_security ... ok [INFO] [stderr] warning: unused variable: `stmt` [INFO] [stderr] --> src/lib.rs:1747:29 [INFO] [stderr] | [INFO] [stderr] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_stmt` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `report` [INFO] [stderr] --> src/lib.rs:1747:44 [INFO] [stderr] | [INFO] [stderr] 1747 | fn check_whitespace(stmt: &JsStmt, report: &mut AnalysisReport) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_report` [INFO] [stderr] [INFO] [stderr] warning: function `count_statements` is never used [INFO] [stderr] --> src/lib.rs:1739:12 [INFO] [stderr] | [INFO] [stderr] 1739 | fn count_statements(stmt: &JsStmt) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: missing documentation for the crate [INFO] [stderr] --> src/lib.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | / #![warn(missing_docs)] [INFO] [stderr] 2 | | [INFO] [stderr] 3 | | use nargo_ir::{JsExpr, JsProgram, JsStmt}; [INFO] [stderr] 4 | | use nargo_types::{NargoValue, Result, Span}; [INFO] [stderr] ... | [INFO] [stderr] 2092 | | engine [INFO] [stderr] 2093 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | #![warn(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/lib.rs:13:1 [INFO] [stderr] | [INFO] [stderr] 13 | pub struct ScriptMetadata { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub signals: HashSet, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub computed: HashSet, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub props: HashSet, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | pub emits: HashSet, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | pub actions: HashSet, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct field [INFO] [stderr] --> src/lib.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | pub dependencies: HashMap>, // variable -> variables it depends on [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn to_nargo_value(&self) -> NargoValue { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a struct [INFO] [stderr] --> src/lib.rs:1762:1 [INFO] [stderr] | [INFO] [stderr] 1762 | pub struct ScriptAnalyzer; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for an associated function [INFO] [stderr] --> src/lib.rs:1765:5 [INFO] [stderr] | [INFO] [stderr] 1765 | pub fn new() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: missing documentation for a method [INFO] [stderr] --> src/lib.rs:1769:5 [INFO] [stderr] | [INFO] [stderr] 1769 | pub fn analyze(&self, program: &JsProgram) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `nargo-script-analyzer` (lib) generated 17 warnings (run `cargo fix --lib -p nargo-script-analyzer` to apply 2 suggestions) [INFO] [stderr] warning: unused import: `IssueLevel` [INFO] [stderr] --> tests/analyzer_test.rs:2:29 [INFO] [stderr] | [INFO] [stderr] 2 | use nargo_script_analyzer::{IssueLevel, ScriptAnalyzer}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `nargo-script-analyzer` (test "analyzer_test") generated 1 warning (run `cargo fix --test "analyzer_test" -p nargo-script-analyzer` to apply 1 suggestion) [INFO] [stderr] warning: `nargo-script-analyzer` (lib test) generated 17 warnings (17 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nargo_script_analyzer-5d80c8d2f69ffc79) [INFO] [stderr] Running tests/analyzer_test.rs (/opt/rustwide/target/debug/deps/analyzer_test-c7dc1df4865f7cf0) [INFO] [stderr] Doc-tests nargo_script_analyzer [INFO] [stdout] test test_analyze_with_rules_unused_import ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [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] running `Command { std: "docker" "inspect" "489f79a2cb45566d7d1d152fedd04b8e5d3d5c4aa31c68c1177430326ee52c25", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "489f79a2cb45566d7d1d152fedd04b8e5d3d5c4aa31c68c1177430326ee52c25", kill_on_drop: false }` [INFO] [stdout] 489f79a2cb45566d7d1d152fedd04b8e5d3d5c4aa31c68c1177430326ee52c25