[INFO] cloning repository https://github.com/itarato/toydb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/itarato/toydb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Ftoydb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Ftoydb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 52c5021c9b965ae3e3ad58fdcb4129b2e1bd29e3 [INFO] testing itarato/toydb against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fitarato%2Ftoydb" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/itarato/toydb [INFO] finished tweaking git repo https://github.com/itarato/toydb [INFO] tweaked toml for git repo https://github.com/itarato/toydb written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/itarato/toydb on toolchain 1.98.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/itarato/toydb 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" "+1.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] warning: `toydb` (manifest) generated 1 warning [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded quote v0.6.3 [INFO] [stderr] Downloaded serde_derive v1.0.66 [INFO] [stderr] Downloaded log v0.4.1 [INFO] [stderr] Downloaded proc-macro2 v0.4.6 [INFO] [stderr] Downloaded lazy_static v1.0.2 [INFO] [stderr] Downloaded string v0.1.0 [INFO] [stderr] Downloaded textwrap v0.10.0 [INFO] [stderr] Downloaded indexmap v1.0.1 [INFO] [stderr] Downloaded http v0.1.6 [INFO] [stderr] Downloaded syn v0.14.2 [INFO] [stderr] Downloaded hyper v0.12.1 [INFO] [stderr] Downloaded clap v2.32.0 [INFO] [stderr] Downloaded regex-syntax v0.6.0 [INFO] [stderr] Downloaded winapi v0.3.4 [INFO] [stderr] Downloaded h2 v0.1.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6 [INFO] running `Command { std: "docker" "start" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] warning: `toydb` (manifest) generated 1 warning [INFO] [stderr] Compiling libc v0.2.42 [INFO] [stderr] Compiling cfg-if v0.1.3 [INFO] [stderr] Compiling futures v0.1.21 [INFO] [stderr] Compiling byteorder v1.2.3 [INFO] [stderr] Compiling lazy_static v1.0.2 [INFO] [stderr] Compiling nodrop v0.1.12 [INFO] [stderr] Compiling slab v0.4.0 [INFO] [stderr] Compiling scopeguard v0.3.3 [INFO] [stderr] Compiling lazycell v0.6.0 [INFO] [stderr] Compiling memoffset v0.2.1 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling serde v1.0.66 [INFO] [stderr] Compiling ucd-util v0.1.1 [INFO] [stderr] Compiling regex v1.0.0 [INFO] [stderr] Compiling log v0.4.1 [INFO] [stderr] Compiling crossbeam-utils v0.3.2 [INFO] [stderr] Compiling proc-macro2 v0.4.6 [INFO] [stderr] Compiling quick-error v1.2.2 [INFO] [stderr] Compiling arrayvec v0.4.7 [INFO] [stderr] Compiling try-lock v0.1.0 [INFO] [stderr] Compiling string v0.1.0 [INFO] [stderr] Compiling utf8-ranges v1.0.0 [INFO] [stderr] Compiling unreachable v1.0.0 [INFO] [stderr] Compiling indexmap v1.0.1 [INFO] [stderr] Compiling thread_local v0.3.5 [INFO] [stderr] Compiling regex-syntax v0.6.0 [INFO] [stderr] Compiling unicode-width v0.1.5 [INFO] [stderr] Compiling humantime v1.1.1 [INFO] [stderr] Compiling textwrap v0.10.0 [INFO] [stderr] Compiling itoa v0.4.1 [INFO] [stderr] Compiling bitflags v1.0.3 [INFO] [stderr] Compiling dtoa v0.4.2 [INFO] [stderr] Compiling termcolor v0.3.6 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling strsim v0.7.0 [INFO] [stderr] Compiling httparse v1.2.4 [INFO] [stderr] Compiling iovec v0.1.2 [INFO] [stderr] Compiling net2 v0.2.32 [INFO] [stderr] Compiling bytes v0.4.8 [INFO] [stderr] Compiling num_cpus v1.8.0 [INFO] [stderr] Compiling rand v0.4.2 [INFO] [stderr] Compiling crossbeam-epoch v0.4.3 [INFO] [stderr] Compiling memchr v2.0.1 [INFO] [stderr] Compiling quote v0.6.3 [INFO] [stderr] Compiling atty v0.2.10 [INFO] [stderr] Compiling mio v0.6.14 [INFO] [stderr] Compiling aho-corasick v0.6.4 [INFO] [stderr] Compiling syn v0.14.2 [INFO] [stderr] Compiling time v0.1.40 [INFO] [stderr] Compiling http v0.1.6 [INFO] [stderr] Compiling clap v2.32.0 [INFO] [stderr] Compiling crossbeam-deque v0.3.1 [INFO] [stderr] Compiling tokio-io v0.1.7 [INFO] [stderr] Compiling tokio-executor v0.1.2 [INFO] [stderr] Compiling want v0.0.4 [INFO] [stderr] Compiling futures-cpupool v0.1.8 [INFO] [stderr] Compiling tokio-threadpool v0.1.4 [INFO] [stderr] Compiling tokio-timer v0.2.4 [INFO] [stderr] Compiling serde_derive v1.0.66 [INFO] [stderr] Compiling tokio-reactor v0.1.2 [INFO] [stderr] Compiling tokio-codec v0.1.0 [INFO] [stderr] Compiling h2 v0.1.9 [INFO] [stderr] Compiling tokio-fs v0.1.1 [INFO] [stderr] Compiling tokio-tcp v0.1.0 [INFO] [stderr] Compiling tokio-udp v0.1.1 [INFO] [stderr] Compiling tokio v0.1.7 [INFO] [stderr] Compiling env_logger v0.5.10 [INFO] [stderr] Compiling serde_json v1.0.21 [INFO] [stderr] Compiling hyper v0.12.1 [INFO] [stderr] Compiling toydb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `util` [INFO] [stdout] --> src/dbserver.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use util; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | / lazy_static! { [INFO] [stdout] 28 | | static ref IS_VERBOSE: Mutex> = Mutex::new(Cell::new(false)); [INFO] [stdout] 29 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/dbserver.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `prelude` [INFO] [stdout] --> src/repl.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, prelude::*, Write}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Query` is never used [INFO] [stdout] --> src/query.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Query { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Type` is never used [INFO] [stdout] --> src/query.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | pub enum Type { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FieldDef` is never constructed [INFO] [stdout] --> src/query.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub struct FieldDef { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl FieldDef { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 45 | pub fn new(name: String, config: Type) -> FieldDef { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CreateQuery` is never constructed [INFO] [stdout] --> src/query.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct CreateQuery { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 57 | impl CreateQuery { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 58 | pub fn new(table: String, fields: Vec, indices: Vec) -> CreateQuery { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Relation` is never used [INFO] [stdout] --> src/query.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | pub enum Relation { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/query.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Relation { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 74 | pub fn from(raw: &String) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FieldCondition` is never constructed [INFO] [stdout] --> src/query.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct FieldCondition { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl FieldCondition { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 102 | pub fn new(field_name: String, relation: String, value: String) -> FieldCondition { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SelectQuery` is never constructed [INFO] [stdout] --> src/query.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct SelectQuery { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 118 | impl SelectQuery { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 119 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InsertQuery` is never constructed [INFO] [stdout] --> src/query.rs:133:12 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct InsertQuery { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl InsertQuery { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 139 | pub fn new(table_name: String, raw_inserts: HashMap) -> InsertQuery { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DescribeQuery` is never constructed [INFO] [stdout] --> src/query.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 148 | pub struct DescribeQuery; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `parse` is never used [INFO] [stdout] --> src/query_parser.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl QueryParser { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn parse(&self, raw: &String) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize` is never used [INFO] [stdout] --> src/query_parser.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn tokenize(raw: &String) -> Vec<&str> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_create_table` is never used [INFO] [stdout] --> src/query_parser.rs:52:4 [INFO] [stdout] | [INFO] [stdout] 52 | fn parse_create_table(tokens: &mut Vec<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_select` is never used [INFO] [stdout] --> src/query_parser.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn parse_select(tokens: &mut Vec<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_insert` is never used [INFO] [stdout] --> src/query_parser.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn parse_insert(tokens: &mut Vec<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:21 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:28 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (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/engine.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | let mut index = self.indices.get_mut(column_name).unwrap(); [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: function `is_verbose` is never used [INFO] [stdout] --> src/main.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn is_verbose() -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_pos` is never used [INFO] [stdout] --> src/index.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub trait Index { [INFO] [stdout] | ----- method in this trait [INFO] [stdout] 5 | fn insert(&mut self, val: util::Val, at: usize); [INFO] [stdout] 6 | fn get_pos(&self, val: util::Val) -> Option<&Vec>; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `looks_like_query` is never used [INFO] [stdout] --> src/query_parser.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl QueryParser { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 9 | pub fn looks_like_query(raw: &String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/dbserver.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | self.engine_operator.lock().unwrap().init(); [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] 21 | let _ = self.engine_operator.lock().unwrap().init(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/engine.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ColumnInfo` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ColumnInfo` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/engine.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ColumnInfo` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ColumnInfo` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:21 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:28 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/table_sync.rs:24:46 [INFO] [stdout] | [INFO] [stdout] 24 | let mut f: File = File::open(path.clone()).unwrap(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/util.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Val` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Val` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/util.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Val` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Val` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `release` profile [optimized] target(s) in 53.28s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.2 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] warning: `toydb` (manifest) generated 1 warning [INFO] [stderr] Compiling toydb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `util` [INFO] [stdout] --> src/dbserver.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use util; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred [INFO] [stdout] --> src/main.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | / lazy_static! { [INFO] [stdout] 28 | | static ref IS_VERBOSE: Mutex> = Mutex::new(Cell::new(false)); [INFO] [stdout] 29 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/dbserver.rs:82:10 [INFO] [stdout] | [INFO] [stdout] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `prelude` [INFO] [stdout] --> src/repl.rs:3:21 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, prelude::*, Write}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Select`, `Insert`, and `Describe` are never constructed [INFO] [stdout] --> src/query.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Query { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 6 | Create(CreateQuery), [INFO] [stdout] 7 | Select(SelectQuery), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | Insert(InsertQuery), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 9 | Describe(DescribeQuery), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Relation` is never used [INFO] [stdout] --> src/query.rs:67:10 [INFO] [stdout] | [INFO] [stdout] 67 | pub enum Relation { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/query.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Relation { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 74 | pub fn from(raw: &String) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `field_name`, `relation`, and `value` are never read [INFO] [stdout] --> src/query.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct FieldCondition { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 96 | pub field_name: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 97 | pub relation: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 98 | pub value: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FieldCondition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 101 | impl FieldCondition { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 102 | pub fn new(field_name: String, relation: String, value: String) -> FieldCondition { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `table`, `columns`, and `conditions` are never read [INFO] [stdout] --> src/query.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 112 | pub struct SelectQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 113 | pub table: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 114 | pub columns: Vec, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 115 | pub conditions: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SelectQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 118 | impl SelectQuery { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 119 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `table_name` and `raw_inserts` are never read [INFO] [stdout] --> src/query.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 133 | pub struct InsertQuery { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 134 | pub table_name: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 135 | pub raw_inserts: HashMap, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InsertQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/query.rs:139:12 [INFO] [stdout] | [INFO] [stdout] 138 | impl InsertQuery { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 139 | pub fn new(table_name: String, raw_inserts: HashMap) -> InsertQuery { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `parse` is never used [INFO] [stdout] --> src/query_parser.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl QueryParser { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn parse(&self, raw: &String) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize` is never used [INFO] [stdout] --> src/query_parser.rs:47:4 [INFO] [stdout] | [INFO] [stdout] 47 | fn tokenize(raw: &String) -> Vec<&str> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_select` is never used [INFO] [stdout] --> src/query_parser.rs:122:4 [INFO] [stdout] | [INFO] [stdout] 122 | fn parse_select(tokens: &mut Vec<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_insert` is never used [INFO] [stdout] --> src/query_parser.rs:153:4 [INFO] [stdout] | [INFO] [stdout] 153 | fn parse_insert(tokens: &mut Vec<&str>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:21 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:28 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (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/engine.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | let mut index = self.indices.get_mut(column_name).unwrap(); [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: function `is_verbose` is never used [INFO] [stdout] --> src/main.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn is_verbose() -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `looks_like_query` is never used [INFO] [stdout] --> src/query_parser.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl QueryParser { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] 9 | pub fn looks_like_query(raw: &String) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/dbserver.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | self.engine_operator.lock().unwrap().init(); [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] 21 | let _ = self.engine_operator.lock().unwrap().init(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/engine.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ColumnInfo` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ColumnInfo` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/engine.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ColumnInfo` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ColumnInfo` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:21 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:23:32 [INFO] [stdout] | [INFO] [stdout] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Type` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Type` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/query.rs:38:28 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `FieldDef` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FieldDef` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/table_sync.rs:24:46 [INFO] [stdout] | [INFO] [stdout] 24 | let mut f: File = File::open(path.clone()).unwrap(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/util.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Val` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Val` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/util.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Val` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Val` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1.51s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.2 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] running `Command { std: "docker" "inspect" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] warning: `toydb` (manifest) generated 1 warning [INFO] [stderr] warning: unused import: `util` [INFO] [stderr] --> src/dbserver.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use util; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred [INFO] [stderr] --> src/main.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | / lazy_static! { [INFO] [stderr] 28 | | static ref IS_VERBOSE: Mutex> = Mutex::new(Cell::new(false)); [INFO] [stderr] 29 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `lazy_static` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/dbserver.rs:82:10 [INFO] [stderr] | [INFO] [stderr] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 82 | ) -> Box, Error = hyper::Error> + Send> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/engine.rs:86:21 [INFO] [stderr] | [INFO] [stderr] 86 | let mut index = self.indices.get_mut(column_name).unwrap(); [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: function `is_verbose` is never used [INFO] [stderr] --> src/main.rs:31:4 [INFO] [stderr] | [INFO] [stderr] 31 | fn is_verbose() -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `looks_like_query` is never used [INFO] [stderr] --> src/query_parser.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 8 | impl QueryParser { [INFO] [stderr] | ---------------- associated function in this implementation [INFO] [stderr] 9 | pub fn looks_like_query(raw: &String) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/dbserver.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | self.engine_operator.lock().unwrap().init(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 21 | let _ = self.engine_operator.lock().unwrap().init(); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/engine.rs:10:17 [INFO] [stderr] | [INFO] [stderr] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `ColumnInfo` is not local [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ColumnInfo` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/engine.rs:10:28 [INFO] [stderr] | [INFO] [stderr] 10 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stderr] | -^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `ColumnInfo` is not local [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ColumnInfo` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/query.rs:23:21 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Type` is not local [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/query.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stderr] | -^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Type` is not local [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Type` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/query.rs:38:17 [INFO] [stderr] | [INFO] [stderr] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `FieldDef` is not local [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_FieldDef` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/query.rs:38:28 [INFO] [stderr] | [INFO] [stderr] 38 | #[derive(Debug, Serialize, Deserialize)] [INFO] [stderr] | -^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `FieldDef` is not local [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_FieldDef` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/table_sync.rs:24:46 [INFO] [stderr] | [INFO] [stderr] 24 | let mut f: File = File::open(path.clone()).unwrap(); [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/util.rs:6:10 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Val` is not local [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Val` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/util.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | #[derive(Serialize, Deserialize, Eq, Hash)] [INFO] [stderr] | -^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Val` is not local [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Val` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `prelude` [INFO] [stderr] --> src/repl.rs:3:21 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io::{self, prelude::*, Write}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variants `Select`, `Insert`, and `Describe` are never constructed [INFO] [stderr] --> src/query.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 5 | pub enum Query { [INFO] [stderr] | ----- variants in this enum [INFO] [stderr] 6 | Create(CreateQuery), [INFO] [stderr] 7 | Select(SelectQuery), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 8 | Insert(InsertQuery), [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 9 | Describe(DescribeQuery), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: enum `Relation` is never used [INFO] [stderr] --> src/query.rs:67:10 [INFO] [stderr] | [INFO] [stderr] 67 | pub enum Relation { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `from` is never used [INFO] [stderr] --> src/query.rs:74:12 [INFO] [stderr] | [INFO] [stderr] 73 | impl Relation { [INFO] [stderr] | ------------- associated function in this implementation [INFO] [stderr] 74 | pub fn from(raw: &String) -> Option { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `field_name`, `relation`, and `value` are never read [INFO] [stderr] --> src/query.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 95 | pub struct FieldCondition { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 96 | pub field_name: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 97 | pub relation: String, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 98 | pub value: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FieldCondition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/query.rs:102:12 [INFO] [stderr] | [INFO] [stderr] 101 | impl FieldCondition { [INFO] [stderr] | ------------------- associated function in this implementation [INFO] [stderr] 102 | pub fn new(field_name: String, relation: String, value: String) -> FieldCondition { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `table`, `columns`, and `conditions` are never read [INFO] [stderr] --> src/query.rs:113:9 [INFO] [stderr] | [INFO] [stderr] 112 | pub struct SelectQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 113 | pub table: String, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 114 | pub columns: Vec, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 115 | pub conditions: Vec, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `SelectQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/query.rs:119:12 [INFO] [stderr] | [INFO] [stderr] 118 | impl SelectQuery { [INFO] [stderr] | ---------------- associated function in this implementation [INFO] [stderr] 119 | pub fn new( [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `table_name` and `raw_inserts` are never read [INFO] [stderr] --> src/query.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 133 | pub struct InsertQuery { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 134 | pub table_name: String, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 135 | pub raw_inserts: HashMap, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `InsertQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/query.rs:139:12 [INFO] [stderr] | [INFO] [stderr] 138 | impl InsertQuery { [INFO] [stderr] | ---------------- associated function in this implementation [INFO] [stderr] 139 | pub fn new(table_name: String, raw_inserts: HashMap) -> InsertQuery { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `parse` is never used [INFO] [stderr] --> src/query_parser.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 8 | impl QueryParser { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 27 | pub fn parse(&self, raw: &String) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `tokenize` is never used [INFO] [stderr] --> src/query_parser.rs:47:4 [INFO] [stderr] | [INFO] [stderr] 47 | fn tokenize(raw: &String) -> Vec<&str> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `parse_select` is never used [INFO] [stderr] --> src/query_parser.rs:122:4 [INFO] [stderr] | [INFO] [stderr] 122 | fn parse_select(tokens: &mut Vec<&str>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `parse_insert` is never used [INFO] [stderr] --> src/query_parser.rs:153:4 [INFO] [stderr] | [INFO] [stderr] 153 | fn parse_insert(tokens: &mut Vec<&str>) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/query.rs:23:21 [INFO] [stderr] | [INFO] [stderr] 23 | #[derive(PartialEq, Serialize, Deserialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | `Type` is not local [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Type` [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `toydb` (bin "server" test) generated 16 warnings (run `cargo fix --bin "server" -p toydb --tests` to apply 4 suggestions) [INFO] [stderr] warning: `toydb` (bin "client" test) generated 18 warnings (3 duplicates) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.14s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: syn v0.14.2 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1` [INFO] [stderr] Running unittests src/repl_client.rs (/opt/rustwide/target/release/deps/client-bcd179fc13a5e63c) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_type_not_known ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_varchar_size_is_not_int ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_start_token_different ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_varchar_does_not_have_size ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_with_indices ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_without_fields ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_simple ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/release/deps/server-84e0ba78d2b1a7e5) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test engine::test::test_raw_string_to_val_u32 ... ok [INFO] [stdout] test engine::test::test_raw_string_to_val_u32_fail ... ok [INFO] [stdout] test engine::test::test_raw_string_to_val_varchar ... ok [INFO] [stdout] test engine::test::test_raw_string_to_val_varchar_different_size ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_start_token_different ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_type_not_known ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_varchar_size_is_not_int ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_without_fields ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_simple ... ok [INFO] [stdout] test index::test::test_basic_index_return_none_for_missing_key ... ok [INFO] [stdout] test index::test::test_basic_index_return_more_than_one_position ... ok [INFO] [stdout] test index::test::test_basic_index_returns_pos ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_with_indices ... ok [INFO] [stdout] test query_parser::tests::test_parse_create_table_fails_if_varchar_does_not_have_size ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6", kill_on_drop: false }` [INFO] [stdout] c26bf461c30a436ddaf7049a7b33e28da5f672e9d12416b6d7a82f4074a809a6