[INFO] cloning repository https://github.com/tsmarsh/rustql [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tsmarsh/rustql" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3dd8c3a5199501efc4eb1d10d9325e26d064ae10 [INFO] testing tsmarsh/rustql against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tsmarsh/rustql [INFO] finished tweaking git repo https://github.com/tsmarsh/rustql [INFO] tweaked toml for git repo https://github.com/tsmarsh/rustql written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tsmarsh/rustql on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/tsmarsh/rustql 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded crossterm v0.28.1 [INFO] [stderr] Downloaded signal-hook-mio v0.2.5 [INFO] [stderr] Downloaded crossterm_winapi v0.9.1 [INFO] [stderr] Downloaded quote v1.0.43 [INFO] [stderr] Downloaded find-msvc-tools v0.1.8 [INFO] [stderr] Downloaded tempfile v3.24.0 [INFO] [stderr] Downloaded cc v1.2.53 [INFO] [stderr] Downloaded libc v0.2.179 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d5d7e29665389dc9a4e061c977005c142284bed31942f22ad41f601d696a97b6 [INFO] running `Command { std: "docker" "start" "-a" "d5d7e29665389dc9a4e061c977005c142284bed31942f22ad41f601d696a97b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d5d7e29665389dc9a4e061c977005c142284bed31942f22ad41f601d696a97b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5d7e29665389dc9a4e061c977005c142284bed31942f22ad41f601d696a97b6", kill_on_drop: false }` [INFO] [stdout] d5d7e29665389dc9a4e061c977005c142284bed31942f22ad41f601d696a97b6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 29380b7584621285e9eee42f7a8010174384fee1a5625f6070b04ab2d61aec4f [INFO] running `Command { std: "docker" "start" "-a" "29380b7584621285e9eee42f7a8010174384fee1a5625f6070b04ab2d61aec4f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.179 [INFO] [stderr] Compiling rustql v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite3-ffi` [INFO] [stdout] --> build.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | #[cfg(feature = "sqlite3-ffi")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui` [INFO] [stdout] = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stdout] warning: unused import: `WhereLevelFlags` [INFO] [stdout] --> src/executor/select/mod.rs:15:71 [INFO] [stdout] | [INFO] [stdout] 15 | IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan, [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: `WindowCompiler` [INFO] [stdout] --> src/executor/select/mod.rs:18:60 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/executor/trigger.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion. [INFO] [stdout] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter. [INFO] [stdout] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting [INFO] [stdout] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution. [INFO] [stdout] | |_-----------------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt` [INFO] [stdout] --> src/parser/grammar.rs:2062:34 [INFO] [stdout] | [INFO] [stdout] 2062 | use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SerialType` and `decode_record_header` [INFO] [stdout] --> src/vdbe/engine/mod.rs:1066:36 [INFO] [stdout] | [INFO] [stdout] 1066 | use crate::vdbe::auxdata::{decode_record_header, SerialType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/vdbe/engine/mod.rs:2374:28 [INFO] [stdout] | [INFO] [stdout] 2374 | if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2374 - if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] 2374 + if need_root_lookup || table_meta.is_none() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_str_upper` [INFO] [stdout] --> src/api/connection.rs:1898:13 [INFO] [stdout] | [INFO] [stdout] 1898 | let col_str_upper = col_str.to_uppercase(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_name` [INFO] [stdout] --> src/executor/delete.rs:1673:55 [INFO] [stdout] | [INFO] [stdout] 1673 | crate::parser::ast::InList::Table(table_name) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_schema_lower` [INFO] [stdout] --> src/executor/prepare.rs:3554:17 [INFO] [stdout] | [INFO] [stdout] 3554 | let table_schema_lower = table_schema.to_lowercase(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4546 | Expr::Literal(lit) => match lit { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4557 | Expr::Column(col) => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4564 | Expr::Binary { op, left, right } => { [INFO] [stdout] | -------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4596 | Expr::Unary { op, expr: inner } => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ ...and 15 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2217:25 [INFO] [stdout] | [INFO] [stdout] 2217 | let key_base_reg = self.next_reg; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:2723:13 [INFO] [stdout] | [INFO] [stdout] 2723 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2834:47 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_count` [INFO] [stdout] --> src/executor/select/mod.rs:2834:61 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `has_frame_current_row` [INFO] [stdout] --> src/executor/select/mod.rs:3490:17 [INFO] [stdout] | [INFO] [stdout] 3490 | let has_frame_current_row = frame [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_rows` [INFO] [stdout] --> src/executor/select/mod.rs:4656:29 [INFO] [stdout] | [INFO] [stdout] 4656 | let is_rows = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clamp_start` [INFO] [stdout] --> src/executor/select/mod.rs:4700:37 [INFO] [stdout] | [INFO] [stdout] 4700 | ... let clamp_start = self.alloc_label(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:5646:13 [INFO] [stdout] | [INFO] [stdout] 5646 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/executor/select/mod.rs:6629:18 [INFO] [stdout] | [INFO] [stdout] 6629 | for (idx, maybe_offset) in non_agg_indices.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_idx` [INFO] [stdout] --> src/executor/select/mod.rs:8450:29 [INFO] [stdout] | [INFO] [stdout] 8450 | if let Some(col_idx) = self [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> src/executor/select/mod.rs:8646:9 [INFO] [stdout] | [INFO] [stdout] 8646 | level: &WhereLevel, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_cursor` [INFO] [stdout] --> src/executor/select/mod.rs:11667:9 [INFO] [stdout] | [INFO] [stdout] 11667 | table_cursor: i32, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `where_info` [INFO] [stdout] --> src/executor/select/mod.rs:11672:9 [INFO] [stdout] | [INFO] [stdout] 11672 | where_info: &Option, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/executor/update.rs:1126:17 [INFO] [stdout] | [INFO] [stdout] 1126 | let mut all_match_label = conflict_label; [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: `idx_name` [INFO] [stdout] --> src/executor/update.rs:1063:14 [INFO] [stdout] | [INFO] [stdout] 1063 | for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ipk_col` [INFO] [stdout] --> src/executor/update.rs:1491:13 [INFO] [stdout] | [INFO] [stdout] 1491 | let ipk_col = self.get_ipk_column_index(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_leaf` [INFO] [stdout] --> src/rtree.rs:757:49 [INFO] [stdout] | [INFO] [stdout] 757 | pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_limits` [INFO] [stdout] --> src/storage/btree/mod.rs:4396:33 [INFO] [stdout] | [INFO] [stdout] 4396 | let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/vdbe/engine/mod.rs:8683:13 [INFO] [stdout] | [INFO] [stdout] 3384 | Opcode::Count => { [INFO] [stdout] | ------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 8683 | Opcode::Count => { [INFO] [stdout] | ^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5129:37 [INFO] [stdout] | [INFO] [stdout] 5129 | ... let mut text = None; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5922:25 [INFO] [stdout] | [INFO] [stdout] 5922 | let mut skip_final_insert = false; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `index_table_name` is assigned to, but never used [INFO] [stdout] --> src/vdbe/engine/mod.rs:2278:25 [INFO] [stdout] | [INFO] [stdout] 2278 | let mut index_table_name: Option = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_index_table_name` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3161:25 [INFO] [stdout] | [INFO] [stdout] 3161 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3458:21 [INFO] [stdout] | [INFO] [stdout] 3458 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5119:33 [INFO] [stdout] | [INFO] [stdout] 5119 | ... let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5120:33 [INFO] [stdout] | [INFO] [stdout] 5120 | ... let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vtab_name` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:46 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rowid` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:63 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5436:21 [INFO] [stdout] | [INFO] [stdout] 5436 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6222:21 [INFO] [stdout] | [INFO] [stdout] 6222 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6223:21 [INFO] [stdout] | [INFO] [stdout] 6223 | let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6389:37 [INFO] [stdout] | [INFO] [stdout] 6389 | if let Some(ref btree) = btree_arc { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2332:45 [INFO] [stdout] | [INFO] [stdout] 2332 | ... index_table_name = Some(index.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2352:53 [INFO] [stdout] | [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2410:57 [INFO] [stdout] | [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2432:65 [INFO] [stdout] | [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks` [INFO] [stdout] --> src/storage/btree/mod.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub table_locks: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/storage/btree/types.rs:323:1 [INFO] [stdout] | [INFO] [stdout] 323 | pub(crate) struct BtTableLockEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 316 | Ok(StepResult::Row) => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 329 | Ok(StepResult::Done) => break, [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 330 | Err(e) => { [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.68s [INFO] running `Command { std: "docker" "inspect" "29380b7584621285e9eee42f7a8010174384fee1a5625f6070b04ab2d61aec4f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "29380b7584621285e9eee42f7a8010174384fee1a5625f6070b04ab2d61aec4f", kill_on_drop: false }` [INFO] [stdout] 29380b7584621285e9eee42f7a8010174384fee1a5625f6070b04ab2d61aec4f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e4f1c1641cf2e69431fb2a627858164b1d687895c4cd87da589df8c86509904d [INFO] running `Command { std: "docker" "start" "-a" "e4f1c1641cf2e69431fb2a627858164b1d687895c4cd87da589df8c86509904d", kill_on_drop: false }` [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite3-ffi` [INFO] [stdout] --> build.rs:2:11 [INFO] [stdout] | [INFO] [stdout] 2 | #[cfg(feature = "sqlite3-ffi")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui` [INFO] [stdout] = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling rustql v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stdout] warning: unused import: `WhereLevelFlags` [INFO] [stdout] --> src/executor/select/mod.rs:15:71 [INFO] [stdout] | [INFO] [stdout] 15 | IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan, [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: `WindowCompiler` [INFO] [stdout] --> src/executor/select/mod.rs:18:60 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/executor/trigger.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion. [INFO] [stdout] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter. [INFO] [stdout] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting [INFO] [stdout] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution. [INFO] [stdout] | |_-----------------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt` [INFO] [stdout] --> src/parser/grammar.rs:2062:34 [INFO] [stdout] | [INFO] [stdout] 2062 | use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SerialType` and `decode_record_header` [INFO] [stdout] --> src/vdbe/engine/mod.rs:1066:36 [INFO] [stdout] | [INFO] [stdout] 1066 | use crate::vdbe::auxdata::{decode_record_header, SerialType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/vdbe/engine/mod.rs:2374:28 [INFO] [stdout] | [INFO] [stdout] 2374 | if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2374 - if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] 2374 + if need_root_lookup || table_meta.is_none() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WhereLevelFlags` [INFO] [stdout] --> src/executor/select/mod.rs:15:71 [INFO] [stdout] | [INFO] [stdout] 15 | IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan, [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: `WindowCompiler` [INFO] [stdout] --> src/executor/select/mod.rs:18:60 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/executor/trigger.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion. [INFO] [stdout] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter. [INFO] [stdout] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting [INFO] [stdout] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution. [INFO] [stdout] | |_-----------------------------------------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | rustdoc does not generate documentation for macro invocations [INFO] [stdout] | [INFO] [stdout] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt` [INFO] [stdout] --> src/parser/grammar.rs:2062:34 [INFO] [stdout] | [INFO] [stdout] 2062 | use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SerialType` and `decode_record_header` [INFO] [stdout] --> src/vdbe/engine/mod.rs:1066:36 [INFO] [stdout] | [INFO] [stdout] 1066 | use crate::vdbe::auxdata::{decode_record_header, SerialType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/vdbe/engine/mod.rs:2374:28 [INFO] [stdout] | [INFO] [stdout] 2374 | if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 2374 - if (need_root_lookup || table_meta.is_none()) { [INFO] [stdout] 2374 + if need_root_lookup || table_meta.is_none() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_str_upper` [INFO] [stdout] --> src/api/connection.rs:1898:13 [INFO] [stdout] | [INFO] [stdout] 1898 | let col_str_upper = col_str.to_uppercase(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_name` [INFO] [stdout] --> src/executor/delete.rs:1673:55 [INFO] [stdout] | [INFO] [stdout] 1673 | crate::parser::ast::InList::Table(table_name) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_schema_lower` [INFO] [stdout] --> src/executor/prepare.rs:3554:17 [INFO] [stdout] | [INFO] [stdout] 3554 | let table_schema_lower = table_schema.to_lowercase(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4546 | Expr::Literal(lit) => match lit { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4557 | Expr::Column(col) => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4564 | Expr::Binary { op, left, right } => { [INFO] [stdout] | -------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4596 | Expr::Unary { op, expr: inner } => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ ...and 15 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2217:25 [INFO] [stdout] | [INFO] [stdout] 2217 | let key_base_reg = self.next_reg; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:2723:13 [INFO] [stdout] | [INFO] [stdout] 2723 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2834:47 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_count` [INFO] [stdout] --> src/executor/select/mod.rs:2834:61 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `has_frame_current_row` [INFO] [stdout] --> src/executor/select/mod.rs:3490:17 [INFO] [stdout] | [INFO] [stdout] 3490 | let has_frame_current_row = frame [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_rows` [INFO] [stdout] --> src/executor/select/mod.rs:4656:29 [INFO] [stdout] | [INFO] [stdout] 4656 | let is_rows = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clamp_start` [INFO] [stdout] --> src/executor/select/mod.rs:4700:37 [INFO] [stdout] | [INFO] [stdout] 4700 | ... let clamp_start = self.alloc_label(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:5646:13 [INFO] [stdout] | [INFO] [stdout] 5646 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/executor/select/mod.rs:6629:18 [INFO] [stdout] | [INFO] [stdout] 6629 | for (idx, maybe_offset) in non_agg_indices.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_idx` [INFO] [stdout] --> src/executor/select/mod.rs:8450:29 [INFO] [stdout] | [INFO] [stdout] 8450 | if let Some(col_idx) = self [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> src/executor/select/mod.rs:8646:9 [INFO] [stdout] | [INFO] [stdout] 8646 | level: &WhereLevel, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_cursor` [INFO] [stdout] --> src/executor/select/mod.rs:11667:9 [INFO] [stdout] | [INFO] [stdout] 11667 | table_cursor: i32, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `where_info` [INFO] [stdout] --> src/executor/select/mod.rs:11672:9 [INFO] [stdout] | [INFO] [stdout] 11672 | where_info: &Option, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/executor/update.rs:1126:17 [INFO] [stdout] | [INFO] [stdout] 1126 | let mut all_match_label = conflict_label; [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: `idx_name` [INFO] [stdout] --> src/executor/update.rs:1063:14 [INFO] [stdout] | [INFO] [stdout] 1063 | for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ipk_col` [INFO] [stdout] --> src/executor/update.rs:1491:13 [INFO] [stdout] | [INFO] [stdout] 1491 | let ipk_col = self.get_ipk_column_index(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_leaf` [INFO] [stdout] --> src/rtree.rs:757:49 [INFO] [stdout] | [INFO] [stdout] 757 | pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_limits` [INFO] [stdout] --> src/storage/btree/mod.rs:4396:33 [INFO] [stdout] | [INFO] [stdout] 4396 | let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/vdbe/engine/mod.rs:8683:13 [INFO] [stdout] | [INFO] [stdout] 3384 | Opcode::Count => { [INFO] [stdout] | ------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 8683 | Opcode::Count => { [INFO] [stdout] | ^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5129:37 [INFO] [stdout] | [INFO] [stdout] 5129 | ... let mut text = None; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5922:25 [INFO] [stdout] | [INFO] [stdout] 5922 | let mut skip_final_insert = false; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `index_table_name` is assigned to, but never used [INFO] [stdout] --> src/vdbe/engine/mod.rs:2278:25 [INFO] [stdout] | [INFO] [stdout] 2278 | let mut index_table_name: Option = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_index_table_name` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3161:25 [INFO] [stdout] | [INFO] [stdout] 3161 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3458:21 [INFO] [stdout] | [INFO] [stdout] 3458 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5119:33 [INFO] [stdout] | [INFO] [stdout] 5119 | ... let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5120:33 [INFO] [stdout] | [INFO] [stdout] 5120 | ... let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vtab_name` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:46 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rowid` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:63 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5436:21 [INFO] [stdout] | [INFO] [stdout] 5436 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6222:21 [INFO] [stdout] | [INFO] [stdout] 6222 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6223:21 [INFO] [stdout] | [INFO] [stdout] 6223 | let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6389:37 [INFO] [stdout] | [INFO] [stdout] 6389 | if let Some(ref btree) = btree_arc { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2332:45 [INFO] [stdout] | [INFO] [stdout] 2332 | ... index_table_name = Some(index.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2352:53 [INFO] [stdout] | [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2410:57 [INFO] [stdout] | [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2432:65 [INFO] [stdout] | [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_str_upper` [INFO] [stdout] --> src/api/connection.rs:1898:13 [INFO] [stdout] | [INFO] [stdout] 1898 | let col_str_upper = col_str.to_uppercase(); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks` [INFO] [stdout] --> src/storage/btree/mod.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub table_locks: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/storage/btree/types.rs:323:1 [INFO] [stdout] | [INFO] [stdout] 323 | pub(crate) struct BtTableLockEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_name` [INFO] [stdout] --> src/executor/delete.rs:1673:55 [INFO] [stdout] | [INFO] [stdout] 1673 | crate::parser::ast::InList::Table(table_name) => { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_schema_lower` [INFO] [stdout] --> src/executor/prepare.rs:3554:17 [INFO] [stdout] | [INFO] [stdout] 3554 | let table_schema_lower = table_schema.to_lowercase(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/executor/prepare.rs:4769:13 [INFO] [stdout] | [INFO] [stdout] 4546 | Expr::Literal(lit) => match lit { [INFO] [stdout] | ------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4557 | Expr::Column(col) => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4564 | Expr::Binary { op, left, right } => { [INFO] [stdout] | -------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4596 | Expr::Unary { op, expr: inner } => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stdout] | ^ ...and 15 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2217:25 [INFO] [stdout] | [INFO] [stdout] 2217 | let key_base_reg = self.next_reg; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:2723:13 [INFO] [stdout] | [INFO] [stdout] 2723 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_base_reg` [INFO] [stdout] --> src/executor/select/mod.rs:2834:47 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_count` [INFO] [stdout] --> src/executor/select/mod.rs:2834:61 [INFO] [stdout] | [INFO] [stdout] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `has_frame_current_row` [INFO] [stdout] --> src/executor/select/mod.rs:3490:17 [INFO] [stdout] | [INFO] [stdout] 3490 | let has_frame_current_row = frame [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_rows` [INFO] [stdout] --> src/executor/select/mod.rs:4656:29 [INFO] [stdout] | [INFO] [stdout] 4656 | let is_rows = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clamp_start` [INFO] [stdout] --> src/executor/select/mod.rs:4700:37 [INFO] [stdout] | [INFO] [stdout] 4700 | ... let clamp_start = self.alloc_label(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loop_start_label` [INFO] [stdout] --> src/executor/select/mod.rs:5646:13 [INFO] [stdout] | [INFO] [stdout] 5646 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/executor/select/mod.rs:6629:18 [INFO] [stdout] | [INFO] [stdout] 6629 | for (idx, maybe_offset) in non_agg_indices.iter().enumerate() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `col_idx` [INFO] [stdout] --> src/executor/select/mod.rs:8450:29 [INFO] [stdout] | [INFO] [stdout] 8450 | if let Some(col_idx) = self [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `level` [INFO] [stdout] --> src/executor/select/mod.rs:8646:9 [INFO] [stdout] | [INFO] [stdout] 8646 | level: &WhereLevel, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `table_cursor` [INFO] [stdout] --> src/executor/select/mod.rs:11667:9 [INFO] [stdout] | [INFO] [stdout] 11667 | table_cursor: i32, [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `where_info` [INFO] [stdout] --> src/executor/select/mod.rs:11672:9 [INFO] [stdout] | [INFO] [stdout] 11672 | where_info: &Option, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/executor/update.rs:1126:17 [INFO] [stdout] | [INFO] [stdout] 1126 | let mut all_match_label = conflict_label; [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: `idx_name` [INFO] [stdout] --> src/executor/update.rs:1063:14 [INFO] [stdout] | [INFO] [stdout] 1063 | for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ipk_col` [INFO] [stdout] --> src/executor/update.rs:1491:13 [INFO] [stdout] | [INFO] [stdout] 1491 | let ipk_col = self.get_ipk_column_index(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `term` [INFO] [stdout] --> src/executor/where_clause.rs:3002:13 [INFO] [stdout] | [INFO] [stdout] 3002 | for term in planner.where_clause.terms.iter_mut() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_term` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_leaf` [INFO] [stdout] --> src/rtree.rs:757:49 [INFO] [stdout] | [INFO] [stdout] 757 | pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `root_limits` [INFO] [stdout] --> src/storage/btree/mod.rs:4396:33 [INFO] [stdout] | [INFO] [stdout] 4396 | let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7170:13 [INFO] [stdout] | [INFO] [stdout] 7170 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7191:13 [INFO] [stdout] | [INFO] [stdout] 7191 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7212:13 [INFO] [stdout] | [INFO] [stdout] 7212 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7229:13 [INFO] [stdout] | [INFO] [stdout] 7229 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7262:13 [INFO] [stdout] | [INFO] [stdout] 7262 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7299:13 [INFO] [stdout] | [INFO] [stdout] 7299 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7366:13 [INFO] [stdout] | [INFO] [stdout] 7366 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7437:13 [INFO] [stdout] | [INFO] [stdout] 7437 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7460:13 [INFO] [stdout] | [INFO] [stdout] 7460 | let mut btree = Arc::try_unwrap(btree_arc).ok().unwrap(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7834:13 [INFO] [stdout] | [INFO] [stdout] 7834 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7859:13 [INFO] [stdout] | [INFO] [stdout] 7859 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/btree/mod.rs:7886:13 [INFO] [stdout] | [INFO] [stdout] 7886 | let mut btree = unwrap_arc(btree); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset2` [INFO] [stdout] --> src/storage/btree/mod.rs:8159:13 [INFO] [stdout] | [INFO] [stdout] 8159 | let offset2 = page.allocate_space(100, limits).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset1` [INFO] [stdout] --> src/storage/btree/mod.rs:8220:13 [INFO] [stdout] | [INFO] [stdout] 8220 | let offset1 = page.allocate_space(100, limits).unwrap(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:1606:13 [INFO] [stdout] | [INFO] [stdout] 1606 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:1749:13 [INFO] [stdout] | [INFO] [stdout] 1749 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:1885:13 [INFO] [stdout] | [INFO] [stdout] 1885 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:1977:13 [INFO] [stdout] | [INFO] [stdout] 1977 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:2188:13 [INFO] [stdout] | [INFO] [stdout] 2188 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:2504:13 [INFO] [stdout] | [INFO] [stdout] 2504 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:2716:13 [INFO] [stdout] | [INFO] [stdout] 2716 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:3063:13 [INFO] [stdout] | [INFO] [stdout] 3063 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:3267:13 [INFO] [stdout] | [INFO] [stdout] 3267 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:3655:13 [INFO] [stdout] | [INFO] [stdout] 3655 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/storage/wal.rs:3940:13 [INFO] [stdout] | [INFO] [stdout] 3940 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/vdbe/engine/mod.rs:8683:13 [INFO] [stdout] | [INFO] [stdout] 3384 | Opcode::Count => { [INFO] [stdout] | ------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 8683 | Opcode::Count => { [INFO] [stdout] | ^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5129:37 [INFO] [stdout] | [INFO] [stdout] 5129 | ... let mut text = None; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/vdbe/engine/mod.rs:5922:25 [INFO] [stdout] | [INFO] [stdout] 5922 | let mut skip_final_insert = false; [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `index_table_name` is assigned to, but never used [INFO] [stdout] --> src/vdbe/engine/mod.rs:2278:25 [INFO] [stdout] | [INFO] [stdout] 2278 | let mut index_table_name: Option = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_index_table_name` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3161:25 [INFO] [stdout] | [INFO] [stdout] 3161 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:3458:21 [INFO] [stdout] | [INFO] [stdout] 3458 | let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5119:33 [INFO] [stdout] | [INFO] [stdout] 5119 | ... let btree = self.btree.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5120:33 [INFO] [stdout] | [INFO] [stdout] 5120 | ... let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `vtab_name` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:46 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rowid` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5130:63 [INFO] [stdout] | [INFO] [stdout] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:5436:21 [INFO] [stdout] | [INFO] [stdout] 5436 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6222:21 [INFO] [stdout] | [INFO] [stdout] 6222 | let btree = btree_arc.clone(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `schema` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6223:21 [INFO] [stdout] | [INFO] [stdout] 6223 | let schema = self.schema.clone(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `btree` [INFO] [stdout] --> src/vdbe/engine/mod.rs:6389:37 [INFO] [stdout] | [INFO] [stdout] 6389 | if let Some(ref btree) = btree_arc { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2332:45 [INFO] [stdout] | [INFO] [stdout] 2332 | ... index_table_name = Some(index.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2352:53 [INFO] [stdout] | [INFO] [stdout] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2410:57 [INFO] [stdout] | [INFO] [stdout] 2410 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stdout] ... [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index_table_name` is never read [INFO] [stdout] --> src/vdbe/engine/mod.rs:2432:65 [INFO] [stdout] | [INFO] [stdout] 2432 | ... index_table_name = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks` [INFO] [stdout] --> src/storage/btree/mod.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub table_locks: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/storage/btree/types.rs:323:1 [INFO] [stdout] | [INFO] [stdout] 323 | pub(crate) struct BtTableLockEntry { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/vdbe/engine/handlers/mod.rs:296:27 [INFO] [stdout] | [INFO] [stdout] 296 | pub fn as_context(&mut self) -> OpcodeContext { [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] 296 | pub fn as_context(&mut self) -> OpcodeContext<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sqlite3_column_int64` [INFO] [stdout] --> tests/update_or_replace.rs:8:42 [INFO] [stdout] | [INFO] [stdout] 8 | sqlite3_close, sqlite3_column_count, sqlite3_column_int64, sqlite3_column_text, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 316 | Ok(StepResult::Row) => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 329 | Ok(StepResult::Done) => break, [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 330 | Err(e) => { [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sqlite3_column_int64` [INFO] [stdout] --> tests/replace_partial_index.rs:8:42 [INFO] [stdout] | [INFO] [stdout] 8 | sqlite3_close, sqlite3_column_count, sqlite3_column_int64, sqlite3_column_text, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite3-ffi` [INFO] [stdout] --> tests/exec_comparison.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | #![cfg(feature = "sqlite3-ffi")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui` [INFO] [stdout] = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/bin/rustql.rs:339:21 [INFO] [stdout] | [INFO] [stdout] 316 | Ok(StepResult::Row) => { [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 329 | Ok(StepResult::Done) => break, [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 330 | Err(e) => { [INFO] [stdout] | ------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 339 | _ => break, [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 09s [INFO] running `Command { std: "docker" "inspect" "e4f1c1641cf2e69431fb2a627858164b1d687895c4cd87da589df8c86509904d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e4f1c1641cf2e69431fb2a627858164b1d687895c4cd87da589df8c86509904d", kill_on_drop: false }` [INFO] [stdout] e4f1c1641cf2e69431fb2a627858164b1d687895c4cd87da589df8c86509904d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] db0e8fefa57a3aa210820dcd2ebfb3a981214f9eb8c9e21ee2315959d792c6c7 [INFO] running `Command { std: "docker" "start" "-a" "db0e8fefa57a3aa210820dcd2ebfb3a981214f9eb8c9e21ee2315959d792c6c7", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition value: `sqlite3-ffi` [INFO] [stderr] --> build.rs:2:11 [INFO] [stderr] | [INFO] [stderr] 2 | #[cfg(feature = "sqlite3-ffi")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui` [INFO] [stderr] = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `rustql` (build script) generated 1 warning [INFO] [stderr] warning: unused import: `WhereLevelFlags` [INFO] [stderr] --> src/executor/select/mod.rs:15:71 [INFO] [stderr] | [INFO] [stderr] 15 | IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `WindowCompiler` [INFO] [stderr] --> src/executor/select/mod.rs:18:60 [INFO] [stderr] | [INFO] [stderr] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/executor/trigger.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion. [INFO] [stderr] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter. [INFO] [stderr] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting [INFO] [stderr] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution. [INFO] [stderr] | |_-----------------------------------------------------------------------------------------^ [INFO] [stderr] | | [INFO] [stderr] | rustdoc does not generate documentation for macro invocations [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt` [INFO] [stderr] --> src/parser/grammar.rs:2062:34 [INFO] [stderr] | [INFO] [stderr] 2062 | use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SerialType` and `decode_record_header` [INFO] [stderr] --> src/vdbe/engine/mod.rs:1066:36 [INFO] [stderr] | [INFO] [stderr] 1066 | use crate::vdbe::auxdata::{decode_record_header, SerialType}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/vdbe/engine/mod.rs:2374:28 [INFO] [stderr] | [INFO] [stderr] 2374 | if (need_root_lookup || table_meta.is_none()) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2374 - if (need_root_lookup || table_meta.is_none()) { [INFO] [stderr] 2374 + if need_root_lookup || table_meta.is_none() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `col_str_upper` [INFO] [stderr] --> src/api/connection.rs:1898:13 [INFO] [stderr] | [INFO] [stderr] 1898 | let col_str_upper = col_str.to_uppercase(); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `table_name` [INFO] [stderr] --> src/executor/delete.rs:1673:55 [INFO] [stderr] | [INFO] [stderr] 1673 | crate::parser::ast::InList::Table(table_name) => { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `table_schema_lower` [INFO] [stderr] --> src/executor/prepare.rs:3554:17 [INFO] [stderr] | [INFO] [stderr] 3554 | let table_schema_lower = table_schema.to_lowercase(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/executor/prepare.rs:4769:13 [INFO] [stderr] | [INFO] [stderr] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/executor/prepare.rs:4769:13 [INFO] [stderr] | [INFO] [stderr] 4546 | Expr::Literal(lit) => match lit { [INFO] [stderr] | ------------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 4557 | Expr::Column(col) => { [INFO] [stderr] | ----------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 4564 | Expr::Binary { op, left, right } => { [INFO] [stderr] | -------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 4596 | Expr::Unary { op, expr: inner } => { [INFO] [stderr] | ------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 4769 | _ => "?".to_string(), // Fallback for any remaining expressions [INFO] [stderr] | ^ ...and 15 other patterns collectively make this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_base_reg` [INFO] [stderr] --> src/executor/select/mod.rs:2217:25 [INFO] [stderr] | [INFO] [stderr] 2217 | let key_base_reg = self.next_reg; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loop_start_label` [INFO] [stderr] --> src/executor/select/mod.rs:2723:13 [INFO] [stderr] | [INFO] [stderr] 2723 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_base_reg` [INFO] [stderr] --> src/executor/select/mod.rs:2834:47 [INFO] [stderr] | [INFO] [stderr] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_count` [INFO] [stderr] --> src/executor/select/mod.rs:2834:61 [INFO] [stderr] | [INFO] [stderr] 2834 | let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `has_frame_current_row` [INFO] [stderr] --> src/executor/select/mod.rs:3490:17 [INFO] [stderr] | [INFO] [stderr] 3490 | let has_frame_current_row = frame [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `is_rows` [INFO] [stderr] --> src/executor/select/mod.rs:4656:29 [INFO] [stderr] | [INFO] [stderr] 4656 | let is_rows = [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `clamp_start` [INFO] [stderr] --> src/executor/select/mod.rs:4700:37 [INFO] [stderr] | [INFO] [stderr] 4700 | ... let clamp_start = self.alloc_label(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `loop_start_label` [INFO] [stderr] --> src/executor/select/mod.rs:5646:13 [INFO] [stderr] | [INFO] [stderr] 5646 | let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `idx` [INFO] [stderr] --> src/executor/select/mod.rs:6629:18 [INFO] [stderr] | [INFO] [stderr] 6629 | for (idx, maybe_offset) in non_agg_indices.iter().enumerate() { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_idx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `col_idx` [INFO] [stderr] --> src/executor/select/mod.rs:8450:29 [INFO] [stderr] | [INFO] [stderr] 8450 | if let Some(col_idx) = self [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `level` [INFO] [stderr] --> src/executor/select/mod.rs:8646:9 [INFO] [stderr] | [INFO] [stderr] 8646 | level: &WhereLevel, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_level` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `table_cursor` [INFO] [stderr] --> src/executor/select/mod.rs:11667:9 [INFO] [stderr] | [INFO] [stderr] 11667 | table_cursor: i32, [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `where_info` [INFO] [stderr] --> src/executor/select/mod.rs:11672:9 [INFO] [stderr] | [INFO] [stderr] 11672 | where_info: &Option, [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/executor/update.rs:1126:17 [INFO] [stderr] | [INFO] [stderr] 1126 | let mut all_match_label = conflict_label; [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: `idx_name` [INFO] [stderr] --> src/executor/update.rs:1063:14 [INFO] [stderr] | [INFO] [stderr] 1063 | for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ipk_col` [INFO] [stderr] --> src/executor/update.rs:1491:13 [INFO] [stderr] | [INFO] [stderr] 1491 | let ipk_col = self.get_ipk_column_index(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `is_leaf` [INFO] [stderr] --> src/rtree.rs:757:49 [INFO] [stderr] | [INFO] [stderr] 757 | pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result> { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `root_limits` [INFO] [stderr] --> src/storage/btree/mod.rs:4396:33 [INFO] [stderr] | [INFO] [stderr] 4396 | let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?; [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/vdbe/engine/mod.rs:8683:13 [INFO] [stderr] | [INFO] [stderr] 3384 | Opcode::Count => { [INFO] [stderr] | ------------- matches all the relevant values [INFO] [stderr] ... [INFO] [stderr] 8683 | Opcode::Count => { [INFO] [stderr] | ^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vdbe/engine/mod.rs:5129:37 [INFO] [stderr] | [INFO] [stderr] 5129 | ... let mut text = None; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vdbe/engine/mod.rs:5922:25 [INFO] [stderr] | [INFO] [stderr] 5922 | let mut skip_final_insert = false; [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable `index_table_name` is assigned to, but never used [INFO] [stderr] --> src/vdbe/engine/mod.rs:2278:25 [INFO] [stderr] | [INFO] [stderr] 2278 | let mut index_table_name: Option = None; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_index_table_name` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:3161:25 [INFO] [stderr] | [INFO] [stderr] 3161 | let btree = self.btree.clone(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:3458:21 [INFO] [stderr] | [INFO] [stderr] 3458 | let btree = self.btree.clone(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:5119:33 [INFO] [stderr] | [INFO] [stderr] 5119 | ... let btree = self.btree.clone(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `schema` [INFO] [stderr] --> src/vdbe/engine/mod.rs:5120:33 [INFO] [stderr] | [INFO] [stderr] 5120 | ... let schema = self.schema.clone(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `vtab_name` [INFO] [stderr] --> src/vdbe/engine/mod.rs:5130:46 [INFO] [stderr] | [INFO] [stderr] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rowid` [INFO] [stderr] --> src/vdbe/engine/mod.rs:5130:63 [INFO] [stderr] | [INFO] [stderr] 5130 | ... if let (Some(vtab_name), Some(rowid)) = [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:5436:21 [INFO] [stderr] | [INFO] [stderr] 5436 | let btree = btree_arc.clone(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:6222:21 [INFO] [stderr] | [INFO] [stderr] 6222 | let btree = btree_arc.clone(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `schema` [INFO] [stderr] --> src/vdbe/engine/mod.rs:6223:21 [INFO] [stderr] | [INFO] [stderr] 6223 | let schema = self.schema.clone(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `btree` [INFO] [stderr] --> src/vdbe/engine/mod.rs:6389:37 [INFO] [stderr] | [INFO] [stderr] 6389 | if let Some(ref btree) = btree_arc { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `index_table_name` is never read [INFO] [stderr] --> src/vdbe/engine/mod.rs:2332:45 [INFO] [stderr] | [INFO] [stderr] 2332 | ... index_table_name = Some(index.table.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stderr] ... [INFO] [stderr] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stderr] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `index_table_name` is never read [INFO] [stderr] --> src/vdbe/engine/mod.rs:2352:53 [INFO] [stderr] | [INFO] [stderr] 2352 | ... index_table_name = Some(idx.table.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stderr] ... [INFO] [stderr] 2410 | ... index_table_name = [INFO] [stderr] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stderr] [INFO] [stderr] warning: value assigned to `index_table_name` is never read [INFO] [stderr] --> src/vdbe/engine/mod.rs:2410:57 [INFO] [stderr] | [INFO] [stderr] 2410 | ... index_table_name = [INFO] [stderr] | ^^^^^^^^^^^^^^^^ this value is reassigned later and never used [INFO] [stderr] ... [INFO] [stderr] 2432 | ... index_table_name = [INFO] [stderr] | ---------------- `index_table_name` is overwritten here before the previous value is read [INFO] [stderr] [INFO] [stderr] warning: value assigned to `index_table_name` is never read [INFO] [stderr] --> src/vdbe/engine/mod.rs:2432:65 [INFO] [stderr] | [INFO] [stderr] 2432 | ... index_table_name = [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks` [INFO] [stderr] --> src/storage/btree/mod.rs:123:5 [INFO] [stderr] | [INFO] [stderr] 123 | pub table_locks: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub` [INFO] [stderr] | [INFO] [stderr] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)` [INFO] [stderr] --> src/storage/btree/types.rs:323:1 [INFO] [stderr] | [INFO] [stderr] 323 | pub(crate) struct BtTableLockEntry { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `rustql` (lib) generated 47 warnings (run `cargo fix --lib -p rustql` to apply 38 suggestions) [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/bin/rustql.rs:339:21 [INFO] [stderr] | [INFO] [stderr] 339 | _ => break, [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/bin/rustql.rs:339:21 [INFO] [stderr] | [INFO] [stderr] 316 | Ok(StepResult::Row) => { [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 329 | Ok(StepResult::Done) => break, [INFO] [stderr] | -------------------- matches some of the same values [INFO] [stderr] 330 | Err(e) => { [INFO] [stderr] | ------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 339 | _ => break, [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rustql` (bin "rustql") generated 1 warning [INFO] [stderr] warning: unused import: `sqlite3_column_int64` [INFO] [stderr] --> tests/replace_partial_index.rs:8:42 [INFO] [stderr] | [INFO] [stderr] 8 | sqlite3_close, sqlite3_column_count, sqlite3_column_int64, sqlite3_column_text, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `sqlite3-ffi` [INFO] [stderr] --> tests/exec_comparison.rs:1:8 [INFO] [stderr] | [INFO] [stderr] 1 | #![cfg(feature = "sqlite3-ffi")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui` [INFO] [stderr] = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `rustql` (test "replace_partial_index") generated 1 warning (run `cargo fix --test "replace_partial_index" -p rustql` to apply 1 suggestion) [INFO] [stderr] warning: `rustql` (test "exec_comparison") generated 1 warning [INFO] [stderr] warning: unused variable: `term` [INFO] [stderr] --> src/executor/where_clause.rs:3002:13 [INFO] [stderr] | [INFO] [stderr] 3002 | for term in planner.where_clause.terms.iter_mut() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_term` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7170:13 [INFO] [stderr] | [INFO] [stderr] 7170 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7191:13 [INFO] [stderr] | [INFO] [stderr] 7191 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7212:13 [INFO] [stderr] | [INFO] [stderr] 7212 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7229:13 [INFO] [stderr] | [INFO] [stderr] 7229 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7262:13 [INFO] [stderr] | [INFO] [stderr] 7262 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7299:13 [INFO] [stderr] | [INFO] [stderr] 7299 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7366:13 [INFO] [stderr] | [INFO] [stderr] 7366 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7437:13 [INFO] [stderr] | [INFO] [stderr] 7437 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7460:13 [INFO] [stderr] | [INFO] [stderr] 7460 | let mut btree = Arc::try_unwrap(btree_arc).ok().unwrap(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7834:13 [INFO] [stderr] | [INFO] [stderr] 7834 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7859:13 [INFO] [stderr] | [INFO] [stderr] 7859 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/btree/mod.rs:7886:13 [INFO] [stderr] | [INFO] [stderr] 7886 | let mut btree = unwrap_arc(btree); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `offset2` [INFO] [stderr] --> src/storage/btree/mod.rs:8159:13 [INFO] [stderr] | [INFO] [stderr] 8159 | let offset2 = page.allocate_space(100, limits).unwrap(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `offset1` [INFO] [stderr] --> src/storage/btree/mod.rs:8220:13 [INFO] [stderr] | [INFO] [stderr] 8220 | let offset1 = page.allocate_space(100, limits).unwrap(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset1` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:1606:13 [INFO] [stderr] | [INFO] [stderr] 1606 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:1749:13 [INFO] [stderr] | [INFO] [stderr] 1749 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:1885:13 [INFO] [stderr] | [INFO] [stderr] 1885 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:1977:13 [INFO] [stderr] | [INFO] [stderr] 1977 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:2188:13 [INFO] [stderr] | [INFO] [stderr] 2188 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:2504:13 [INFO] [stderr] | [INFO] [stderr] 2504 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:2716:13 [INFO] [stderr] | [INFO] [stderr] 2716 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:3063:13 [INFO] [stderr] | [INFO] [stderr] 3063 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:3267:13 [INFO] [stderr] | [INFO] [stderr] 3267 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:3655:13 [INFO] [stderr] | [INFO] [stderr] 3655 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/storage/wal.rs:3940:13 [INFO] [stderr] | [INFO] [stderr] 3940 | let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/vdbe/engine/handlers/mod.rs:296:27 [INFO] [stderr] | [INFO] [stderr] 296 | pub fn as_context(&mut self) -> OpcodeContext { [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] 296 | pub fn as_context(&mut self) -> OpcodeContext<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `rustql` (lib test) generated 74 warnings (47 duplicates) (run `cargo fix --lib -p rustql --tests` to apply 27 suggestions) [INFO] [stderr] warning: unused import: `sqlite3_column_int64` [INFO] [stderr] --> tests/update_or_replace.rs:8:42 [INFO] [stderr] | [INFO] [stderr] 8 | sqlite3_close, sqlite3_column_count, sqlite3_column_int64, sqlite3_column_text, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rustql` (test "update_or_replace") generated 1 warning (run `cargo fix --test "update_or_replace" -p rustql` to apply 1 suggestion) [INFO] [stderr] warning: `rustql` (bin "rustql" test) generated 1 warning (1 duplicate) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rustql-5870bfa5d01a20dd) [INFO] [stdout] [INFO] [stdout] running 1015 tests [INFO] [stdout] test api::blob::tests::test_blob_bytes ... ok [INFO] [stdout] test api::blob::tests::test_blob_invalidated ... ok [INFO] [stdout] test api::blob::tests::test_blob_read ... ok [INFO] [stdout] test api::blob::tests::test_blob_read_out_of_bounds ... ok [INFO] [stdout] test api::blob::tests::test_blob_write ... ok [INFO] [stdout] test api::blob::tests::test_blob_write_readonly ... ok [INFO] [stdout] test api::config::tests::test_compileoption_get ... ok [INFO] [stdout] test api::blob::tests::test_blob_write_out_of_bounds ... ok [INFO] [stdout] test api::connection::tests::test_authorizer_wrapper ... ok [INFO] [stdout] test api::blob::tests::test_blob_properties ... ok [INFO] [stdout] test api::config::tests::test_threadsafe ... ok [INFO] [stdout] test api::config::tests::test_version ... ok [INFO] [stdout] test api::blob::tests::test_blob_close ... ok [INFO] [stdout] test api::connection::tests::test_db_config ... ok [INFO] [stdout] test api::config::tests::test_compileoption ... ok [INFO] [stdout] test api::connection::tests::test_error_messages ... ok [INFO] [stdout] test api::blob::tests::test_blob_read_all ... ok [INFO] [stdout] test api::connection::tests::test_autocommit ... ok [INFO] [stdout] test api::connection::tests::test_interrupt ... ok [INFO] [stdout] test api::connection::tests::test_collation_needed_callback ... ok [INFO] [stdout] test api::connection::tests::test_parse_uri ... ok [INFO] [stdout] test api::session::tests::test_attach_and_record_change ... ok [INFO] [stdout] test api::session::tests::test_changeset_invert ... ok [INFO] [stdout] test api::session::tests::test_changegroup_basic ... ok [INFO] [stdout] test api::session::tests::test_changegroup_insert_then_delete ... ok [INFO] [stdout] test api::connection::tests::test_open_memory ... ok [INFO] [stdout] test api::session::tests::test_changeset_concat ... ok [INFO] [stdout] test api::connection::tests::test_function_registry ... ok [INFO] [stdout] test api::session::tests::test_changeset_size_and_empty ... ok [INFO] [stdout] test api::session::tests::test_rebaser_basic ... ok [INFO] [stdout] test api::session::tests::test_streaming_input ... ok [INFO] [stdout] test api::stmt::tests::test_count_parameters ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_blob ... ok [INFO] [stdout] test api::stmt::tests::test_column_access ... ok [INFO] [stdout] test api::stmt::tests::test_attach_detach_statement ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_in_string ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_no_params ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_null ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_positional ... ok [INFO] [stdout] test api::stmt::tests::test_find_statement_end ... ok [INFO] [stdout] test api::stmt::tests::test_parameter_count ... ok [INFO] [stdout] test api::stmt::tests::test_expired_statement_returns_schema_error ... ok [INFO] [stdout] test api::stmt::tests::test_prepare_simple ... ok [INFO] [stdout] test api::stmt::tests::test_reset_and_clear ... ok [INFO] [stdout] test api::stmt::tests::test_schema_generation_captured_on_prepare ... ok [INFO] [stdout] test api::stmt::tests::test_schema_generation_mismatch_expires_statement ... ok [INFO] [stdout] test api::stmt::tests::test_statement_expiration_manual ... ok [INFO] [stdout] test api::stmt::tests::test_stmt_status_enum ... ok [INFO] [stdout] test api::stmt::tests::test_stmt_status_run ... ok [INFO] [stdout] test api::stmt::tests::test_value_to_sql_literal ... ok [INFO] [stdout] test error::tests::test_error_code_from_i32 ... ok [INFO] [stdout] test error::tests::test_error_code_values ... ok [INFO] [stdout] test error::tests::test_error_display ... ok [INFO] [stdout] test error::tests::test_extended_primary_code ... ok [INFO] [stdout] test error::tests::test_is_success ... ok [INFO] [stdout] test error::tests::test_parse_error ... ok [INFO] [stdout] test executor::column_mapping::tests::test_explicit_mapping ... ok [INFO] [stdout] test executor::column_mapping::tests::test_explicit_mapping_partial ... ok [INFO] [stdout] test executor::column_mapping::tests::test_implicit_mapping_all_cols ... ok [INFO] [stdout] test executor::column_mapping::tests::test_implicit_mapping_with_default ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_all ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_table_name_in_opcode ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_where_is_null ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_where_with_and ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_with_limit ... ok [INFO] [stdout] test executor::delete::tests::test_compile_delete_with_where ... ok [INFO] [stdout] test executor::delete::tests::test_delete_compiler_new ... ok [INFO] [stdout] test executor::fkey::tests::test_deferred_fk_state ... ok [INFO] [stdout] test executor::fkey::tests::test_values_equal ... ok [INFO] [stdout] test executor::insert::tests::test_build_source_column_map_with_schema ... ok [INFO] [stdout] test executor::insert::tests::test_compile_insert_default_values ... ok [INFO] [stdout] test executor::insert::tests::test_compile_insert_multiple_rows ... ok [INFO] [stdout] test executor::insert::tests::test_compile_insert_or_replace ... ok [INFO] [stdout] test executor::insert::tests::test_compile_insert_select_with_expression ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_escaping ... ok [INFO] [stdout] test executor::insert::tests::test_compile_insert_with_columns ... ok [INFO] [stdout] test api::stmt::tests::test_expanded_sql_numbered ... ok [INFO] [stdout] test executor::insert::tests::test_compile_select_expr_handles_binary_add ... ok [INFO] [stdout] test executor::insert::tests::test_compile_select_expr_handles_column_reference ... ok [INFO] [stdout] test executor::insert::tests::test_conflict_flags ... ok [INFO] [stdout] test api::stmt::tests::test_bind_range_error ... ok [INFO] [stdout] test executor::insert::tests::test_compile_simple_insert ... ok [INFO] [stdout] test executor::insert::tests::test_get_select_expressions_extracts_binary_expr ... ok [INFO] [stdout] test executor::insert::tests::test_insert_compiler_new ... ok [INFO] [stdout] test executor::pragma::tests::test_database_list ... ok [INFO] [stdout] test executor::pragma::tests::test_table_info ... ok [INFO] [stdout] test executor::prepare::tests::test_column_extraction ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_delete ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_begin ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_commit ... ok [INFO] [stdout] test api::session::tests::test_changeset_stats ... ok [INFO] [stdout] test api::stmt::tests::test_bind_parameters ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_rollback ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_explain_query_plan ... ok [INFO] [stdout] test api::stmt::tests::test_prepare_with_tail ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_insert ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_select ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_update ... ok [INFO] [stdout] test executor::prepare::tests::test_compile_explain ... ok [INFO] [stdout] test executor::prepare::tests::test_parameter_extraction ... ok [INFO] [stdout] test executor::prepare::tests::test_named_parameters ... ok [INFO] [stdout] test executor::select::tests::test_compile_select_with_limit ... ok [INFO] [stdout] test executor::select::tests::test_compile_select_with_where ... ok [INFO] [stdout] test executor::select::tests::test_compile_select_with_table ... ok [INFO] [stdout] test executor::select::tests::test_compile_union ... ok [INFO] [stdout] test executor::select::tests::test_select_dest_variants ... ok [INFO] [stdout] test executor::select::tests::test_compile_simple_select ... ok [INFO] [stdout] test executor::trigger::tests::test_trigger_context ... ok [INFO] [stdout] test executor::trigger::tests::test_find_matching_triggers ... ok [INFO] [stdout] test executor::trigger::tests::test_trigger_context_recursion ... ok [INFO] [stdout] test executor::trigger::tests::test_trigger_mask ... ok [INFO] [stdout] test executor::update::tests::test_no_such_column_in_expression ... ok [INFO] [stdout] test executor::update::tests::test_no_such_column_error ... ok [INFO] [stdout] test executor::update::tests::test_conflict_flags ... ok [INFO] [stdout] test executor::update::tests::test_compile_update_with_where ... ok [INFO] [stdout] test executor::update::tests::test_compile_simple_update ... ok [INFO] [stdout] test executor::update::tests::test_sqlite_master_modification_error ... ok [INFO] [stdout] test executor::where_clause::tests::test_cost_estimation_consistency ... ok [INFO] [stdout] test executor::update::tests::test_update_compiler_new ... ok [INFO] [stdout] test executor::where_clause::tests::test_index_beats_full_scan ... ok [INFO] [stdout] test executor::update::tests::test_no_such_column_table_qualified ... ok [INFO] [stdout] test executor::where_clause::tests::test_estimate_simple_cost ... ok [INFO] [stdout] test executor::where_clause::tests::test_ipk_equality_treated_as_rowid ... ok [INFO] [stdout] test executor::where_clause::tests::test_join_term_prereqs ... ok [INFO] [stdout] test executor::where_clause::tests::test_loop_levels_have_table_info ... ok [INFO] [stdout] test executor::where_clause::tests::test_multi_table_join_ordering_cost_based ... ok [INFO] [stdout] test executor::where_clause::tests::test_like_prefix_flag ... ok [INFO] [stdout] test executor::where_clause::tests::test_or_term_flags ... ok [INFO] [stdout] test executor::where_clause::tests::test_query_planner_with_index ... ok [INFO] [stdout] test executor::where_clause::tests::test_permutation ... ok [INFO] [stdout] test executor::where_clause::tests::test_range_constraint_detection ... ok [INFO] [stdout] test executor::where_clause::tests::test_query_planner_single_table ... ok [INFO] [stdout] test executor::where_clause::tests::test_rowid_eq_cheaper_than_index ... ok [INFO] [stdout] test executor::where_clause::tests::test_rowid_equality_detection ... ok [INFO] [stdout] test executor::where_clause::tests::test_selectivity_estimates ... ok [INFO] [stdout] test executor::where_clause::tests::test_two_table_join_with_filter ... ok [INFO] [stdout] test executor::where_clause::tests::test_rowid_in_uses_seek ... ok [INFO] [stdout] test executor::where_clause::tests::test_where_clause_or_split ... ok [INFO] [stdout] test executor::where_clause::tests::test_three_table_join_permutations ... ok [INFO] [stdout] test executor::where_expr::tests::test_allowed_operator ... ok [INFO] [stdout] test executor::where_clause::tests::test_where_clause_split ... ok [INFO] [stdout] test executor::where_clause::tests::test_where_term_creation ... ok [INFO] [stdout] test executor::where_expr::tests::test_commute_comparison ... ok [INFO] [stdout] test executor::where_expr::tests::test_expr_usage_columns ... ok [INFO] [stdout] test executor::where_expr::tests::test_expr_usage_function ... ok [INFO] [stdout] test executor::where_expr::tests::test_operator_mask_mapping ... ok [INFO] [stdout] test executor::where_expr::tests::test_split_or_clause ... ok [INFO] [stdout] test executor::wherecode::tests::test_affinity_from_type_name ... ok [INFO] [stdout] test executor::wherecode::tests::test_alloc_label ... ok [INFO] [stdout] test executor::wherecode::tests::test_alloc_reg ... ok [INFO] [stdout] test executor::wherecode::tests::test_emit_and_resolve ... ok [INFO] [stdout] test executor::wherecode::tests::test_generate_simple_where ... ok [INFO] [stdout] test executor::wherecode::tests::test_where_codegen_new ... ok [INFO] [stdout] test executor::window::tests::test_all_ranking_functions ... ok [INFO] [stdout] test executor::window::tests::test_all_value_functions ... ok [INFO] [stdout] test executor::window::tests::test_bounds_equal ... ok [INFO] [stdout] test executor::window::tests::test_default_frame_for_function ... ok [INFO] [stdout] test executor::window::tests::test_has_window_function ... ok [INFO] [stdout] test executor::window::tests::test_no_window_detection_without_over ... ok [INFO] [stdout] test executor::window::tests::test_parse_cume_dist ... ok [INFO] [stdout] test executor::window::tests::test_parse_frame_exclude ... ok [INFO] [stdout] test executor::window::tests::test_parse_avg_over ... ok [INFO] [stdout] test executor::window::tests::test_parse_first_value ... ok [INFO] [stdout] test executor::window::tests::test_parse_count_over ... ok [INFO] [stdout] test executor::window::tests::test_parse_dense_rank ... ok [INFO] [stdout] test executor::window::tests::test_parse_lead_function ... ok [INFO] [stdout] test executor::window::tests::test_parse_frame_range ... ok [INFO] [stdout] test executor::window::tests::test_parse_multiple_window_functions ... ok [INFO] [stdout] test executor::window::tests::test_parse_frame_rows ... ok [INFO] [stdout] test executor::window::tests::test_parse_frame_groups ... ok [INFO] [stdout] test executor::window::tests::test_parse_lag_function ... ok [INFO] [stdout] test executor::window::tests::test_parse_named_window ... ok [INFO] [stdout] test executor::window::tests::test_parse_last_value ... ok [INFO] [stdout] test executor::window::tests::test_parse_nth_value ... ok [INFO] [stdout] test executor::window::tests::test_parse_ntile ... ok [INFO] [stdout] test executor::window::tests::test_parse_percent_rank ... ok [INFO] [stdout] test executor::window::tests::test_parse_rank_with_partition_and_order ... ok [INFO] [stdout] test executor::window::tests::test_parse_sum_over ... ok [INFO] [stdout] test executor::window::tests::test_parse_row_number_with_order ... ok [INFO] [stdout] test executor::window::tests::test_parse_row_number_with_partition ... ok [INFO] [stdout] test executor::window::tests::test_parse_row_number ... ok [INFO] [stdout] test executor::window::tests::test_specs_equal ... ok [INFO] [stdout] test executor::window::tests::test_parse_window_with_filter ... ok [INFO] [stdout] test executor::window::tests::test_window_compiler_alloc ... ok [INFO] [stdout] test executor::window::tests::test_window_detection_in_select ... ok [INFO] [stdout] test executor::window::tests::test_window_func_type_from_name ... ok [INFO] [stdout] test executor::window::tests::test_window_func_type_needs_peer_info ... ok [INFO] [stdout] test executor::window::tests::test_window_func_type_needs_frame ... ok [INFO] [stdout] test executor::window::tests::test_window_func_type_is_ranking ... ok [INFO] [stdout] test fts5::index::tests::leaf_footer_roundtrip ... ok [INFO] [stdout] test fts5::index::tests::doclist_roundtrip ... ok [INFO] [stdout] test fts5::index::tests::structure_roundtrip ... ok [INFO] [stdout] test fts5::expr::tests::parse_basic_query ... ok [INFO] [stdout] test fts5::index::tests::index_lookup_merge ... ok [INFO] [stdout] test fts5::vtab_adapter::tests::test_fts5_module_create ... ok [INFO] [stdout] test fts5::vtab_adapter::tests::test_parse_fts5_args_columns ... ok [INFO] [stdout] test fts5::vtab_adapter::tests::test_parse_fts5_args_contentless ... ok [INFO] [stdout] test fts5::vtab_adapter::tests::test_parse_fts5_args_empty ... ok [INFO] [stdout] test functions::aggregate::tests::test_avg ... ok [INFO] [stdout] test functions::aggregate::tests::test_count ... ok [INFO] [stdout] test fts5::vtab_adapter::tests::test_parse_fts5_args_tokenizer ... ok [INFO] [stdout] test functions::aggregate::tests::test_count_star ... ok [INFO] [stdout] test functions::aggregate::tests::test_group_concat_custom_separator ... ok [INFO] [stdout] test functions::aggregate::tests::test_is_aggregate_function ... ok [INFO] [stdout] test functions::aggregate::tests::test_group_concat ... ok [INFO] [stdout] test functions::aggregate::tests::test_sum ... ok [INFO] [stdout] test functions::aggregate::tests::test_min_max ... ok [INFO] [stdout] test functions::aggregate::tests::test_sum_empty ... ok [INFO] [stdout] test functions::aggregate::tests::test_sum_with_null ... ok [INFO] [stdout] test functions::aggregate::tests::test_total ... ok [INFO] [stdout] test functions::datetime::tests::test_date_simple ... ok [INFO] [stdout] test functions::aggregate::tests::test_total_empty ... ok [INFO] [stdout] test functions::json::tests::test_arr_len ... ok [INFO] [stdout] test functions::datetime::tests::test_datetime_simple ... ok [INFO] [stdout] test functions::json::tests::test_array ... ok [INFO] [stdout] test functions::json::tests::test_extract ... ok [INFO] [stdout] test functions::json::tests::test_insert ... ok [INFO] [stdout] test functions::json::tests::test_null ... ok [INFO] [stdout] test functions::json::tests::test_object ... ok [INFO] [stdout] test functions::json::tests::test_patch ... ok [INFO] [stdout] test functions::json::tests::test_quote ... ok [INFO] [stdout] test functions::json::tests::test_remove ... ok [INFO] [stdout] test functions::json::tests::test_replace ... ok [INFO] [stdout] test functions::json::tests::test_set ... ok [INFO] [stdout] test functions::json::tests::test_type ... ok [INFO] [stdout] test functions::json::tests::test_valid ... ok [INFO] [stdout] test functions::printf::tests::test_printf_basic ... ok [INFO] [stdout] test functions::printf::tests::test_printf_sql_quote ... ok [INFO] [stdout] test functions::scalar::tests::test_abs ... ok [INFO] [stdout] test functions::scalar::tests::test_coalesce ... ok [INFO] [stdout] test functions::scalar::tests::test_hex_unhex ... ok [INFO] [stdout] test functions::scalar::tests::test_instr ... ok [INFO] [stdout] test functions::scalar::tests::test_length ... ok [INFO] [stdout] test functions::scalar::tests::test_like ... ok [INFO] [stdout] test functions::scalar::tests::test_max_min ... ok [INFO] [stdout] test functions::scalar::tests::test_quote ... ok [INFO] [stdout] test functions::scalar::tests::test_replace ... ok [INFO] [stdout] test functions::scalar::tests::test_substr ... ok [INFO] [stdout] test functions::scalar::tests::test_trim ... ok [INFO] [stdout] test functions::scalar::tests::test_typeof ... ok [INFO] [stdout] test functions::scalar::tests::test_upper_lower ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_alignment ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_basic ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_free_null ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_large ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_realloc ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_realloc_null ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_realloc_zero ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_roundup ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_size_null ... ok [INFO] [stdout] test mem::alloc::tests::test_system_allocator_zero ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_basic ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_check_leaks ... ok [INFO] [stdout] test executor::where_clause::tests::test_where_clause_between_split ... ok [INFO] [stdout] test api::connection::tests::test_db_status_cache_used ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_free_null ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_guard_intact ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_multiple ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_realloc ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_realloc_null ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_realloc_zero ... ok [INFO] [stdout] test functions::datetime::tests::test_strftime_basic ... ok [INFO] [stdout] test functions::datetime::tests::test_time_simple ... ok [INFO] [stdout] test functions::json::tests::test_minify ... ok [INFO] [stdout] test functions::json::tests::test_nested ... ok [INFO] [stdout] test functions::json::tests::test_parse ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_zero ... ok [INFO] [stdout] test mem::pool::tests::test_class_size_calculation ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_free_null ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_realloc ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_realloc_zero ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_realloc_null ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_stats ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_basic ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_highwater ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_zero ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_largest ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_new ... ok [INFO] [stdout] test mem::pool::tests::test_size_class_calculation ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_alloc_free ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_reset ... ok [INFO] [stdout] test mem::tests::test_alloc_vec ... ok [INFO] [stdout] test mem::tests::test_free_null ... ok [INFO] [stdout] test mem::tests::test_alloc_vec_grow ... ok [INFO] [stdout] test mem::tests::test_highwater ... ok [INFO] [stdout] test mem::pool::tests::test_pool_allocator_roundup ... ok [INFO] [stdout] test mem::tests::test_memory_tracking ... ok [INFO] [stdout] test mem::tests::test_malloc_free ... ok [INFO] [stdout] test mem::tests::test_malloc_zero ... ok [INFO] [stdout] test mem::tests::test_soft_heap_limit ... ok [INFO] [stdout] test mem::tests::test_realloc ... ok [INFO] [stdout] test mem::tests::test_realloc_null ... ok [INFO] [stdout] test mem::tests::test_realloc_zero ... ok [INFO] [stdout] test mem::status::tests::test_mem_status_thread_safety ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_access_nonexistent ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_current_time ... ok [INFO] [stdout] test os::unix::tests::test_unix_file_locking ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_custom_name ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_full_pathname_absolute ... ok [INFO] [stdout] test os::unix::tests::test_unix_file_open_close ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_max_pathname ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_name ... ok [INFO] [stdout] test os::unix::tests::test_unix_file_read_write ... ok [INFO] [stdout] test os::unix::tests::test_unix_file_truncate ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_randomness ... ok [INFO] [stdout] test os::vfs::tests::test_device_characteristics ... ok [INFO] [stdout] test os::vfs::tests::test_sync_flags ... ok [INFO] [stdout] test os::vfs::tests::test_vfs_registry ... ok [INFO] [stdout] test parser::ast::tests::test_binary_op_precedence ... ok [INFO] [stdout] test parser::ast::tests::test_expr_helpers ... ok [INFO] [stdout] test parser::ast::tests::test_qualified_name ... ok [INFO] [stdout] test parser::ast::tests::test_select_stmt_simple ... ok [INFO] [stdout] test os::vfs::tests::test_lock_type_ordering ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_begin_commit ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_create_index ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_autoincrement_in_table_primary_key ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_create_table ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_delete ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_drop_table ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_cte ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_between ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_arithmetic ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_case ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_comparison ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_in ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_expr_like ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_function_call ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_limit ... ok [INFO] [stdout] test os::vfs::tests::test_open_flags ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_insert ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_nulls_first_last_in_order_by ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_multiple_statements ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_order_by ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_nulls_in_table_primary_key ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_nulls_in_indexed_column ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_select_columns ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_order_by_with_window_function ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_select_join ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_select_where ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_single_quoted_column_name ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_subquery ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_union ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_update ... ok [INFO] [stdout] test parser::resolve::tests::resolve_ambiguous_column ... ok [INFO] [stdout] test parser::resolve::tests::resolve_order_by_alias ... ok [INFO] [stdout] test parser::resolve::tests::resolve_simple_column ... ok [INFO] [stdout] test parser::tokenizer::tests::test_json_pointer_operators ... ok [INFO] [stdout] test parser::tokenizer::tests::test_standalone_bang_illegal ... ok [INFO] [stdout] test parser::tokenizer::tests::test_token_position ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_blob ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_block_comment ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_case_insensitive ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_comments ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_identifiers ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_numbers ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_keywords ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_operators ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_quoted_identifier ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_select_statement ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_strings ... ok [INFO] [stdout] test parser::tokenizer::tests::test_utf8_bom ... ok [INFO] [stdout] test parser::tokenizer::tests::test_variable_edge_cases ... ok [INFO] [stdout] test parser::tokenizer::tests::test_tokenize_parameters ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_simple_select ... ok [INFO] [stdout] test parser::walker::tests::test_expr_depth ... ok [INFO] [stdout] test parser::walker::tests::test_walk_expr_abort ... ok [INFO] [stdout] test parser::walker::tests::test_walk_expr_prune ... ok [INFO] [stdout] test random::tests::test_empty_seed_auto_seeds ... ok [INFO] [stdout] test random::tests::test_global_random_int64 ... ok [INFO] [stdout] test random::tests::test_global_randomness ... ok [INFO] [stdout] test random::tests::test_prng_auto_seed ... ok [INFO] [stdout] test random::tests::test_prng_different_seeds ... ok [INFO] [stdout] test random::tests::test_prng_fill ... ok [INFO] [stdout] test random::tests::test_global_random_blob ... ok [INFO] [stdout] test os::unix::tests::test_unix_vfs_sleep ... ok [INFO] [stdout] test random::tests::test_prng_new ... ok [INFO] [stdout] test random::tests::test_prng_fill_auto_seeds ... ok [INFO] [stdout] test random::tests::test_prng_next_f64 ... ok [INFO] [stdout] test random::tests::test_prng_reproducible ... ok [INFO] [stdout] test random::tests::test_prng_reset ... ok [INFO] [stdout] test random::tests::test_prng_seed_determinism ... ok [INFO] [stdout] test random::tests::test_prng_seed ... ok [INFO] [stdout] test random::tests::test_prng_sequence ... ok [INFO] [stdout] test random::tests::test_temp_filename ... ok [INFO] [stdout] test random::tests::test_rc4_consistency ... ok [INFO] [stdout] test random::tests::test_temp_filename_unique ... ok [INFO] [stdout] test random::tests::test_temp_file_path ... ok [INFO] [stdout] test rtree::tests::test_delete ... ok [INFO] [stdout] test rtree::tests::test_insert_query ... ok [INFO] [stdout] test rtree_vtab::tests::test_parse_rtree_args ... ok [INFO] [stdout] test rtree_vtab::tests::test_parse_rtree_args_with_types ... ok [INFO] [stdout] test rtree_vtab::tests::test_rtree_odd_coords_error ... ok [INFO] [stdout] test schema::tests::test_column_builder ... ok [INFO] [stdout] test schema::tests::test_conflict_action ... ok [INFO] [stdout] test schema::tests::test_duplicate_column_names ... ok [INFO] [stdout] test schema::tests::test_encoding ... ok [INFO] [stdout] test schema::tests::test_foreign_key_action ... ok [INFO] [stdout] test rtree_vtab::tests::test_rtree_module_create ... ok [INFO] [stdout] test schema::tests::test_qualified_name ... ok [INFO] [stdout] test schema::tests::test_schema_alter_table_add_drop_column ... ok [INFO] [stdout] test schema::tests::test_schema_alter_table_rename_and_fk_updates ... ok [INFO] [stdout] test schema::tests::test_schema_create_index ... ok [INFO] [stdout] test schema::tests::test_schema_create_table ... ok [INFO] [stdout] test schema::tests::test_schema_drop_table ... ok [INFO] [stdout] test schema::tests::test_schema_table_already_exists ... ok [INFO] [stdout] test schema::tests::test_table_has_rowid_alias ... ok [INFO] [stdout] test schema::tests::test_type_affinity ... ok [INFO] [stdout] test rtree::tests::test_bbox_overlap_contains ... ok [INFO] [stdout] test random::tests::test_distribution ... ok [INFO] [stdout] test schema::tests::test_table_find_column ... ok [INFO] [stdout] test schema::tests::test_without_rowid_requires_pk ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_page_skips_ptrmap_pages ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_space_from_gap ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_space_not_enough_room ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_uses_exact_fit_block ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_page_returns_unique_pages ... ok [INFO] [stdout] test parser::grammar::tests::test_parse_single_quoted_column_in_primary_key ... ok [INFO] [stdout] test storage::btree::tests::test_btree_clear_table ... ignored, clear_table() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_allocate_page_updates_db_size ... ok [INFO] [stdout] test storage::btree::tests::test_btree_create_index_table ... ok [INFO] [stdout] test storage::btree::tests::test_allocate_space_from_free_block ... ok [INFO] [stdout] test storage::btree::tests::test_btree_create_table ... ok [INFO] [stdout] test storage::btree::tests::test_btree_drop_table ... ok [INFO] [stdout] test storage::btree::tests::test_btree_get_meta_schema_version ... ignored, get_meta() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_btree_get_meta_user_version ... ignored, get_meta()/update_meta() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_btree_begin_read_transaction ... ok [INFO] [stdout] test storage::btree::tests::test_btree_begin_write_transaction ... ok [INFO] [stdout] test storage::btree::tests::test_btree_insert_single_row ... ok [INFO] [stdout] test storage::btree::tests::test_btree_commit_transaction ... ok [INFO] [stdout] test storage::btree::tests::test_btree_open_memory_database ... ok [INFO] [stdout] test storage::btree::tests::test_btree_page_count_new_db ... ignored, page_count returns 0 for memory db - needs StubVfs impl [INFO] [stdout] test storage::btree::tests::test_btree_page_size_valid_values ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_double_free - should panic ... ok [INFO] [stdout] test storage::btree::tests::test_btree_savepoint_release ... ok [INFO] [stdout] test storage::btree::tests::test_collseq_binary ... ok [INFO] [stdout] test storage::btree::tests::test_btree_rollback_transaction ... ok [INFO] [stdout] test storage::btree::tests::test_btree_savepoint_begin ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_overflow_detected - should panic ... ok [INFO] [stdout] test mem::debug::tests::test_debug_allocator_underflow_detected - should panic ... ok [INFO] [stdout] test storage::btree::tests::test_collseq_nocase ... ok [INFO] [stdout] test storage::btree::tests::test_cursor_first_on_empty_table ... ignored, cursor.first() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_cursor_is_empty_on_empty_table ... ignored, cursor.is_empty() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_cursor_last_on_empty_table ... ignored, cursor.last() not yet implemented - defines expected behavior [INFO] [stdout] test storage::btree::tests::test_cursor_eof_on_empty_table ... ok [INFO] [stdout] test storage::btree::tests::test_collseq_rtrim ... ok [INFO] [stdout] test storage::btree::tests::test_defragment_empty_page ... ok [INFO] [stdout] test storage::btree::tests::test_btree_page_count_increases_with_tables ... ok [INFO] [stdout] test storage::btree::tests::test_free_block_chain_sorted ... ok [INFO] [stdout] test storage::btree::tests::test_free_space_creates_free_block ... ok [INFO] [stdout] test storage::btree::tests::test_free_space_small_becomes_fragment ... ok [INFO] [stdout] test storage::btree::tests::test_free_block_coalesce_next ... ok [INFO] [stdout] test storage::btree::tests::test_freelist_page_reuse ... ok [INFO] [stdout] test storage::btree::tests::test_first_returns_1_with_100_rows ... ok [INFO] [stdout] test storage::btree::tests::test_get_free_block_chain_empty ... ok [INFO] [stdout] test storage::btree::tests::test_incr_vacuum_noop_when_disabled ... ok [INFO] [stdout] test storage::btree::tests::test_freelist_empty_database ... ok [INFO] [stdout] test storage::btree::tests::test_freelist_save_and_load ... ok [INFO] [stdout] test storage::btree::tests::test_cursor_is_valid_after_positioning ... ok [INFO] [stdout] test storage::btree::tests::test_insert_with_useseekresult_flag ... ok [INFO] [stdout] test storage::btree::tests::test_integrity_check_detects_corrupt_header ... ok [INFO] [stdout] test storage::btree::tests::test_integrity_check_key_order ... ok [INFO] [stdout] test storage::btree::tests::test_integrity_check_overflow_chain ... ok [INFO] [stdout] test storage::btree::tests::test_integrity_check_valid_db ... ok [INFO] [stdout] test storage::btree::tests::test_is_ptrmap_page ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_compare_int_records ... ok [INFO] [stdout] test storage::btree::tests::test_freelist_trunk_page_structure ... ok [INFO] [stdout] test storage::btree::tests::test_insert_triggers_page_split ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_compare_text_nocase ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_default ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_compare_text_binary ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_compare_null ... ok [INFO] [stdout] test storage::btree::tests::test_integrity_check_max_errors ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_compare_desc_order ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_new ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_with_collations ... ok [INFO] [stdout] test storage::btree::tests::test_keyinfo_multi_column ... ok [INFO] [stdout] test storage::btree::tests::test_preformat_cursor_reset_clears_cell ... ok [INFO] [stdout] test storage::btree::tests::test_preformat_cursor_set_and_take ... ok [INFO] [stdout] test storage::btree::tests::test_preformat_cell_consumed_after_insert ... ok [INFO] [stdout] test storage::btree::tests::test_parse_record_text ... ok [INFO] [stdout] test storage::btree::tests::test_preformat_insert_basic ... ok [INFO] [stdout] test storage::btree::tests::test_preformat_without_cell_fails ... ok [INFO] [stdout] test storage::btree::tests::test_parse_record_int ... ok [INFO] [stdout] test storage::btree::tests::test_seek_result_clear ... ok [INFO] [stdout] test storage::btree::tests::test_ptrmap_put_and_get ... ok [INFO] [stdout] test storage::btree::tests::test_ptrmap_pageno_calculation ... ok [INFO] [stdout] test storage::btree::tests::test_seek_result_initial_value ... ok [INFO] [stdout] test storage::btree::tests::test_ptrmap_noop_when_disabled ... ok [INFO] [stdout] test storage::btree::tests::test_seek_result_set_and_get ... ok [INFO] [stdout] test storage::btree::tests::test_set_and_get_auto_vacuum ... ok [INFO] [stdout] test storage::btree::tests::test_seek_result_reset_clears ... ok [INFO] [stdout] test storage::btree::tests::test_table_moveto_sets_seek_result_greater_than ... ok [INFO] [stdout] test storage::btree::tests::test_table_moveto_sets_seek_result_less_than ... ok [INFO] [stdout] test storage::btree::tests::test_table_moveto_sets_seek_result_exact_match ... ok [INFO] [stdout] test storage::btree::tests::test_first_before_and_after_split ... ok [INFO] [stdout] test storage::btree::tests::test_unpacked_record_with_key_info ... ok [INFO] [stdout] test storage::btree::tests::test_useseekresult_flag_exists ... ok [INFO] [stdout] test storage::pager::tests::test_journal_header_roundtrip ... ok [INFO] [stdout] test storage::btree::tests::test_unpacked_record_new ... ok [INFO] [stdout] test storage::pager::tests::test_journal_mode ... ok [INFO] [stdout] test storage::pager::tests::test_journal_header_with_different_sector_sizes ... ok [INFO] [stdout] test storage::pager::tests::test_pghdr_new ... ok [INFO] [stdout] test storage::pager::tests::test_rand_nonce_is_random ... ok [INFO] [stdout] test storage::pcache::tests::test_cache_eviction_with_unpinned_pages ... ok [INFO] [stdout] test storage::pcache::tests::test_cache_size_limit_enforced ... ok [INFO] [stdout] test storage::pcache::tests::test_needs_spill_at_90_percent ... ok [INFO] [stdout] test storage::pcache::tests::test_page_count ... ok [INFO] [stdout] test storage::wal::tests::test_checkpoint_mode ... ok [INFO] [stdout] test storage::pager::tests::test_pager_state_ordering ... ok [INFO] [stdout] test storage::pager::tests::test_pg_flags ... ok [INFO] [stdout] test storage::pcache::tests::test_dirty_count ... ok [INFO] [stdout] test storage::wal::tests::test_frame_is_commit ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_modes ... ok [INFO] [stdout] test storage::wal::tests::test_wal_begin_end_write_transaction ... ok [INFO] [stdout] test storage::wal::tests::test_hash_table ... ok [INFO] [stdout] test storage::wal::tests::test_wal_begin_end_read_transaction ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_preparation_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_preparation_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_preparation_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::btree::tests::test_cursor_navigation_after_split ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_state_management_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_state_management ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_state_management_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_state_management_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_state_management_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_algorithm_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_algorithm_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_algorithm_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_algorithm_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_consistency ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_edge_cases_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_edge_cases_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_algorithm ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_preparation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_edge_cases_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checksum_edge_cases_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_close ... ok [INFO] [stdout] test storage::wal::tests::test_wal_checkpoint_preparation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrency_control ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrency_control_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrency_control_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrency_control_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_db_size ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrent_operations ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_conditions ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_conditions_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_conditions_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_concurrency_control_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_conditions_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling_in_transactions ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling_in_transactions_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_conditions_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling_in_transactions_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling_in_transactions_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_handling_in_transactions_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_recovery_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_recovery_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_recovery_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_hdr_roundtrip ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_recovery ... ok [INFO] [stdout] test storage::wal::tests::test_wal_find_frame ... ok [INFO] [stdout] test storage::wal::tests::test_wal_error_recovery_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_serialization ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_serialization_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_serialization_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_serialization_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_serialization_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_validation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_validation_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_validation_comprehensive ... ok [INFO] [stdout] test storage::btree::tests::test_last_returns_correct_key_after_split ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_header_validation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_management_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_number_consistency ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_management_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_management_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_management ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_number_consistency_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_number_consistency_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_number_consistency_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_operations ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_roundtrip ... ok [INFO] [stdout] test storage::wal::tests::test_wal_hash_table_operations ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_serialization ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_serialization_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_serialization_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_serialization_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_serialization_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_validation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_number_management ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_validation_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_validation_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_operations ... ok [INFO] [stdout] test storage::btree::tests::test_insert_many_rows_no_corruption ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_serialization ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_serialization_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_serialization_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_serialization_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_validation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_validation_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_header_validation_comprehensive_final ... ok [INFO] [stderr] Running unittests src/bin/rustql.rs (/opt/rustwide/target/debug/deps/rustql-fd67dc49dfd60b6b) [INFO] [stdout] test storage::wal::tests::test_wal_header_validation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_hdr_roundtrip ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_serialization_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_validation_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_validation_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_frame_management_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_index_header_validation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_is_empty ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_management ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_management_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_management_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_management_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_management_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_safety ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_safety_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_safety_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_safety_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_memory_safety_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_multi_reader_slots ... ok [INFO] [stdout] test storage::wal::tests::test_wal_open ... ok [INFO] [stdout] test storage::wal::tests::test_wal_path ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_consistency ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_consistency_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_consistency_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_consistency_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_consistency_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_state_management ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_state_management_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_state_management_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_state_management_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_edge_cases ... ok [INFO] [stdout] test storage::wal::tests::test_wal_recovery_scenarios ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_operations_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_operations_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_operations_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_regions ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_validation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_operations ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_validation_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_consistency_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_validation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_consistency_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_consistency ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_consistency_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_consistency_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_validation_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions_consistency_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_shared_memory_operations_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions_consistency_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions_consistency ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions_consistency_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_boundaries ... ok [INFO] [stdout] test storage::wal::tests::test_wal_state_transitions_consistency_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_boundaries_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_isolation ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_boundaries_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_boundaries_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_isolation_comprehensive ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_isolation_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_isolation_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_isolation_comprehensive_final_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_transaction_lifecycle ... ok [INFO] [stdout] test storage::wal::tests::test_wal_write_ahead_logging_properties_comprehensive ... ok [INFO] [stdout] test types::tests::test_lock_level_ordering ... ok [INFO] [stdout] test types::tests::test_open_flags ... ok [INFO] [stdout] test types::tests::test_value_coercion_to_f64 ... ok [INFO] [stdout] test types::tests::test_value_coercion_to_i64 ... ok [INFO] [stdout] test storage::wal::tests::test_wal_write_ahead_logging_properties_comprehensive_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_write_ahead_logging_properties_comprehensive_final_final ... ok [INFO] [stdout] test storage::wal::tests::test_wal_write_ahead_logging_properties_comprehensive_final_final_final ... ok [INFO] [stdout] test types::tests::test_value_column_type ... ok [INFO] [stdout] test types::tests::test_value_from_conversions ... ok [INFO] [stdout] test utf::tests::test_utf16_bom_strip ... ok [INFO] [stdout] test types::tests::test_value_coercion_to_text ... ok [INFO] [stdout] test storage::wal::tests::test_wal_write_ahead_logging_properties ... ok [INFO] [stdout] test utf::tests::test_utf16_roundtrip ... ok [INFO] [stdout] test utf::tests::test_utf8_char_len ... ok [INFO] [stdout] test utf::tests::test_utf8_read_basic ... ok [INFO] [stdout] test util::bitvec::tests::test_bitvec_basic ... ok [INFO] [stdout] test util::bitvec::tests::test_bitvec_hash ... ok [INFO] [stdout] test util::general::tests::test_apply_affinity ... ok [INFO] [stdout] test util::general::tests::test_atoi64 ... ok [INFO] [stdout] test util::general::tests::test_isint ... ok [INFO] [stdout] test util::general::tests::test_log_callback ... ok [INFO] [stdout] test util::general::tests::test_stricmp ... ok [INFO] [stdout] test util::general::tests::test_strnicmp ... ok [INFO] [stdout] test util::general::tests::test_varint_roundtrip ... ok [INFO] [stdout] test util::hash::tests::insert_find_remove ... ok [INFO] [stdout] test util::hash::tests::rehash_keeps_entries ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_deserialize_values ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_explain_program ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_format_p4 ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_serial_type_size ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_make_record_simple ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_negative_int8_roundtrip ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_varint_len ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_serial_type_code ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_serial_type_for_mem ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_vdbe_builder_alloc ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_serial_type_from_code ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_vdbe_builder_basic ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_vdbe_builder_labels ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_bytecode_iterator ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_bytecode_iterator_rewind ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_bytecode_schema ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_explain_bytecode ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_bytecode_row_from_op ... ok [INFO] [stdout] test vdbe::bytecode::tests::test_format_p4 ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_add_floats ... ok [INFO] [stdout] test vdbe::auxdata::tests::test_varint_roundtrip ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_add_integers ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_add_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_add_null_operand ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_add_overflow_to_float ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_addimm_positive ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_addimm_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_divide_by_zero_returns_null ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_divide_floats ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_divide_integers ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_multiply_by_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_multiply_integers ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_remainder ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_remainder_by_zero_returns_null ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_remainder_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_subtract_integers ... ok [INFO] [stdout] test vdbe::engine::handlers::arithmetic::tests::test_subtract_null ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_eq_integers_not_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_eq_integers_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_eq_null_no_jump_by_default ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_eq_null_with_nulleq_flag ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_eq_strings ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ge_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ge_greater ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ge_less ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ge_null_no_jumpifnull ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_gt_equal_no_jump ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_gt_false ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_gt_true ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_le_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_le_greater ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_le_less ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_lt_equal_no_jump ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_lt_false ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_lt_null_jumpifnull ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_lt_true ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ne_both_null_nulleq ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ne_integers_not_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ne_integers_equal ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ne_null_jumpifnull ... ok [INFO] [stdout] test vdbe::engine::handlers::comparison::tests::test_ne_null_nulleq ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_decrjumpzero_becomes_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_decrjumpzero_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_decrjumpzero_not_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_gosub ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_halt ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_goto ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_if_falsy_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_if_null ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_if_truthy_integer ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotopen_not_open ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnot_falsy ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnot_truthy ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotzero_negative_jumps_no_decrement ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotopen_open ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotzero_one_becomes_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotzero_positive ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifnotzero_zero_falls_through ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifpos_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifpos_positive ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_ifpos_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_init_no_jump ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_isnull_not_null ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_isnull_null ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_init_with_jump ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_notnull_not_null ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_noop ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_notnull_null ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_offsetlimit_negative_limit ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_offsetlimit_negative_offset_ignored ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_offsetlimit_basic ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_return ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_offsetlimit_zero_limit ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_offsetlimit_overflow ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_return_non_int_with_p3 ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_yield_fallback_to_p2 ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_yield_swap ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_return_non_int_without_p3 ... ok [INFO] [stdout] test vdbe::engine::handlers::control_flow::tests::test_yield_no_fallback ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_copy_multiple ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_copy_single ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_int64_large_value ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_int64_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_intcopy ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_intcopy_from_real ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_integer_positive ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_integer_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_integer_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_memmax_first_larger ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_memmax_second_larger ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_move_multiple ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_memmax_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_null_multiple_registers ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_move_single ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_null_single_register ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_real_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_scopy ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_real_positive ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_softnull ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_string8_empty ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_string8 ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_zeroornull_no_null ... ok [INFO] [stdout] test vdbe::engine::handlers::data_movement::tests::test_zeroornull_with_null ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitand ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitnot ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitand_null ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitnot_null ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitnot_value ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_concat ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_bitor ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_not_false_to_true ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_not_null ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_concat_with_numbers ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_shiftleft_negative ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_shiftleft ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_concat_null ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_not_true_to_false ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_shiftleft_overflow ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_shiftright_negative_value ... ok [INFO] [stdout] test vdbe::engine::handlers::logic::tests::test_shiftright ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_affinity_numeric ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_blob ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_affinity_multiple ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_cast_to_integer ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_ifnullrow_no_cursor ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_ifnullrow_with_null_row ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_ifnullrow_without_null_row ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_makerecord_single_int ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_from_int ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_from_real_whole ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_from_real_nonwhole ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_makerecord_multiple_values ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_from_string ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_null_errors_if_p2_zero ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_mustbeint_null_jumps ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_once_different_ids ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_nullrow_sets_null_row ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_once_second_time ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_realaffinity_from_int ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_once_first_time ... ok [INFO] [stdout] test vdbe::engine::handlers::misc::tests::test_realaffinity_from_real ... ok [INFO] [stdout] test vdbe::engine::handlers::tests::test_registry_creation ... ok [INFO] [stdout] test vdbe::engine::handlers::tests::test_registry_unregistered_opcode ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_autocommit_errors_without_transaction ... ok [INFO] [stdout] test vdbe::engine::tests::test_finish_seek_clears_deferred_state ... ok [INFO] [stdout] test vdbe::engine::tests::test_deferred_seek_cursor_state ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_checkpoint_default ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_endcoroutine_jumps_to_yield_target ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_finishseek_deferred_rowid ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_count_table ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_autocommit_commit_and_rollback ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_openautoindex_found ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_idxgt_index_key ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_once_clears_on_reset ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_idxlt_index_key_strict ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_idxle_index_key ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_idxrowid_index_key ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_ifnullrow_jumps ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_regexp_via_function ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_resetsorter_clears_sorter ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_openpseudo_reads_columns ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_sequence_increments ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_seekle_table ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_seekge_table ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_readcookie_schema_version ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_seekgt_table ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_savepoint_begin_release ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_seeklt_table ... ok [INFO] [stdout] test vdbe::engine::tests::test_read_cookie_main_db ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_comparison ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_transaction_read_then_write ... ok [INFO] [stdout] test vdbe::engine::tests::test_set_cookie_updates_schema_cookie ... ok [INFO] [stdout] test vdbe::engine::tests::test_set_cookie_main_db ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_arithmetic ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_setcookie_user_version ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_gosub_return ... ok [INFO] [stdout] test vdbe::engine::tests::test_op_sortercompare_jumps_on_mismatch ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_interrupt ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_null_handling ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_multiple_results ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_parameter_binding ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_reset ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_string_operations ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_conditional ... ok [INFO] [stdout] test vdbe::expr::tests::test_alloc_regs ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_goto ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_and_short_circuit ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_between ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_new ... ok [INFO] [stdout] test vdbe::engine::tests::test_vdbe_simple_program ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_binary_add ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_case_simple ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_function ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_comparison ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_integer_large ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_in_list ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_integer_small ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_is_null ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_null ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_or_short_circuit ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_string ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_unary_neg ... ok [INFO] [stdout] test vdbe::expr::tests::test_compile_unary_not ... ok [INFO] [stdout] test vdbe::expr::tests::test_label_resolution ... ok [INFO] [stdout] test vdbe::mem::tests::test_compare_with_binary_collation ... ok [INFO] [stdout] test vdbe::mem::tests::test_compare_with_collation_null_handling ... ok [INFO] [stdout] test vdbe::mem::tests::test_compare_with_nocase_collation ... ok [INFO] [stdout] test vdbe::mem::tests::test_compare_with_collation_non_text ... ok [INFO] [stdout] test vdbe::mem::tests::test_compare_with_rtrim_collation ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_affinity ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_arithmetic ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_bitwise ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_blob ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_coercion ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_concat ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_comparison ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_copy ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_division ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_from_value ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_int ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_logical_not ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_null ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_move ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_null_arithmetic ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_real ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_set_zeroblob ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_shift ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_str ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_to_sql_literal ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_to_value ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_truthy ... ok [INFO] [stdout] test vdbe::mem::tests::test_mem_zeroblob ... ok [INFO] [stdout] test vdbe::ops::tests::test_opcode_is_jump ... ok [INFO] [stdout] test vdbe::ops::tests::test_opcode_name ... ok [INFO] [stdout] test vdbe::ops::tests::test_key_info ... ok [INFO] [stdout] test vdbe::ops::tests::test_opcode_uses_cursor ... ok [INFO] [stdout] test vdbe::ops::tests::test_p4_variants ... ok [INFO] [stdout] test vdbe::ops::tests::test_vdbe_op_new ... ok [INFO] [stdout] test vdbe::ops::tests::test_vdbe_op_with_p4 ... ok [INFO] [stdout] test vdbe::sort::tests::test_pma_reader ... ok [INFO] [stdout] test vdbe::ops::tests::test_vdbe_op_display ... ok [INFO] [stdout] test vdbe::sort::tests::test_compare_records ... ok [INFO] [stdout] test vdbe::sort::tests::test_sorter_descending ... ok [INFO] [stdout] test vdbe::sort::tests::test_sorter_in_memory ... ok [INFO] [stdout] test vdbe::sort::tests::test_sorter_with_data ... ok [INFO] [stdout] test vdbe::sort::tests::test_sorter_reset ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_block_comment ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_named ... ok [INFO] [stdout] test vdbe::sort::tests::test_sorter_with_spill ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_numbered ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_positional ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_comment ... ok [INFO] [stdout] test vdbe::trace::tests::test_trace_flags ... ok [INFO] [stdout] test vdbe::trace::tests::test_expand_sql_string_literal ... ok [INFO] [stdout] test vdbe::trace::tests::test_trace_info_formatting ... ok [INFO] [stdout] test vdbe::trace::tests::test_tracer_callback ... ok [INFO] [stdout] test vdbe::types::tests::test_affinity_from_type_name ... ok [INFO] [stdout] test vdbe::types::tests::test_collseq_binary ... ok [INFO] [stdout] test vdbe::types::tests::test_collseq_nocase ... ok [INFO] [stdout] test vdbe::types::tests::test_cursor_type ... ok [INFO] [stdout] test vdbe::types::tests::test_collseq_rtrim ... ok [INFO] [stdout] test vdbe::types::tests::test_affinity_from_code ... ok [INFO] [stdout] test vdbe::types::tests::test_encoding ... ok [INFO] [stdout] test vdbe::types::tests::test_magic_constants ... ok [INFO] [stdout] test vdbe::types::tests::test_type_class_ordering ... ok [INFO] [stdout] test vdbe::value::tests::test_aggregate_context ... ok [INFO] [stdout] test vdbe::value::tests::test_result_blob ... ok [INFO] [stdout] test vdbe::value::tests::test_result_double ... ok [INFO] [stdout] test vdbe::value::tests::test_result_int ... ok [INFO] [stdout] test vdbe::value::tests::test_numeric_type ... ok [INFO] [stdout] test vdbe::value::tests::test_result_error ... ok [INFO] [stdout] test vdbe::value::tests::test_result_null ... ok [INFO] [stdout] test vdbe::value::tests::test_result_text ... ok [INFO] [stdout] test vdbe::value::tests::test_value_double ... ok [INFO] [stdout] test vdbe::value::tests::test_value_dup ... ok [INFO] [stdout] test vdbe::value::tests::test_value_blob ... ok [INFO] [stdout] test vdbe::value::tests::test_value_int ... ok [INFO] [stdout] test vdbe::value::tests::test_value_text ... ok [INFO] [stdout] test vdbe::value::tests::test_value_type ... ok [INFO] [stdout] test vtab::cursor::tests::test_empty_cursor ... ok [INFO] [stdout] test vtab::cursor::tests::test_memory_cursor ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_error_invalid ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_column_by_name ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_complex_types ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_constraints ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_hidden ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_simple ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_with_types ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_parse_without_rowid ... ok [INFO] [stdout] test vtab::declare_vtab::tests::test_to_schema_string ... ok [INFO] [stdout] test vtab::index_info::tests::test_constraint_op_names ... ok [INFO] [stdout] test vtab::index_info::tests::test_find_constraint ... ok [INFO] [stdout] test vtab::index_info::tests::test_index_info_creation ... ok [INFO] [stdout] test vtab::module::tests::test_module_create ... ok [INFO] [stdout] test vtab::module::tests::test_table_cursor ... ok [INFO] [stdout] test vtab::registry::tests::test_instance_registration ... ok [INFO] [stdout] test vtab::registry::tests::test_module_registration ... ok [INFO] [stdout] test vtab::registry::tests::test_missing_module_error ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1008 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 0.23s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/coalesce_debug.rs (/opt/rustwide/target/debug/deps/coalesce_debug-46425be4d45bade5) [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] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_ifnull ... ok [INFO] [stderr] Running tests/compat_debug.rs (/opt/rustwide/target/debug/deps/compat_debug-2005ab396622e21a) [INFO] [stdout] test test_coalesce_with_max ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_aggregate_sum_max_min ... ok [INFO] [stdout] test test_select1_2_0_exact ... ok [INFO] [stderr] Running tests/connection_lifecycle.rs (/opt/rustwide/target/debug/deps/connection_lifecycle-1814422129e2e447) [INFO] [stdout] test test_select1_2_2_count ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_close_rolls_back_open_transaction ... ok [INFO] [stdout] test test_close_releases_lock_for_reopen ... ok [INFO] [stdout] test test_multiple_close_reopen_cycles ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/exec_comparison.rs (/opt/rustwide/target/debug/deps/exec_comparison-5a15de43748c2608) [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 tests/fts3_persist_test.rs (/opt/rustwide/target/debug/deps/fts3_persist_test-2e251924654596ce) [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 tests/index_selection.rs (/opt/rustwide/target/debug/deps/index_selection-963c62ed5b537e20) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_range_query_uses_index ... ok [INFO] [stdout] test test_index_with_multiple_conditions ... ok [INFO] [stdout] test test_no_index_when_no_match ... ok [INFO] [stdout] test test_covering_index_preferred ... ok [INFO] [stdout] test test_single_column_equality_uses_index ... ok [INFO] [stdout] test test_multi_column_index_partial_match ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/multi_stmt_debug.rs (/opt/rustwide/target/debug/deps/multi_stmt_debug-422e72e137c215ca) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_drop_table ... ok [INFO] [stdout] test test_delete_from ... ok [INFO] [stdout] test test_select1_2_0_multi_stmt ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/opcode_comparison.rs (/opt/rustwide/target/debug/deps/opcode_comparison-f7f1bfb586adb840) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test test_generate_opcode_report ... ok [INFO] [stdout] test test_joins ... ok [INFO] [stdout] test test_group_by ... ok [INFO] [stdout] test test_order_by ... ok [INFO] [stdout] test test_case_expression ... ok [INFO] [stdout] test test_comparisons ... ok [INFO] [stdout] test test_union ... ok [INFO] [stdout] test test_aggregates ... ok [INFO] [stdout] test test_subqueries ... ok [INFO] [stdout] test test_simple_expressions ... ok [INFO] [stdout] test test_where_clause ... ok [INFO] [stderr] Running tests/replace_partial_index.rs (/opt/rustwide/target/debug/deps/replace_partial_index-4e4d3af96d6d8ecc) [INFO] [stdout] test test_table_scans ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_basic_delete_with_partial_index ... ok [INFO] [stdout] test test_replace_with_partial_index ... ok [INFO] [stdout] test test_debug_partial_index_setup ... ok [INFO] [stderr] Running tests/select1_debug.rs (/opt/rustwide/target/debug/deps/select1_debug-c5dc79b45c8f2914) [INFO] [stdout] test test_replace_with_delete_trigger_recheck ... ok [INFO] [stdout] test test_replace_simple_unique_index ... ok [INFO] [stdout] test test_replace_without_partial_condition_conflict ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test_insert_select ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/select1_fixes.rs (/opt/rustwide/target/debug/deps/select1_fixes-3f824d2a7a250265) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_6_23_in_subquery_union_order_by_alias ... ignored [INFO] [stdout] test test_cross_join ... ok [INFO] [stderr] Running tests/select2_debug.rs (/opt/rustwide/target/debug/deps/select2_debug-0bf220481cb81fdf) [INFO] [stdout] test test_subquery_aggregate_columns ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_insert_select_chain ... ok [INFO] [stderr] Running tests/shared_cache.rs (/opt/rustwide/target/debug/deps/shared_cache-1ec01070d9311089) [INFO] [stdout] test test_count_aggregate ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_shared_cache_schema_visibility ... ok [INFO] [stderr] Running tests/sqlite_compat.rs (/opt/rustwide/target/debug/deps/sqlite_compat-d3bf4cb471902140) [INFO] [stdout] test test_shared_cache_table_write_lock ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test test_empty_database_readable_by_sqlite ... ok [INFO] [stdout] test test_multiple_tables_compatible ... ignored, Known issue: Multiple table INSERT with INT PRIMARY KEY - see moth eigtx [INFO] [stdout] test test_single_table_readable_by_sqlite ... ok [INFO] [stdout] test test_unique_constraint_compatible ... ignored, Known issue: UNIQUE constraint false positive with INT PRIMARY KEY - see moth zenc6 [INFO] [stdout] test test_update_compatible ... ignored, Known issue: UPDATE with INT PRIMARY KEY not persisting correctly - see moth eigtx [INFO] [stdout] test test_data_round_trip_sqlite_to_rustql ... ok [INFO] [stdout] test test_delete_compatible ... ok [INFO] [stdout] test test_index_readable_by_sqlite ... ok [INFO] [stdout] test test_large_text_compatible ... ok [INFO] [stdout] test test_data_round_trip_rustql_to_sqlite ... ok [INFO] [stdout] test test_multi_column_index_compatible ... ok [INFO] [stdout] test test_many_rows_compatible ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 4.39s [INFO] [stdout] [INFO] [stderr] Running tests/update_or_replace.rs (/opt/rustwide/target/debug/deps/update_or_replace-cead0c308e148e30) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test test_simple_update ... ok [INFO] [stdout] test test_simple_delete ... ok [INFO] [stdout] test test_update_or_replace_ipk_conflict ... ok [INFO] [stdout] test test_update_or_replace_with_unique_index ... ok [INFO] [stdout] test test_insert_6_3 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/where_debug.rs (/opt/rustwide/target/debug/deps/where_debug-94aebcfe38eb5650) [INFO] [stdout] [INFO] [stdout] running 31 tests [INFO] [stdout] test test_correlated_subquery_with_other_column ... ok [INFO] [stdout] test test_correlated_subquery_no_from ... ok [INFO] [stdout] test test_ambiguous_column_resolution ... ok [INFO] [stdout] test test_cursor_stability_delete_during_iteration ... ok [INFO] [stdout] test test_expr_minus_vs_plus ... ok [INFO] [stdout] test test_cursor_page_refresh_on_stale ... ok [INFO] [stdout] test test_expr_transaction ... ok [INFO] [stdout] test test_expr_multi_statement_rollback ... ok [INFO] [stdout] test test_insert_after_delete ... ok [INFO] [stdout] test test_delete_all_during_cross_join_index_scan ... ok [INFO] [stdout] test test_insert_select_arithmetic_simple ... ok [INFO] [stdout] test test_delete_single_row_during_cross_join_index_scan ... ok [INFO] [stdout] test test_insert_select_with_scalar_subquery ... ok [INFO] [stdout] test test_join_with_non_empty_tables ... ok [INFO] [stdout] test test_left_join_empty_table ... ok [INFO] [stdout] test test_left_join_with_data ... ok [INFO] [stdout] test test_order_by_uses_index_scan ... ok [INFO] [stdout] test test_order_by_cross_join_index_scan ... ok [INFO] [stdout] test test_rollback_behavior ... ok [INFO] [stdout] test test_scalar_subquery_in_expression ... ok [INFO] [stdout] test test_sort_flag_with_order_by_expression ... ignored [INFO] [stdout] test test_scalar_subquery_standalone ... ok [INFO] [stdout] test test_simple_update_no_txn ... ok [INFO] [stdout] test test_sqlite_search_count ... ok [INFO] [stdout] test test_three_way_join ... ok [INFO] [stdout] test test_where_test_setup ... ok [INFO] [stdout] test test_bulk_delete_large_table ... ok [INFO] [stdout] test test_bulk_delete_stepwise ... ok [INFO] [stdout] test test_insert_after_bulk_delete ... ok [INFO] [stdout] test test_bulk_delete_threshold ... ok [INFO] [stderr] Doc-tests rustql [INFO] [stdout] test test_insert_after_bulk_delete_variations ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 30 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 9.28s [INFO] [stdout] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/vdbe/engine/mod.rs:2374:28 [INFO] [stderr] | [INFO] [stderr] 2374 | if (need_root_lookup || table_meta.is_none()) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 2374 - if (need_root_lookup || table_meta.is_none()) { [INFO] [stderr] 2374 + if need_root_lookup || table_meta.is_none() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test src/storage/btree/mod.rs - storage::btree::BtCursor::iter (line 6611) ... ignored [INFO] [stdout] test src/vdbe/engine/handlers/mod.rs - vdbe::engine::handlers::OpcodeHandler (line 64) ... ignored [INFO] [stdout] test src/vtab/cursor.rs - vtab::cursor::VtabCursor (line 31) ... ignored [INFO] [stdout] test src/vtab/declare_vtab.rs - vtab::declare_vtab (line 14) ... ignored [INFO] [stdout] test src/vtab/declare_vtab.rs - vtab::declare_vtab::declare_vtab (line 325) ... ignored [INFO] [stdout] test src/vtab/mod.rs - vtab (line 16) ... ignored [INFO] [stdout] test src/vtab/module.rs - vtab::module::VtabModule (line 50) ... ignored [INFO] [stdout] test src/vtab/registry.rs - vtab::registry::VtabRegistry (line 25) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 8 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "db0e8fefa57a3aa210820dcd2ebfb3a981214f9eb8c9e21ee2315959d792c6c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db0e8fefa57a3aa210820dcd2ebfb3a981214f9eb8c9e21ee2315959d792c6c7", kill_on_drop: false }` [INFO] [stdout] db0e8fefa57a3aa210820dcd2ebfb3a981214f9eb8c9e21ee2315959d792c6c7