[INFO] cloning repository https://github.com/sueken5/chicchaidb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sueken5/chicchaidb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsueken5%2Fchicchaidb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsueken5%2Fchicchaidb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 051722917613fb2ede739be857be5ab3fd09fdf5
[INFO] checking sueken5/chicchaidb/051722917613fb2ede739be857be5ab3fd09fdf5 against dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8 for pr-133502-26
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsueken5%2Fchicchaidb" "/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/sueken5/chicchaidb
[INFO] finished tweaking git repo https://github.com/sueken5/chicchaidb
[INFO] tweaked toml for git repo https://github.com/sueken5/chicchaidb written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sueken5/chicchaidb on toolchain dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sueken5/chicchaidb 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" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bincode v1.1.2
[INFO] [stderr]   Downloaded serde_derive v1.0.88
[INFO] [stderr]   Downloaded serde v1.0.88
[INFO] [stderr]   Downloaded syn v0.15.26
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663
[INFO] running `Command { std: "docker" "start" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663", 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" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663" "/opt/rustwide/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663" "/opt/rustwide/cargo-home/bin/cargo" "+dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v0.4.27
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]    Compiling serde v1.0.88
[INFO] [stderr]    Compiling autocfg v0.1.2
[INFO] [stderr]    Compiling bincode v1.1.2
[INFO] [stderr]    Compiling quote v0.6.11
[INFO] [stderr]    Compiling syn v0.15.26
[INFO] [stderr]    Compiling serde_derive v1.0.88
[INFO] [stderr]     Checking chicchaidb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/key_value.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` 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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:77:23
[INFO] [stdout]    |
[INFO] [stdout] 77 | #[derive(Copy, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 | #[derive(Copy, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:203:10
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Serialize, Deserialize, Copy, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:203:21
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Serialize, Deserialize, Copy, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:10
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:256:10
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:256:21
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/disk_btree.rs:40:62
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn new(file_path: String) -> Result<BTree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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] 40 |     fn new(file_path: String) -> Result<BTree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/disk_btree.rs:57:62
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn insert(&mut self, key: K, value: V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn insert(&mut self, key: K, value: V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/disk_btree.rs:97:111
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(file: &mut File, id: NodeID, width: usize, elms: Vec<Elm<'d, K, V>>) -> Result<Node<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(file: &mut File, id: NodeID, width: usize, elms: Vec<Elm<'d, K, V>>) -> Result<Node<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:111:119
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn insert(&mut self, file: &mut File, count: &mut usize, elm: Elm<'d, K, V>) -> Result<Option<Elm<'d, K, V>>, Box<Error>> {
[INFO] [stdout]     |                                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn insert(&mut self, file: &mut File, count: &mut usize, elm: Elm<'d, K, V>) -> Result<Option<Elm<'d, K, V>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:146:100
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn balance(&mut self, file: &mut File, count: &mut usize) -> Result<Option<Elm<'d, K, V>>, Box<Error>>{
[INFO] [stdout]     |                                                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn balance(&mut self, file: &mut File, count: &mut usize) -> Result<Option<Elm<'d, K, V>>, Box<dyn Error>>{
[INFO] [stdout]     |                                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:164:71
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn save(file: &mut File, node: &Node<'d, K, V>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn save(file: &mut File, node: &Node<'d, K, V>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:180:72
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn open(file: &mut File, id: NodeID) -> Result<Node<'d, K, V>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn open(file: &mut File, id: NodeID) -> Result<Node<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:267:42
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ) -> Result<DiskBtree<'d, K, V>, Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ) -> Result<DiskBtree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:302:42
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn is_new(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn is_new(&self) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:311:48
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn initialize(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn initialize(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:332:52
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn metadata(&mut self) -> Result<MetaData, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn metadata(&mut self) -> Result<MetaData, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:349:41
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn mapping(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn mapping(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mem_btree.rs:12:52
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new() -> Result<MemBtree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new() -> Result<MemBtree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/wal.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ) -> Result<WAL<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ) -> Result<WAL<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/wal.rs:19:68
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn insert(&mut self, key: &K, value: &V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn insert(&mut self, key: &K, value: &V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:23:43
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ) -> Result<RecordFile<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ) -> Result<RecordFile<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:38:46
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn is_new(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn is_new(&self) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:47:77
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn insert(&mut self, kv: &KeyValuePair<'d, K, V>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn insert(&mut self, kv: &KeyValuePair<'d, K, V>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Result<Btree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Result<Btree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:40:66
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn insert(&mut self, key: K, value: V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn insert(&mut self, key: K, value: V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:53:43
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn merge(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn merge(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:57:47
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn close(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn close(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]   --> src/btree/key_value.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]   --> src/btree/key_value.rs:4:50
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_KeyValuePair::<impl Deserialize<'de> for KeyValuePair<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]    = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]    = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-9383009f2ad913a1.long-type-10807025397813714167.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:88:20
[INFO] [stdout]    |
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]   --> src/btree/key_value.rs:4:50
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Node::<impl Deserialize<'de> for Node<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]    = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]    = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-9383009f2ad913a1.long-type-12835556473476018772.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:210:19
[INFO] [stdout]     |
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]    --> src/btree/key_value.rs:4:50
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Elm::<impl Deserialize<'de> for Elm<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]     = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]     = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-9383009f2ad913a1.long-type-9658563558192946773.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_KeyValuePair::<impl Deserialize<'de> for KeyValuePair<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:13:10
[INFO] [stdout]      |
[INFO] [stdout]   13 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   13 -     key: &'d K,
[INFO] [stdout]   13 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:14:12
[INFO] [stdout]      |
[INFO] [stdout]   14 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   14 -     value: &'d V,
[INFO] [stdout]   14 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:13:10
[INFO] [stdout]      |
[INFO] [stdout]   13 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   13 -     key: &'d K,
[INFO] [stdout]   13 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:14:12
[INFO] [stdout]      |
[INFO] [stdout]   14 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   14 -     value: &'d V,
[INFO] [stdout]   14 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&K: Deserialize<'_>` is not satisfied
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&K`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 18 | where
[INFO] [stdout] 19 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&V: Deserialize<'_>` is not satisfied
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&V`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 18 | where
[INFO] [stdout] 19 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/key_value.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` 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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:77:23
[INFO] [stdout]    |
[INFO] [stdout] 77 | #[derive(Copy, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 | #[derive(Copy, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:203:10
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Serialize, Deserialize, Copy, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:203:21
[INFO] [stdout]     |
[INFO] [stdout] 203 | #[derive(Serialize, Deserialize, Copy, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:10
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:256:10
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/btree/disk_btree.rs:256:21
[INFO] [stdout]     |
[INFO] [stdout] 256 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]     = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[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] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/key_value.rs:19:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> KeyValuePair<'d, K, V> {
[INFO] [stdout]    |          - found this type parameter
[INFO] [stdout] 18 |     pub fn new(key: K, value: V) -> Self {
[INFO] [stdout] 19 |         KeyValuePair { key, value }
[INFO] [stdout]    |                        ^^^ expected `&K`, found type parameter `K`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected reference `&_`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 19 |         KeyValuePair { key: &key, value }
[INFO] [stdout]    |                        ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/key_value.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> KeyValuePair<'d, K, V> {
[INFO] [stdout]    |                          - found this type parameter
[INFO] [stdout] 18 |     pub fn new(key: K, value: V) -> Self {
[INFO] [stdout] 19 |         KeyValuePair { key, value }
[INFO] [stdout]    |                             ^^^^^ expected `&V`, found type parameter `V`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected reference `&_`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 19 |         KeyValuePair { key, value: &value }
[INFO] [stdout]    |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Node::<impl Deserialize<'de> for Node<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:91:11
[INFO] [stdout]      |
[INFO] [stdout]   91 |     elms: Vec<Elm<'d, K, V>>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]     --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]      |
[INFO] [stdout]   87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]      |                     ^^^^^^^^^^^
[INFO] [stdout]   88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `Elm<'d, K, V>` to implement `Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:210:8
[INFO] [stdout]      |
[INFO] [stdout]  209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]      |                     ----------- type parameter would need to implement `Deserialize<'_>`
[INFO] [stdout]  210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = help: consider manually implementing `Deserialize<'_>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]      = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]      = note: 1 redundant requirement hidden
[INFO] [stdout]      = note: required for `Vec<Elm<'d, K, V>>` to implement `Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: this error originates in the derive macro `Deserialize` (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/btree/disk_btree.rs:40:62
[INFO] [stdout]    |
[INFO] [stdout] 40 |     fn new(file_path: String) -> Result<BTree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[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] 40 |     fn new(file_path: String) -> Result<BTree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:91:11
[INFO] [stdout]      |
[INFO] [stdout]   91 |     elms: Vec<Elm<'d, K, V>>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]     --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]      |
[INFO] [stdout]   87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]      |                     ^^^^^^^^^^^
[INFO] [stdout]   88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `Elm<'d, K, V>` to implement `Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:210:8
[INFO] [stdout]      |
[INFO] [stdout]  209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]      |                     ----------- type parameter would need to implement `Deserialize<'_>`
[INFO] [stdout]  210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = help: consider manually implementing `Deserialize<'_>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]      = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]      = note: 1 redundant requirement hidden
[INFO] [stdout]      = note: required for `Vec<Elm<'d, K, V>>` to implement `Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: this error originates in the derive macro `Deserialize` (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/btree/disk_btree.rs:57:62
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn insert(&mut self, key: K, value: V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn insert(&mut self, key: K, value: V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/disk_btree.rs:97:111
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(file: &mut File, id: NodeID, width: usize, elms: Vec<Elm<'d, K, V>>) -> Result<Node<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                                                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(file: &mut File, id: NodeID, width: usize, elms: Vec<Elm<'d, K, V>>) -> Result<Node<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:111:119
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn insert(&mut self, file: &mut File, count: &mut usize, elm: Elm<'d, K, V>) -> Result<Option<Elm<'d, K, V>>, Box<Error>> {
[INFO] [stdout]     |                                                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 111 |     fn insert(&mut self, file: &mut File, count: &mut usize, elm: Elm<'d, K, V>) -> Result<Option<Elm<'d, K, V>>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:146:100
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn balance(&mut self, file: &mut File, count: &mut usize) -> Result<Option<Elm<'d, K, V>>, Box<Error>>{
[INFO] [stdout]     |                                                                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn balance(&mut self, file: &mut File, count: &mut usize) -> Result<Option<Elm<'d, K, V>>, Box<dyn Error>>{
[INFO] [stdout]     |                                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:164:71
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn save(file: &mut File, node: &Node<'d, K, V>) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 164 |     fn save(file: &mut File, node: &Node<'d, K, V>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:180:72
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn open(file: &mut File, id: NodeID) -> Result<Node<'d, K, V>, Box<Error>> {
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn open(file: &mut File, id: NodeID) -> Result<Node<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:267:42
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ) -> Result<DiskBtree<'d, K, V>, Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 267 |     ) -> Result<DiskBtree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:302:42
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn is_new(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]     |                                          ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn is_new(&self) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:311:48
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn initialize(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 311 |     fn initialize(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:332:52
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn metadata(&mut self) -> Result<MetaData, Box<Error>> {
[INFO] [stdout]     |                                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 332 |     fn metadata(&mut self) -> Result<MetaData, Box<dyn Error>> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/btree/disk_btree.rs:349:41
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn mapping(&self) -> Result<(), Box<Error>> {
[INFO] [stdout]     |                                         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn mapping(&self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mem_btree.rs:12:52
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new() -> Result<MemBtree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn new() -> Result<MemBtree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/wal.rs:14:36
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ) -> Result<WAL<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 14 |     ) -> Result<WAL<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/wal.rs:19:68
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn insert(&mut self, key: &K, value: &V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn insert(&mut self, key: &K, value: &V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:23:43
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ) -> Result<RecordFile<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     ) -> Result<RecordFile<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:38:46
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn is_new(&self) -> Result<bool, Box<Error>> {
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub fn is_new(&self) -> Result<bool, Box<dyn Error>> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/record_file.rs:47:77
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn insert(&mut self, kv: &KeyValuePair<'d, K, V>) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn insert(&mut self, kv: &KeyValuePair<'d, K, V>) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:26:38
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Result<Btree<'d, K, V>, Box<Error>> {
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Result<Btree<'d, K, V>, Box<dyn Error>> {
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:40:66
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn insert(&mut self, key: K, value: V) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn insert(&mut self, key: K, value: V) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:53:43
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn merge(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn merge(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/btree/mod.rs:57:47
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn close(&mut self) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn close(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Elm::<impl Deserialize<'de> for Elm<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:211:10
[INFO] [stdout]      |
[INFO] [stdout]  211 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  211 -     key: &'d K,
[INFO] [stdout]  211 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:212:12
[INFO] [stdout]      |
[INFO] [stdout]  212 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  212 -     value: &'d V,
[INFO] [stdout]  212 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:211:10
[INFO] [stdout]      |
[INFO] [stdout]  211 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  211 -     key: &'d K,
[INFO] [stdout]  211 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:212:12
[INFO] [stdout]      |
[INFO] [stdout]  212 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  212 -     value: &'d V,
[INFO] [stdout]  212 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&K: Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&K`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  18 | where
[INFO] [stdout]  19 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&V: Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&V`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  18 | where
[INFO] [stdout]  19 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]   --> src/btree/key_value.rs:12:32
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]   --> src/btree/key_value.rs:4:50
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/btree/disk_btree.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Elm<'d, K, V> {
[INFO] [stdout]     |           - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 220 |             key,
[INFO] [stdout]     |             ^^^ expected `&K`, found type parameter `K`
[INFO] [stdout]     |
[INFO] [stdout]     = note:   expected reference `&_`
[INFO] [stdout]             found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 220 |             key: &key,
[INFO] [stdout]     |             ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/btree/disk_btree.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Elm<'d, K, V> {
[INFO] [stdout]     |                           - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 221 |             value,
[INFO] [stdout]     |             ^^^^^ expected `&V`, found type parameter `V`
[INFO] [stdout]     |
[INFO] [stdout]     = note:   expected reference `&_`
[INFO] [stdout]             found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 221 |             value: &value,
[INFO] [stdout]     |             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_KeyValuePair::<impl Deserialize<'de> for KeyValuePair<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]    = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]    = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-cd789794c1ee67ee.long-type-11718862909890047913.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/mem_btree.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |          - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 14 |             map: BTreeMap::<K, V>::new(),
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^ expected `BTreeMap<&K, &V>`, found `BTreeMap<K, V>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `BTreeMap<&_, &_>`
[INFO] [stdout]               found struct `BTreeMap<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:88:20
[INFO] [stdout]    |
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]   --> src/btree/key_value.rs:4:50
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Node::<impl Deserialize<'de> for Node<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]    = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]    = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-cd789794c1ee67ee.long-type-5887476665476851971.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'d>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:210:19
[INFO] [stdout]     |
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'d>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `KeyType`
[INFO] [stdout]    --> src/btree/key_value.rs:4:50
[INFO] [stdout]     |
[INFO] [stdout]   4 | pub trait KeyType<'d>: Ord + Clone + Serialize + Deserialize<'d> {}
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^ required by this bound in `KeyType`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'de>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'de>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Elm::<impl Deserialize<'de> for Elm<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required for `__Visitor<'de, 'd, K, V>` to implement `Visitor<'de>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ type parameter would need to implement `Visitor<'de>`
[INFO] [stdout]     = help: consider manually implementing `Visitor<'de>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]     = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/chicchaidb-cd789794c1ee67ee.long-type-650193446654322464.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this method are incorrect
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |          -               - found this type parameter
[INFO] [stdout]    |          |
[INFO] [stdout]    |          found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: expected `&K`, found type parameter `K`
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                         ^^^
[INFO] [stdout]    = note:   expected reference `&'d _`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] note: expected `&V`, found type parameter `V`
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout]    = note:   expected reference `&'d _`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: the return type of this call is `V` due to the type of the argument passed
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^-----^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              this argument influences the return type of `insert`
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/alloc/src/collections/btree/map.rs:1045:11
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(&key, value);
[INFO] [stdout]    |                         +
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, &value);
[INFO] [stdout]    |                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/mem_btree.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |                          - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get(&self, key: K) -> Option<&V> {
[INFO] [stdout]    |                                  ---------- expected `std::option::Option<&V>` because of return type
[INFO] [stdout] 25 |         self.map.get(&key)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ expected `Option<&V>`, found `Option<&&V>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<&_>`
[INFO] [stdout]               found enum `Option<&&_>`
[INFO] [stdout] help: try using `.map(|v| &**v)` to convert `std::option::Option<&&V>` to `std::option::Option<&V>`
[INFO] [stdout]    |
[INFO] [stdout] 25 |         self.map.get(&key).map(|v| &**v)
[INFO] [stdout]    |                           ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 |             println!("err {}", e.description());
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |         println!("err {}", e.description());
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 12 | pub struct KeyValuePair<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                                ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_KeyValuePair::<impl Deserialize<'de> for KeyValuePair<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:13:10
[INFO] [stdout]      |
[INFO] [stdout]   13 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   13 -     key: &'d K,
[INFO] [stdout]   13 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:14:12
[INFO] [stdout]      |
[INFO] [stdout]   14 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   14 -     value: &'d V,
[INFO] [stdout]   14 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:13:10
[INFO] [stdout]      |
[INFO] [stdout]   13 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   13 -     key: &'d K,
[INFO] [stdout]   13 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/key_value.rs:14:12
[INFO] [stdout]      |
[INFO] [stdout]   14 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]   14 -     value: &'d V,
[INFO] [stdout]   14 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0596]: cannot borrow `elms` as mutable, as it is not declared as mutable
[INFO] [stdout]   --> src/btree/disk_btree.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 elms.push(e);
[INFO] [stdout]    |                 ^^^^ cannot borrow as mutable
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing this to be mutable
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 let mut elms = Vec::<Elm<'d, K, V>>::new();
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&K: Deserialize<'_>` is not satisfied
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&K`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 18 | where
[INFO] [stdout] 19 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&V: Deserialize<'_>` is not satisfied
[INFO] [stdout]   --> src/btree/key_value.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&V`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]    |        ------------- required by a bound in this function
[INFO] [stdout] 18 | where
[INFO] [stdout] 19 |     V: Deserialize<'de>,
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/key_value.rs:19:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> KeyValuePair<'d, K, V> {
[INFO] [stdout]    |          - found this type parameter
[INFO] [stdout] 18 |     pub fn new(key: K, value: V) -> Self {
[INFO] [stdout] 19 |         KeyValuePair { key, value }
[INFO] [stdout]    |                        ^^^ expected `&K`, found type parameter `K`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected reference `&_`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 19 |         KeyValuePair { key: &key, value }
[INFO] [stdout]    |                        ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0004]: non-exhaustive patterns: `Err(_)` not covered
[INFO] [stdout]    --> src/btree/disk_btree.rs:122:23
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 match node.insert(file, count, elm) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ pattern `Err(_)` not covered
[INFO] [stdout]     |
[INFO] [stdout] note: `Result<std::option::Option<Elm<'_, K, V>>, Box<dyn std::error::Error>>` defined here
[INFO] [stdout]    --> /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/core/src/result.rs:557:0
[INFO] [stdout]    ::: /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/core/src/result.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout]     = note: not covered
[INFO] [stdout]     = note: the matched value is of type `Result<std::option::Option<Elm<'_, K, V>>, Box<dyn std::error::Error>>`
[INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
[INFO] [stdout]     |
[INFO] [stdout] 140 ~                     },
[INFO] [stdout] 141 +                     Err(_) => todo!()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/key_value.rs:19:29
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> KeyValuePair<'d, K, V> {
[INFO] [stdout]    |                          - found this type parameter
[INFO] [stdout] 18 |     pub fn new(key: K, value: V) -> Self {
[INFO] [stdout] 19 |         KeyValuePair { key, value }
[INFO] [stdout]    |                             ^^^^^ expected `&V`, found type parameter `V`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected reference `&_`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 19 |         KeyValuePair { key, value: &value }
[INFO] [stdout]    |                             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/btree/disk_btree.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mut left = Node::<'d, K, V>::new(file, NodeID(*count), self.width, left_elms)?;
[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] error[E0597]: `buff` does not live long enough
[INFO] [stdout]    --> src/btree/disk_btree.rs:184:27
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Node<'d, K, V> {
[INFO] [stdout]     |       -- lifetime `'d` defined here
[INFO] [stdout] ...
[INFO] [stdout] 181 |         let mut buff = vec![0; BLOCK_SIZE];
[INFO] [stdout]     |             -------- binding `buff` declared here
[INFO] [stdout] ...
[INFO] [stdout] 184 |         match deserialize(&buff) {
[INFO] [stdout]     |               ------------^^^^^-
[INFO] [stdout]     |               |           |
[INFO] [stdout]     |               |           borrowed value does not live long enough
[INFO] [stdout]     |               argument requires that `buff` is borrowed for `'d`
[INFO] [stdout] ...
[INFO] [stdout] 188 |     }
[INFO] [stdout]     |     - `buff` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: requirement that the value outlives `'d` introduced here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-1.1.2/src/lib.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 |     T: serde::de::Deserialize<'a>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0005]: refutable pattern in local binding
[INFO] [stdout]    --> src/btree/disk_btree.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let Some(e) = self.elms.last();
[INFO] [stdout]     |             ^^^^^^^ pattern `None` not covered
[INFO] [stdout]     |
[INFO] [stdout]     = note: `let` bindings require an "irrefutable pattern", like a `struct` or an `enum` with only one variant
[INFO] [stdout]     = note: for more information, visit https://doc.rust-lang.org/book/ch19-02-refutability.html
[INFO] [stdout]     = note: the matched value is of type `std::option::Option<&Elm<'_, K, V>>`
[INFO] [stdout] help: you might want to use `let...else` to handle the variant that isn't matched
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let Some(e) = self.elms.last() else { todo!() };
[INFO] [stdout]     |                                        ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout] 88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]    |                    ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Node::<impl Deserialize<'de> for Node<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]   --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:91:11
[INFO] [stdout]      |
[INFO] [stdout]   91 |     elms: Vec<Elm<'d, K, V>>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]     --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]      |
[INFO] [stdout]   87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]      |                     ^^^^^^^^^^^
[INFO] [stdout]   88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `Elm<'d, K, V>` to implement `Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:210:8
[INFO] [stdout]      |
[INFO] [stdout]  209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]      |                     ----------- type parameter would need to implement `Deserialize<'_>`
[INFO] [stdout]  210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = help: consider manually implementing `Deserialize<'_>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]      = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]      = note: 1 redundant requirement hidden
[INFO] [stdout]      = note: required for `Vec<Elm<'d, K, V>>` to implement `Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout]      = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:91:11
[INFO] [stdout]      |
[INFO] [stdout]   91 |     elms: Vec<Elm<'d, K, V>>,
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]     --> src/btree/disk_btree.rs:87:21
[INFO] [stdout]      |
[INFO] [stdout]   87 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]      |                     ^^^^^^^^^^^
[INFO] [stdout]   88 | struct Node<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |                    ^^^^^^^^^^^
[INFO] [stdout] note: required for `Elm<'d, K, V>` to implement `Deserialize<'_>`
[INFO] [stdout]     --> src/btree/disk_btree.rs:210:8
[INFO] [stdout]      |
[INFO] [stdout]  209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]      |                     ----------- type parameter would need to implement `Deserialize<'_>`
[INFO] [stdout]  210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = help: consider manually implementing `Deserialize<'_>` to avoid undesired bounds caused by "imperfect derives"
[INFO] [stdout]      = note: to learn more, visit <https://github.com/rust-lang/rust/issues/26925>
[INFO] [stdout]      = note: 1 redundant requirement hidden
[INFO] [stdout]      = note: required for `Vec<Elm<'d, K, V>>` to implement `Deserialize<'_>`
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout]      = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed: cannot satisfy `K: Deserialize<'_>`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s or `where` clauses satisfying `K: Deserialize<'_>` found
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout] 210 | struct Elm<'d, K: KeyType<'d>, V: ValueType<'d>> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `_IMPL_DESERIALIZE_FOR_Elm::<impl Deserialize<'de> for Elm<'d, K, V>>::deserialize::__Visitor`
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ required by this bound in `__Visitor`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:211:10
[INFO] [stdout]      |
[INFO] [stdout]  211 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  211 -     key: &'d K,
[INFO] [stdout]  211 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:212:12
[INFO] [stdout]      |
[INFO] [stdout]  212 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_element`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1699:12
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     fn next_element<T>(&mut self) -> Result<Option<T>, Self::Error>
[INFO] [stdout]      |        ------------ required by a bound in this associated function
[INFO] [stdout] 1698 |     where
[INFO] [stdout] 1699 |         T: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `SeqAccess::next_element`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  212 -     value: &'d V,
[INFO] [stdout]  212 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chicchaidb` (bin "chicchaidb" test) due to 37 previous errors; 37 warnings emitted
[INFO] [stdout] error[E0277]: the trait bound `&'d K: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:211:10
[INFO] [stdout]      |
[INFO] [stdout]  211 |     key: &'d K,
[INFO] [stdout]      |          ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d K`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  211 -     key: &'d K,
[INFO] [stdout]  211 +     key: K,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0277]: the trait bound `&'d V: Deserialize<'_>` is not satisfied
[INFO] [stdout]     --> src/btree/disk_btree.rs:212:12
[INFO] [stdout]      |
[INFO] [stdout]  212 |     value: &'d V,
[INFO] [stdout]      |            ^^^^^ the trait `Deserialize<'_>` is not implemented for `&'d V`
[INFO] [stdout]      |
[INFO] [stdout] note: required by a bound in `next_value`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/de/mod.rs:1838:12
[INFO] [stdout]      |
[INFO] [stdout] 1836 |     fn next_value<V>(&mut self) -> Result<V, Self::Error>
[INFO] [stdout]      |        ---------- required by a bound in this associated function
[INFO] [stdout] 1837 |     where
[INFO] [stdout] 1838 |         V: Deserialize<'de>,
[INFO] [stdout]      |            ^^^^^^^^^^^^^^^^ required by this bound in `MapAccess::next_value`
[INFO] [stdout] help: consider removing the leading `&`-reference
[INFO] [stdout]      |
[INFO] [stdout]  212 -     value: &'d V,
[INFO] [stdout]  212 +     value: V,
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&K: Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&K`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  18 | where
[INFO] [stdout]  19 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `&V: Deserialize<'_>` is not satisfied
[INFO] [stdout]    --> src/btree/disk_btree.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 | #[derive(Serialize, Deserialize, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^ the trait `Deserialize<'_>` is not implemented for `&V`
[INFO] [stdout]     |
[INFO] [stdout] note: required by a bound in `key_value::serde::private::de::missing_field`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.88/src/private/de.rs:19:8
[INFO] [stdout]     |
[INFO] [stdout]  17 | pub fn missing_field<'de, V, E>(field: &'static str) -> Result<V, E>
[INFO] [stdout]     |        ------------- required by a bound in this function
[INFO] [stdout]  18 | where
[INFO] [stdout]  19 |     V: Deserialize<'de>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^ required by this bound in `missing_field`
[INFO] [stdout]     = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/btree/disk_btree.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Elm<'d, K, V> {
[INFO] [stdout]     |           - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 220 |             key,
[INFO] [stdout]     |             ^^^ expected `&K`, found type parameter `K`
[INFO] [stdout]     |
[INFO] [stdout]     = note:   expected reference `&_`
[INFO] [stdout]             found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 220 |             key: &key,
[INFO] [stdout]     |             ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/btree/disk_btree.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 217 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Elm<'d, K, V> {
[INFO] [stdout]     |                           - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 221 |             value,
[INFO] [stdout]     |             ^^^^^ expected `&V`, found type parameter `V`
[INFO] [stdout]     |
[INFO] [stdout]     = note:   expected reference `&_`
[INFO] [stdout]             found type parameter `_`
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]     |
[INFO] [stdout] 221 |             value: &value,
[INFO] [stdout]     |             ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0004, E0005, E0277, E0283, E0308, E0596, E0597.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0004`.
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/mem_btree.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |          - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 14 |             map: BTreeMap::<K, V>::new(),
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^ expected `BTreeMap<&K, &V>`, found `BTreeMap<K, V>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `BTreeMap<&_, &_>`
[INFO] [stdout]               found struct `BTreeMap<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this method are incorrect
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |          -               - found this type parameter
[INFO] [stdout]    |          |
[INFO] [stdout]    |          found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: expected `&K`, found type parameter `K`
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                         ^^^
[INFO] [stdout]    = note:   expected reference `&'d _`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] note: expected `&V`, found type parameter `V`
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:30
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout]    = note:   expected reference `&'d _`
[INFO] [stdout]            found type parameter `_`
[INFO] [stdout] help: the return type of this call is `V` due to the type of the argument passed
[INFO] [stdout]   --> src/btree/mem_btree.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, value);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^-----^
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              this argument influences the return type of `insert`
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/alloc/src/collections/btree/map.rs:1045:11
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(&key, value);
[INFO] [stdout]    |                         +
[INFO] [stdout] help: consider borrowing here
[INFO] [stdout]    |
[INFO] [stdout] 21 |         self.map.insert(key, &value);
[INFO] [stdout]    |                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/btree/mem_btree.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<'d, K: KeyType<'d>, V: ValueType<'d>> MemBtree<'d, K, V> {
[INFO] [stdout]    |                          - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn get(&self, key: K) -> Option<&V> {
[INFO] [stdout]    |                                  ---------- expected `std::option::Option<&V>` because of return type
[INFO] [stdout] 25 |         self.map.get(&key)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ expected `Option<&V>`, found `Option<&&V>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<&_>`
[INFO] [stdout]               found enum `Option<&&_>`
[INFO] [stdout] help: try using `.map(|v| &**v)` to convert `std::option::Option<&&V>` to `std::option::Option<&V>`
[INFO] [stdout]    |
[INFO] [stdout] 25 |         self.map.get(&key).map(|v| &**v)
[INFO] [stdout]    |                           ++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 |             println!("err {}", e.description());
[INFO] [stdout]    |                                  ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/main.rs:18:30
[INFO] [stdout]    |
[INFO] [stdout] 18 |         println!("err {}", e.description());
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0596]: cannot borrow `elms` as mutable, as it is not declared as mutable
[INFO] [stdout]   --> src/btree/disk_btree.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 elms.push(e);
[INFO] [stdout]    |                 ^^^^ cannot borrow as mutable
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing this to be mutable
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 let mut elms = Vec::<Elm<'d, K, V>>::new();
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0004]: non-exhaustive patterns: `Err(_)` not covered
[INFO] [stdout]    --> src/btree/disk_btree.rs:122:23
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 match node.insert(file, count, elm) {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ pattern `Err(_)` not covered
[INFO] [stdout]     |
[INFO] [stdout] note: `Result<std::option::Option<Elm<'_, K, V>>, Box<dyn std::error::Error>>` defined here
[INFO] [stdout]    --> /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/core/src/result.rs:557:0
[INFO] [stdout]    ::: /rustc/dfbea5bc945a9d7ff017d3d4bfbd1af9295fe5b8/library/core/src/result.rs:566:4
[INFO] [stdout]     |
[INFO] [stdout]     = note: not covered
[INFO] [stdout]     = note: the matched value is of type `Result<std::option::Option<Elm<'_, K, V>>, Box<dyn std::error::Error>>`
[INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
[INFO] [stdout]     |
[INFO] [stdout] 140 ~                     },
[INFO] [stdout] 141 +                     Err(_) => todo!()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/btree/disk_btree.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mut left = Node::<'d, K, V>::new(file, NodeID(*count), self.width, left_elms)?;
[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] error[E0597]: `buff` does not live long enough
[INFO] [stdout]    --> src/btree/disk_btree.rs:184:27
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl <'d, K: KeyType<'d>, V: ValueType<'d>> Node<'d, K, V> {
[INFO] [stdout]     |       -- lifetime `'d` defined here
[INFO] [stdout] ...
[INFO] [stdout] 181 |         let mut buff = vec![0; BLOCK_SIZE];
[INFO] [stdout]     |             -------- binding `buff` declared here
[INFO] [stdout] ...
[INFO] [stdout] 184 |         match deserialize(&buff) {
[INFO] [stdout]     |               ------------^^^^^-
[INFO] [stdout]     |               |           |
[INFO] [stdout]     |               |           borrowed value does not live long enough
[INFO] [stdout]     |               argument requires that `buff` is borrowed for `'d`
[INFO] [stdout] ...
[INFO] [stdout] 188 |     }
[INFO] [stdout]     |     - `buff` dropped here while still borrowed
[INFO] [stdout]     |
[INFO] [stdout] note: requirement that the value outlives `'d` introduced here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-1.1.2/src/lib.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 142 |     T: serde::de::Deserialize<'a>,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0005]: refutable pattern in local binding
[INFO] [stdout]    --> src/btree/disk_btree.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let Some(e) = self.elms.last();
[INFO] [stdout]     |             ^^^^^^^ pattern `None` not covered
[INFO] [stdout]     |
[INFO] [stdout]     = note: `let` bindings require an "irrefutable pattern", like a `struct` or an `enum` with only one variant
[INFO] [stdout]     = note: for more information, visit https://doc.rust-lang.org/book/ch19-02-refutability.html
[INFO] [stdout]     = note: the matched value is of type `std::option::Option<&Elm<'_, K, V>>`
[INFO] [stdout] help: you might want to use `let...else` to handle the variant that isn't matched
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let Some(e) = self.elms.last() else { todo!() };
[INFO] [stdout]     |                                        ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0004, E0005, E0277, E0283, E0308, E0596, E0597.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0004`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chicchaidb` (bin "chicchaidb") due to 37 previous errors; 37 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663", kill_on_drop: false }`
[INFO] [stdout] 66ee7818b6d8cbd679969bb5a04ce951207e0242214aeca57e0cf0d2ec823663
