[INFO] cloning repository https://github.com/Discmonkey/sqlit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Discmonkey/sqlit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDiscmonkey%2Fsqlit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDiscmonkey%2Fsqlit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a8cbf3c454ff141349f51458690686b548e41d19
[INFO] checking Discmonkey/sqlit against master#04ff05c9c0cfbca33115c5f1b8bb20a66a54b799 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDiscmonkey%2Fsqlit" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Discmonkey/sqlit
[INFO] finished tweaking git repo https://github.com/Discmonkey/sqlit
[INFO] tweaked toml for git repo https://github.com/Discmonkey/sqlit written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Discmonkey/sqlit on toolchain 04ff05c9c0cfbca33115c5f1b8bb20a66a54b799
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Discmonkey/sqlit 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" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded smallstr v0.2.0
[INFO] [stderr]   Downloaded smallvec v1.5.1
[INFO] [stderr]   Downloaded mortal v0.2.2
[INFO] [stderr]   Downloaded terminfo v0.7.3
[INFO] [stderr]   Downloaded linefeed v0.6.0
[INFO] [stderr]   Downloaded time-test v0.2.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 17dcf1b7982e483395e47fc08399ae718d09fbe1b9e8c81665087077a8d5482d
[INFO] running `Command { std: "docker" "start" "-a" "17dcf1b7982e483395e47fc08399ae718d09fbe1b9e8c81665087077a8d5482d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "17dcf1b7982e483395e47fc08399ae718d09fbe1b9e8c81665087077a8d5482d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17dcf1b7982e483395e47fc08399ae718d09fbe1b9e8c81665087077a8d5482d", kill_on_drop: false }`
[INFO] [stdout] 17dcf1b7982e483395e47fc08399ae718d09fbe1b9e8c81665087077a8d5482d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 556ec91df99b958b235d8721d74fa5ae108d8ab891f4251f48288f97c342d439
[INFO] running `Command { std: "docker" "start" "-a" "556ec91df99b958b235d8721d74fa5ae108d8ab891f4251f48288f97c342d439", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.80
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling ppv-lite86 v0.2.10
[INFO] [stderr]    Compiling siphasher v0.3.3
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling const_fn v0.4.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.1
[INFO] [stderr]    Compiling memoffset v0.6.1
[INFO] [stderr]    Compiling nom v5.1.2
[INFO] [stderr]    Compiling syn v1.0.57
[INFO] [stderr]    Compiling quote v1.0.8
[INFO] [stderr]    Compiling rayon-core v1.9.0
[INFO] [stderr]    Compiling nix v0.17.0
[INFO] [stderr]     Checking smallvec v1.5.1
[INFO] [stderr]    Compiling heck v0.3.2
[INFO] [stderr]    Compiling rayon v1.5.0
[INFO] [stderr]    Compiling phf_shared v0.8.0
[INFO] [stderr]     Checking smallstr v0.2.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking phf v0.8.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking dirs-sys v0.3.5
[INFO] [stderr]     Checking thread-id v2.0.0
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking thread_local v0.2.7
[INFO] [stderr]     Checking dirs v2.0.2
[INFO] [stderr]     Checking aho-corasick v0.5.3
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking time-test v0.2.2
[INFO] [stderr]     Checking regex v0.1.80
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling phf_generator v0.8.0
[INFO] [stderr]    Compiling clap_derive v3.0.0-beta.2
[INFO] [stderr]    Compiling phf_codegen v0.8.0
[INFO] [stderr]    Compiling terminfo v0.7.3
[INFO] [stderr]     Checking clap v3.0.0-beta.2
[INFO] [stderr]     Checking mortal v0.2.2
[INFO] [stderr]     Checking linefeed v0.6.0
[INFO] [stderr]     Checking sqlit v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::rc`
[INFO] [stdout]  --> src/eval/from.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::rc;
[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: `crate::eval::select::AliasMap`
[INFO] [stdout]   --> src/eval/from.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::eval::select::AliasMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/eval/select.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/eval/where_.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/eval/limit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/table/impl_table.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::result::ErrorType::{Lookup, Runtime};
[INFO] [stdout]   |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/table/impl_store.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/table/impl_table_display.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `maybe_length`
[INFO] [stdout]   --> src/table/impl_table_display.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! maybe_length {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 45 |             find_max!(s, scratch, |string| {&string})
[INFO] [stdout]    |             ----------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: `#[deny(semicolon_in_expressions_from_macros)]` (part of `#[deny(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 49 |             find_max!(i, scratch, |int| {&int})
[INFO] [stdout]    |             ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 53 |             find_max!(f, scratch, |float| {&float})
[INFO] [stdout]    |             --------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |               }).max().unwrap_or(0);
[INFO] [stdout]    |                                    ^
[INFO] [stdout] ...
[INFO] [stdout] 57 | /             find_max!(d, scratch, |timestamp| {
[INFO] [stdout] 58 | |                 &NaiveDateTime::from_timestamp(timestamp.clone(), 0).to_string()
[INFO] [stdout] 59 | |             })
[INFO] [stdout]    | |______________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/table/impl_column.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::result::ErrorType::{Runtime, Type};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> src/table/impl_column.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/ops/boolean.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::result::ErrorType::{Runtime, Type};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc`
[INFO] [stdout]  --> src/eval/from.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::rc;
[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: `crate::eval::select::AliasMap`
[INFO] [stdout]   --> src/eval/from.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::eval::select::AliasMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]   --> src/eval/select.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::rc::Rc;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/eval/where_.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/eval/limit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/table/impl_table.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::result::ErrorType::{Lookup, Runtime};
[INFO] [stdout]   |                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/table/impl_store.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::result::SqlResult`
[INFO] [stdout]   --> src/table/impl_store.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |     use crate::result::SqlResult;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/table/impl_table_display.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `maybe_length`
[INFO] [stdout]   --> src/table/impl_table_display.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! maybe_length {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 45 |             find_max!(s, scratch, |string| {&string})
[INFO] [stdout]    |             ----------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: `#[deny(semicolon_in_expressions_from_macros)]` (part of `#[deny(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 49 |             find_max!(i, scratch, |int| {&int})
[INFO] [stdout]    |             ----------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |             }).max().unwrap_or(0);
[INFO] [stdout]    |                                  ^
[INFO] [stdout] ...
[INFO] [stdout] 53 |             find_max!(f, scratch, |float| {&float})
[INFO] [stdout]    |             --------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/table/impl_table_display.rs:40:34
[INFO] [stdout]    |
[INFO] [stdout] 40 |               }).max().unwrap_or(0);
[INFO] [stdout]    |                                    ^
[INFO] [stdout] ...
[INFO] [stdout] 57 | /             find_max!(d, scratch, |timestamp| {
[INFO] [stdout] 58 | |                 &NaiveDateTime::from_timestamp(timestamp.clone(), 0).to_string()
[INFO] [stdout] 59 | |             })
[INFO] [stdout]    | |______________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `find_max`
[INFO] [stdout]    = note: this error originates in the macro `find_max` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/table/impl_column.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::result::ErrorType::{Runtime, Type};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> src/table/impl_column.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Runtime`
[INFO] [stdout]  --> src/ops/boolean.rs:5:32
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::result::ErrorType::{Runtime, Type};
[INFO] [stdout]   |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `read_field`
[INFO] [stdout]    --> src/ingest/mod.rs:156:58
[INFO] [stdout]     |
[INFO] [stdout] 156 |     use crate::ingest::{CsvFinder, read_line, SepFinder, read_field};
[INFO] [stdout]     |                                                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro defs
[INFO] [stdout]  --> src/ops/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro defs
[INFO] [stdout]  --> src/ops/mod.rs:6:1
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inner`
[INFO] [stdout]   --> src/eval/from.rs:41:60
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn join(left: Table, right: Table, expression: ParserNode, inner: bool, ops: &OpContext, store: &Store) -> SqlResult<Table> {
[INFO] [stdout]    |                                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/eval/from.rs:105:16
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let (_, _, mut children)  = root.release();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/eval/select.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut temp;
[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/eval/columns.rs:225:40
[INFO] [stdout]     |
[INFO] [stdout] 225 | ...                   .map(|mut t| {
[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/parser/rdp.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let mut node = ParserNode::new(ParserNodeType::StarOperator);
[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/table/impl_table_display.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut separator = if filename.ends_with(".tsv") {
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/table/impl_table_display.rs:168:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let path = Path::new(filename);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:25:30
[INFO] [stdout]     |
[INFO] [stdout]  25 |               Column::Booleans($value) => Column::Booleans($block),
[INFO] [stdout]     |                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:25:30
[INFO] [stdout]     |
[INFO] [stdout]  25 |               Column::Booleans($value) => Column::Booleans($block),
[INFO] [stdout]     |                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:26:27
[INFO] [stdout]     |
[INFO] [stdout]  26 |               Column::Dates($value) => Column::Dates($block),
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:26:27
[INFO] [stdout]     |
[INFO] [stdout]  26 |               Column::Dates($value) => Column::Dates($block),
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:27:28
[INFO] [stdout]     |
[INFO] [stdout]  27 |               Column::Floats($value) => Column::Floats($block),
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:27:28
[INFO] [stdout]     |
[INFO] [stdout]  27 |               Column::Floats($value) => Column::Floats($block),
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:28:26
[INFO] [stdout]     |
[INFO] [stdout]  28 |               Column::Ints($value) => Column::Ints($block),
[INFO] [stdout]     |                            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:28:26
[INFO] [stdout]     |
[INFO] [stdout]  28 |               Column::Ints($value) => Column::Ints($block),
[INFO] [stdout]     |                            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:29:29
[INFO] [stdout]     |
[INFO] [stdout]  29 |               Column::Strings($value) => Column::Strings($block),
[INFO] [stdout]     |                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:29:29
[INFO] [stdout]     |
[INFO] [stdout]  29 |               Column::Strings($value) => Column::Strings($block),
[INFO] [stdout]     |                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inner`
[INFO] [stdout]   --> src/eval/from.rs:41:60
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn join(left: Table, right: Table, expression: ParserNode, inner: bool, ops: &OpContext, store: &Store) -> SqlResult<Table> {
[INFO] [stdout]    |                                                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_inner`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/eval/from.rs:105:16
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let (_, _, mut children)  = root.release();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/eval/select.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut temp;
[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/eval/columns.rs:225:40
[INFO] [stdout]     |
[INFO] [stdout] 225 | ...                   .map(|mut t| {
[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/parser/rdp.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |         let mut node = ParserNode::new(ParserNodeType::StarOperator);
[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/parser/rdp.rs:450:13
[INFO] [stdout]     |
[INFO] [stdout] 450 |         let mut tokens = t.tokenize("SELECT a, b, c FROM table".to_string());
[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/parser/rdp.rs:468:22
[INFO] [stdout]     |
[INFO] [stdout] 468 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[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/parser/rdp.rs:468:33
[INFO] [stdout]     |
[INFO] [stdout] 468 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[INFO] [stdout]     |                                 ----^^^^^^
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/parser/rdp.rs:468:33
[INFO] [stdout]     |
[INFO] [stdout] 468 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[INFO] [stdout]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/parser/rdp.rs:473:21
[INFO] [stdout]     |
[INFO] [stdout] 473 |                 let from = nodes.pop_front().unwrap();
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/parser/rdp.rs:475:29
[INFO] [stdout]     |
[INFO] [stdout] 475 |                 let (type_, tokens, nodes) = columns.release();
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nodes`
[INFO] [stdout]    --> src/parser/rdp.rs:475:37
[INFO] [stdout]     |
[INFO] [stdout] 475 |                 let (type_, tokens, nodes) = columns.release();
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/rdp.rs:493:22
[INFO] [stdout]     |
[INFO] [stdout] 493 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[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/parser/rdp.rs:493:33
[INFO] [stdout]     |
[INFO] [stdout] 493 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[INFO] [stdout]     |                                 ----^^^^^^
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/parser/rdp.rs:493:33
[INFO] [stdout]     |
[INFO] [stdout] 493 |                 let (mut type_, mut tokens, mut nodes) = tree.release();
[INFO] [stdout]     |                                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/parser/rdp.rs:498:21
[INFO] [stdout]     |
[INFO] [stdout] 498 |                 let from = nodes.pop_front().unwrap();
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/parser/rdp.rs:500:29
[INFO] [stdout]     |
[INFO] [stdout] 500 |                 let (type_, tokens, nodes) = columns.release();
[INFO] [stdout]     |                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nodes`
[INFO] [stdout]    --> src/parser/rdp.rs:500:37
[INFO] [stdout]     |
[INFO] [stdout] 500 |                 let (type_, tokens, nodes) = columns.release();
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/table/impl_store.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             Ok(t) => assert!(true),
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/table/impl_store.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Err(e) => assert!(false),
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/table/impl_table_display.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut separator = if filename.ends_with(".tsv") {
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]    --> src/table/impl_table_display.rs:168:13
[INFO] [stdout]     |
[INFO] [stdout] 168 |         let path = Path::new(filename);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:25:30
[INFO] [stdout]     |
[INFO] [stdout]  25 |               Column::Booleans($value) => Column::Booleans($block),
[INFO] [stdout]     |                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:25:30
[INFO] [stdout]     |
[INFO] [stdout]  25 |               Column::Booleans($value) => Column::Booleans($block),
[INFO] [stdout]     |                                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:26:27
[INFO] [stdout]     |
[INFO] [stdout]  26 |               Column::Dates($value) => Column::Dates($block),
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:26:27
[INFO] [stdout]     |
[INFO] [stdout]  26 |               Column::Dates($value) => Column::Dates($block),
[INFO] [stdout]     |                             ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:27:28
[INFO] [stdout]     |
[INFO] [stdout]  27 |               Column::Floats($value) => Column::Floats($block),
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:27:28
[INFO] [stdout]     |
[INFO] [stdout]  27 |               Column::Floats($value) => Column::Floats($block),
[INFO] [stdout]     |                              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:28:26
[INFO] [stdout]     |
[INFO] [stdout]  28 |               Column::Ints($value) => Column::Ints($block),
[INFO] [stdout]     |                            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:28:26
[INFO] [stdout]     |
[INFO] [stdout]  28 |               Column::Ints($value) => Column::Ints($block),
[INFO] [stdout]     |                            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/table/impl_column.rs:29:29
[INFO] [stdout]     |
[INFO] [stdout]  29 |               Column::Strings($value) => Column::Strings($block),
[INFO] [stdout]     |                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] help: `v` is captured in macro and introduced a unused variable
[INFO] [stdout]    --> src/table/impl_column.rs:29:29
[INFO] [stdout]     |
[INFO] [stdout]  29 |               Column::Strings($value) => Column::Strings($block),
[INFO] [stdout]     |                               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         map_block!(self, v, {
[INFO] [stdout] 135 | |             vec![]
[INFO] [stdout] 136 | |         })
[INFO] [stdout]     | |__________- in this macro invocation
[INFO] [stdout]     = note: this warning originates in the macro `map_block` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/table/impl_column.rs:209:26
[INFO] [stdout]     |
[INFO] [stdout] 209 |             Column::Ints(mut i) => {
[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/ops/binary_ops.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let mut output : Vec<Option<usize>> = binary_iterate!(left, right, t, |(a, b)| {a + b});
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `argument`
[INFO] [stdout]   --> src/ops/general.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn reduce(&self, argument: &Column) -> SqlResult<Column> {
[INFO] [stdout]    |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_argument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ops/null_ops.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn apply(&self, mut arguments: Vec<&Column>) -> SqlResult<Column> {
[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/ops/null_ops.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn apply(&self, mut arguments: Vec<&Column>) -> SqlResult<Column> {
[INFO] [stdout]    |                     ----^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ToString` is never constructed
[INFO] [stdout]   --> src/converters.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ToString {}
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `AliasMap` is never used
[INFO] [stdout]   --> src/eval/select.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub (super) type AliasMap = HashMap<String, String>;
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Distinct` is never constructed
[INFO] [stdout]  --> src/ops/general.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Distinct{}
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/from.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |                     destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 67 |                     let _ = destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/from.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 |                     destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 77 |                     let _ = destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/into.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     table.write_to_file(&filename);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = table.write_to_file(&filename);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:181:17
[INFO] [stdout]     |
[INFO] [stdout] 181 |                 file.write(separator.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                 let _ = file.write(separator.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 |             file.write(s.as_bytes());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 183 |             let _ = file.write(s.as_bytes());
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             file.write("\n".as_bytes());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 190 |             let _ = file.write("\n".as_bytes());
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     file.write(separator.as_bytes());
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     let _ = file.write(separator.as_bytes());
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 file.write(quote.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let _ = file.write(quote.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 file.write(quote.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 let _ = file.write(quote.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_column.rs:189:17
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 write!(&mut writer, "{}", s);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let _ = write!(&mut writer, "{}", s);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_column.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 write!(&mut writer, "{}", null);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 let _ = write!(&mut writer, "{}", null);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ops/binary_ops.rs:18:47
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub (super) fn prepare_binary_args(input: Vec<&Column>) -> SqlResult<AnnotatedInput> {
[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] 18 | pub (super) fn prepare_binary_args(input: Vec<&Column>) -> SqlResult<AnnotatedInput<'_>> {
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/ingest/mod.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |             target.write_char(characters[index]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |             let _ = target.write_char(characters[index]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sqlit` (lib) due to 8 previous errors; 44 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `argument`
[INFO] [stdout]   --> src/ops/general.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn reduce(&self, argument: &Column) -> SqlResult<Column> {
[INFO] [stdout]    |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_argument`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ops/null_ops.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn apply(&self, mut arguments: Vec<&Column>) -> SqlResult<Column> {
[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/ops/null_ops.rs:34:21
[INFO] [stdout]    |
[INFO] [stdout] 34 |     fn apply(&self, mut arguments: Vec<&Column>) -> SqlResult<Column> {
[INFO] [stdout]    |                     ----^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sep`
[INFO] [stdout]    --> src/ingest/mod.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let sep = CsvFinder{};
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_sep`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `separated`
[INFO] [stdout]    --> src/ingest/mod.rs:200:13
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let separated = read_line(&line, &sep);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_separated`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ToString` is never constructed
[INFO] [stdout]   --> src/converters.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ToString {}
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `AliasMap` is never used
[INFO] [stdout]   --> src/eval/select.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub (super) type AliasMap = HashMap<String, String>;
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Distinct` is never constructed
[INFO] [stdout]  --> src/ops/general.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Distinct{}
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/from.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |                     destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 67 |                     let _ = destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/from.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 |                     destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 77 |                     let _ = destination_columns[num].1.extend(col.column.as_ref());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/eval/into.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     table.write_to_file(&filename);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let _ = table.write_to_file(&filename);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:181:17
[INFO] [stdout]     |
[INFO] [stdout] 181 |                 file.write(separator.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 181 |                 let _ = file.write(separator.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:183:13
[INFO] [stdout]     |
[INFO] [stdout] 183 |             file.write(s.as_bytes());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 183 |             let _ = file.write(s.as_bytes());
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             file.write("\n".as_bytes());
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 190 |             let _ = file.write("\n".as_bytes());
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     file.write(separator.as_bytes());
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     let _ = file.write(separator.as_bytes());
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 file.write(quote.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 let _ = file.write(quote.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_table_display.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 file.write(quote.as_bytes());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 let _ = file.write(quote.as_bytes());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_column.rs:189:17
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 write!(&mut writer, "{}", s);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 189 |                 let _ = write!(&mut writer, "{}", s);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/table/impl_column.rs:191:17
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 write!(&mut writer, "{}", null);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 let _ = write!(&mut writer, "{}", null);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/ops/binary_ops.rs:18:47
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub (super) fn prepare_binary_args(input: Vec<&Column>) -> SqlResult<AnnotatedInput> {
[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] 18 | pub (super) fn prepare_binary_args(input: Vec<&Column>) -> SqlResult<AnnotatedInput<'_>> {
[INFO] [stdout]    |                                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/tokenizer.rs:164:14
[INFO] [stdout]     |
[INFO] [stdout] 164 |             .into_iter().for_each(|type_| {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 164 -             .into_iter().for_each(|type_| {
[INFO] [stdout] 164 +             .iter().for_each(|type_| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 163 -         [Literal, Separator, Identifier, Separator, Identifier, Separator, Literal]
[INFO] [stdout] 163 +         IntoIterator::into_iter([Literal, Separator, Identifier, Separator, Identifier, Separator, Literal]).for_each(|type_| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> src/tokenizer.rs:176:14
[INFO] [stdout]     |
[INFO] [stdout] 176 |             .into_iter().for_each(|type_| {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 176 -             .into_iter().for_each(|type_| {
[INFO] [stdout] 176 +             .iter().for_each(|type_| {
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 175 -         [Keyword, Identifier, Separator, Identifier, Separator, Keyword, Identifier, Keyword, Identifier]
[INFO] [stdout] 175 +         IntoIterator::into_iter([Keyword, Identifier, Separator, Identifier, Separator, Keyword, Identifier, Keyword, Identifier]).for_each(|type_| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/ingest/mod.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |             target.write_char(characters[index]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 145 |             let _ = target.write_char(characters[index]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sqlit` (lib test) due to 8 previous errors; 67 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "556ec91df99b958b235d8721d74fa5ae108d8ab891f4251f48288f97c342d439", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "556ec91df99b958b235d8721d74fa5ae108d8ab891f4251f48288f97c342d439", kill_on_drop: false }`
[INFO] [stdout] 556ec91df99b958b235d8721d74fa5ae108d8ab891f4251f48288f97c342d439
