[INFO] fetching crate kotoba-bench 0.1.16...
[INFO] testing kotoba-bench-0.1.16 against 1.90.0 for beta-1.91-3
[INFO] extracting crate kotoba-bench 0.1.16 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate kotoba-bench 0.1.16
[INFO] finished tweaking crates.io crate kotoba-bench 0.1.16
[INFO] tweaked toml for crates.io crate kotoba-bench 0.1.16 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate kotoba-bench 0.1.16 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate kotoba-bench 0.1.16 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tempfile v3.22.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.102
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.102
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.102
[INFO] [stderr]   Downloaded plotters-bitmap v0.3.7
[INFO] [stderr]   Downloaded kotoba-cid v0.1.16
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.102
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.102
[INFO] [stderr]   Downloaded kotoba-errors v0.1.1
[INFO] [stderr]   Downloaded yeslogic-fontconfig-sys v6.0.0
[INFO] [stderr]   Downloaded iso8601 v0.6.3
[INFO] [stderr]   Downloaded js-sys v0.3.79
[INFO] [stderr]   Downloaded bytecount v0.6.9
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.52
[INFO] [stderr]   Downloaded redox_users v0.5.2
[INFO] [stderr]   Downloaded pathfinder_geometry v0.5.1
[INFO] [stderr]   Downloaded kotoba-db-core v0.1.16
[INFO] [stderr]   Downloaded kotoba-db v0.1.16
[INFO] [stderr]   Downloaded core-text v20.1.0
[INFO] [stderr]   Downloaded pathfinder_simd v0.5.5
[INFO] [stderr]   Downloaded num-cmp v0.1.0
[INFO] [stderr]   Downloaded kotoba-db-engine-memory v0.1.16
[INFO] [stderr]   Downloaded kotoba-db-engine-lsm v0.1.16
[INFO] [stderr]   Downloaded wio v0.2.2
[INFO] [stderr]   Downloaded kotoba-core v0.1.19
[INFO] [stderr]   Downloaded dwrote v0.11.4
[INFO] [stderr]   Downloaded weezl v0.1.10
[INFO] [stderr]   Downloaded clap v4.5.47
[INFO] [stderr]   Downloaded fraction v0.13.1
[INFO] [stderr]   Downloaded font-kit v0.14.3
[INFO] [stderr]   Downloaded cc v1.2.37
[INFO] [stderr]   Downloaded indexmap v2.11.3
[INFO] [stderr]   Downloaded fancy-regex v0.11.0
[INFO] [stderr]   Downloaded jsonschema v0.17.1
[INFO] [stderr]   Downloaded sysinfo v0.30.13
[INFO] [stderr]   Downloaded time v0.3.43
[INFO] [stderr]   Downloaded clap_builder v4.5.47
[INFO] [stderr]   Downloaded regex v1.11.2
[INFO] [stderr]   Downloaded ttf-parser v0.20.0
[INFO] [stderr]   Downloaded gif v0.12.0
[INFO] [stderr]   Downloaded regex-automata v0.4.10
[INFO] [stderr]   Downloaded web-sys v0.3.79
[INFO] [stderr]   Downloaded jpeg-decoder v0.3.2
[INFO] [stderr]   Downloaded freetype-sys v0.20.1
[INFO] [stderr]   Downloaded image v0.24.9
[INFO] [stderr]   Downloaded windows v0.52.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 98e9d06f1b60f8b728930ddea5025fea1264524c72fc5c24ab015ddd0a6c9934
[INFO] running `Command { std: "docker" "start" "-a" "98e9d06f1b60f8b728930ddea5025fea1264524c72fc5c24ab015ddd0a6c9934", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "98e9d06f1b60f8b728930ddea5025fea1264524c72fc5c24ab015ddd0a6c9934", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "98e9d06f1b60f8b728930ddea5025fea1264524c72fc5c24ab015ddd0a6c9934", kill_on_drop: false }`
[INFO] [stdout] 98e9d06f1b60f8b728930ddea5025fea1264524c72fc5c24ab015ddd0a6c9934
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ab27af4fe4a775368ecaa1045a9d8ac6f782d3ab79ef80c5cde4a9ad1ad51617
[INFO] running `Command { std: "docker" "start" "-a" "ab27af4fe4a775368ecaa1045a9d8ac6f782d3ab79ef80c5cde4a9ad1ad51617", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling serde_core v1.0.225
[INFO] [stderr]    Compiling serde v1.0.225
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling anstyle v1.0.11
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling anstyle-query v1.1.4
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]    Compiling cc v1.2.37
[INFO] [stderr]    Compiling deranged v0.5.3
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling sync_wrapper v0.1.2
[INFO] [stderr]    Compiling num-cmp v0.1.0
[INFO] [stderr]    Compiling clap_builder v4.5.47
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling bytecount v0.6.9
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling indexmap v2.11.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling nom v8.0.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling tempfile v3.22.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling time v0.3.43
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling fraction v0.13.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling sysinfo v0.30.13
[INFO] [stderr]    Compiling hdrhistogram v7.5.4
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling iso8601 v0.6.3
[INFO] [stderr]    Compiling fancy-regex v0.11.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.225
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling kotoba-errors v0.1.1
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling clap v4.5.47
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.3
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling jsonschema v0.17.1
[INFO] [stderr]    Compiling kotoba-core v0.1.19
[INFO] [stderr]    Compiling kotoba-cid v0.1.16
[INFO] [stderr]    Compiling kotoba-db-core v0.1.16
[INFO] [stderr]    Compiling kotoba-db-engine-memory v0.1.16
[INFO] [stderr]    Compiling kotoba-db-engine-lsm v0.1.16
[INFO] [stderr]    Compiling kotoba-db v0.1.16
[INFO] [stderr]    Compiling kotoba-bench v0.1.16 (/opt/rustwide/workdir)
[INFO] [stdout] error: 13 positional arguments in format string, but there are 10 arguments
[INFO] [stdout]    --> src/reporter.rs:423:44
[INFO] [stdout]     |
[INFO] [stdout] 423 |         <p class="timestamp">Generated on: {}</p>
[INFO] [stdout]     |                                            ^^
[INFO] [stdout] 424 |
[INFO] [stdout] 425 |         {}
[INFO] [stdout]     |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 429 |                 <div class="value">{:.0}</div>
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 433 |                 <div class="value">{:.1}</div>
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 438 |                 <div class="value">{:.2}%</div>
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 442 |                 <div class="value">{}</div>
[INFO] [stdout]     |                                    ^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |         const benchmarkNames = {};
[INFO] [stdout]     |                                ^^
[INFO] [stdout] 461 |         const throughputData = {};
[INFO] [stdout]     |                                ^^
[INFO] [stdout] 462 |         const latencyData = {};
[INFO] [stdout]     |                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 472 |                     labels: {},
[INFO] [stdout]     |                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 475 |                         data: {},
[INFO] [stdout]     |                               ^^
[INFO] [stdout] ...
[INFO] [stdout] 495 |                     labels: {},
[INFO] [stdout]     |                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 498 |                         data: {},
[INFO] [stdout]     |                               ^^
[INFO] [stdout] ...
[INFO] [stdout] 514 |             chrono::Utc::now().format("%Y-%m-%d %H:%M:%S UTC"),
[INFO] [stdout]     |             --------------------------------------------------
[INFO] [stdout] 515 |             self.generate_html_benchmark_cards(results),
[INFO] [stdout]     |             -------------------------------------------
[INFO] [stdout] 516 |             results.iter().map(|r| r.operations_per_second).sum::<f64>() / results.len() as f64,
[INFO] [stdout]     |             -----------------------------------------------------------------------------------
[INFO] [stdout] 517 |             results.iter().map(|r| r.latency_percentiles.p95 as f64 / 1000.0).sum::<f64>() / results.len() as f64,
[INFO] [stdout]     |             -----------------------------------------------------------------------------------------------------
[INFO] [stdout] 518 |             results.iter().map(|r| r.error_rate * 100.0).sum::<f64>() / results.len() as f64,
[INFO] [stdout]     |             --------------------------------------------------------------------------------
[INFO] [stdout] 519 |             results.len(),
[INFO] [stdout]     |             -------------
[INFO] [stdout] 520 |             serde_json::to_string(&results.iter().map(|r| r.name.clone()).collect::<Vec<_>>()).unwrap(),
[INFO] [stdout]     |             -------------------------------------------------------------------------------------------
[INFO] [stdout] 521 |             serde_json::to_string(&results.iter().map(|r| r.operations_per_second).collect::<Vec<_>>()).unwrap(),
[INFO] [stdout]     |             ----------------------------------------------------------------------------------------------------
[INFO] [stdout] 522 |             serde_json::to_string(&results.iter().map(|r| r.name.clone()).collect::<Vec<_>>()).unwrap(),
[INFO] [stdout]     |             -------------------------------------------------------------------------------------------
[INFO] [stdout] 523 |             serde_json::to_string(&results.iter().map(|r| r.latency_percentiles.p95).collect::<Vec<_>>()).unwrap(),
[INFO] [stdout]     |             ------------------------------------------------------------------------------------------------------
[INFO] [stdout]     |
[INFO] [stdout]     = note: for information about formatting flags, visit https://doc.rust-lang.org/std/fmt/index.html
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `sysinfo::ProcessExt`, `sysinfo::SystemExt`
[INFO] [stdout]   --> src/runner.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout]    |               ^^^^^^^^^^          ^^^^^^^^^ no `SystemExt` in the root
[INFO] [stdout]    |               |
[INFO] [stdout]    |               no `ProcessExt` in the root
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 17 - use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout] 17 + use sysinfo::{Process, System, SystemExt};
[INFO] [stdout]    |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]    |
[INFO] [stdout] 17 - use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout] 17 + use sysinfo::{ProcessExt, System, System};
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `statrs`
[INFO] [stdout]   --> src/analyzer.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use statrs::statistics::{Statistics, OrderStatistics};
[INFO] [stdout]    |     ^^^^^^ use of unresolved module or unlinked crate `statrs`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `statrs`, use `cargo add statrs` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `sysinfo::ProcessExt`, `sysinfo::SystemExt`
[INFO] [stdout]  --> src/metrics.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout]   |               ^^^^^^^^^^          ^^^^^^^^^ no `SystemExt` in the root
[INFO] [stdout]   |               |
[INFO] [stdout]   |               no `ProcessExt` in the root
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 9 - use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout] 9 + use sysinfo::{Process, System, SystemExt};
[INFO] [stdout]   |
[INFO] [stdout] help: a similar name exists in the module
[INFO] [stdout]   |
[INFO] [stdout] 9 - use sysinfo::{ProcessExt, System, SystemExt};
[INFO] [stdout] 9 + use sysinfo::{ProcessExt, System, System};
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `crate::Operation`
[INFO] [stdout]  --> src/generator.rs:9:30
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{BenchmarkConfig, Operation};
[INFO] [stdout]   |                              ^^^^^^^^^
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              no `Operation` in the root
[INFO] [stdout]   |                              help: a similar name exists in the module: `Duration`
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this enum instead:
[INFO] [stdout]           kotoba_db::Operation
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `crate::AnalysisReport`, `crate::PerformanceSummary`
[INFO] [stdout]  --> src/reporter.rs:9:30
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{BenchmarkResult, AnalysisReport, PerformanceSummary};
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^ no `PerformanceSummary` in the root
[INFO] [stdout]   |                              |
[INFO] [stdout]   |                              no `AnalysisReport` in the root
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           crate::analyzer::AnalysisReport
[INFO] [stdout]   = help: consider importing this struct instead:
[INFO] [stdout]           crate::analyzer::PerformanceSummary
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `csv`
[INFO] [stdout]    --> src/reporter.rs:278:30
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let mut csv_writer = csv::Writer::from_path(&csv_path)?;
[INFO] [stdout]     |                              ^^^ use of unresolved module or unlinked crate `csv`
[INFO] [stdout]     |
[INFO] [stdout]     = help: if you wanted to use a crate named `csv`, use `cargo add csv` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]   --> src/generator.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 |         rng: Mutex<ThreadRng>,
[INFO] [stdout]    |              ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use std::sync::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use futures::lock::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use tokio::sync::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]   --> src/generator.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |                 rng: Mutex::new(thread_rng()),
[INFO] [stdout]    |                      ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use std::sync::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use futures::lock::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 52 +     use tokio::sync::Mutex;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]    --> src/generator.rs:104:14
[INFO] [stdout]     |
[INFO] [stdout] 104 |         rng: Mutex<ThreadRng>,
[INFO] [stdout]     |              ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]    --> src/generator.rs:112:22
[INFO] [stdout]     |
[INFO] [stdout] 112 |                 rng: Mutex::new(thread_rng()),
[INFO] [stdout]     |                      ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]    --> src/generator.rs:183:14
[INFO] [stdout]     |
[INFO] [stdout] 183 |         rng: Mutex<ThreadRng>,
[INFO] [stdout]     |              ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]    --> src/generator.rs:191:22
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 rng: Mutex::new(thread_rng()),
[INFO] [stdout]     |                      ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout]  52 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]    --> src/generator.rs:335:14
[INFO] [stdout]     |
[INFO] [stdout] 335 |         rng: Mutex<ThreadRng>,
[INFO] [stdout]     |              ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]    --> src/generator.rs:351:22
[INFO] [stdout]     |
[INFO] [stdout] 351 |                 rng: Mutex::new(thread_rng()),
[INFO] [stdout]     |                      ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]    --> src/generator.rs:409:21
[INFO] [stdout]     |
[INFO] [stdout] 409 |         last_spike: Mutex<Option<Instant>>,
[INFO] [stdout]     |                     ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Mutex` in this scope
[INFO] [stdout]    --> src/generator.rs:410:14
[INFO] [stdout]     |
[INFO] [stdout] 410 |         rng: Mutex<ThreadRng>,
[INFO] [stdout]     |              ^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]    --> src/generator.rs:427:29
[INFO] [stdout]     |
[INFO] [stdout] 427 |                 last_spike: Mutex::new(None),
[INFO] [stdout]     |                             ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Mutex`
[INFO] [stdout]    --> src/generator.rs:428:22
[INFO] [stdout]     |
[INFO] [stdout] 428 |                 rng: Mutex::new(thread_rng()),
[INFO] [stdout]     |                      ^^^^^ use of undeclared type `Mutex`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these structs
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use std::sync::nonpoison::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use futures::lock::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 263 +     use tokio::sync::Mutex;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Severity` in the crate root
[INFO] [stdout]    --> src/reporter.rs:151:28
[INFO] [stdout]     |
[INFO] [stdout] 151 |                     crate::Severity::Critical => "Critical",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Severity` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Severity;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Severity`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 151 -                     crate::Severity::Critical => "Critical",
[INFO] [stdout] 151 +                     Severity::Critical => "Critical",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Severity` in the crate root
[INFO] [stdout]    --> src/reporter.rs:152:28
[INFO] [stdout]     |
[INFO] [stdout] 152 |                     crate::Severity::High => "High",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Severity` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Severity;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Severity`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 152 -                     crate::Severity::High => "High",
[INFO] [stdout] 152 +                     Severity::High => "High",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Severity` in the crate root
[INFO] [stdout]    --> src/reporter.rs:153:28
[INFO] [stdout]     |
[INFO] [stdout] 153 |                     crate::Severity::Medium => "Medium",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Severity` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Severity;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Severity`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 153 -                     crate::Severity::Medium => "Medium",
[INFO] [stdout] 153 +                     Severity::Medium => "Medium",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Severity` in the crate root
[INFO] [stdout]    --> src/reporter.rs:154:28
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     crate::Severity::Low => "Low",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Severity` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Severity;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Severity`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 154 -                     crate::Severity::Low => "Low",
[INFO] [stdout] 154 +                     Severity::Low => "Low",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Priority` in the crate root
[INFO] [stdout]    --> src/reporter.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |                     crate::Priority::Critical => "Critical",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Priority` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Priority;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Priority`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 165 -                     crate::Priority::Critical => "Critical",
[INFO] [stdout] 165 +                     Priority::Critical => "Critical",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Priority` in the crate root
[INFO] [stdout]    --> src/reporter.rs:166:28
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     crate::Priority::High => "High",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Priority` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Priority;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Priority`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 166 -                     crate::Priority::High => "High",
[INFO] [stdout] 166 +                     Priority::High => "High",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Priority` in the crate root
[INFO] [stdout]    --> src/reporter.rs:167:28
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     crate::Priority::Medium => "Medium",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Priority` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Priority;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Priority`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 167 -                     crate::Priority::Medium => "Medium",
[INFO] [stdout] 167 +                     Priority::Medium => "Medium",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Priority` in the crate root
[INFO] [stdout]    --> src/reporter.rs:168:28
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     crate::Priority::Low => "Low",
[INFO] [stdout]     |                            ^^^^^^^^ could not find `Priority` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   9 + use crate::analyzer::Priority;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Priority`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 168 -                     crate::Priority::Low => "Low",
[INFO] [stdout] 168 +                     Priority::Low => "Low",
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Operation` in the crate root
[INFO] [stdout]   --> src/workloads.rs:52:66
[INFO] [stdout]    |
[INFO] [stdout] 52 |     fn generate_operation(&self, operation_count: u64) -> crate::Operation {
[INFO] [stdout]    |                                                                  ^^^^^^^^^
[INFO] [stdout]   --> /rustc/1159e78c4747b02ef996e55082b704c09b970588/library/core/src/time.rs:81:1
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `Duration` defined here
[INFO] [stdout]    |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 52 -     fn generate_operation(&self, operation_count: u64) -> crate::Operation {
[INFO] [stdout] 52 +     fn generate_operation(&self, operation_count: u64) -> crate::Duration {
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  5 + use kotoba_db::Operation;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 52 -     fn generate_operation(&self, operation_count: u64) -> crate::Operation {
[INFO] [stdout] 52 +     fn generate_operation(&self, operation_count: u64) -> Operation {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]   --> src/workloads.rs:64:20
[INFO] [stdout]    |
[INFO] [stdout] 64 |             crate::Operation::Insert { key: key.into_bytes(), value }
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]    |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 64 -             crate::Operation::Insert { key: key.into_bytes(), value }
[INFO] [stdout] 64 +             crate::Duration::Insert { key: key.into_bytes(), value }
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  5 + use kotoba_db::Operation;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 64 -             crate::Operation::Insert { key: key.into_bytes(), value }
[INFO] [stdout] 64 +             Operation::Insert { key: key.into_bytes(), value }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]   --> src/workloads.rs:68:20
[INFO] [stdout]    |
[INFO] [stdout] 68 |             crate::Operation::Read { key: key.into_bytes() }
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]    |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 68 -             crate::Operation::Read { key: key.into_bytes() }
[INFO] [stdout] 68 +             crate::Duration::Read { key: key.into_bytes() }
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  5 + use kotoba_db::Operation;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 68 -             crate::Operation::Read { key: key.into_bytes() }
[INFO] [stdout] 68 +             Operation::Read { key: key.into_bytes() }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]   --> src/workloads.rs:73:20
[INFO] [stdout]    |
[INFO] [stdout] 73 |             crate::Operation::Update { key: key.into_bytes(), value }
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]    |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 73 -             crate::Operation::Update { key: key.into_bytes(), value }
[INFO] [stdout] 73 +             crate::Duration::Update { key: key.into_bytes(), value }
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  5 + use kotoba_db::Operation;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 73 -             crate::Operation::Update { key: key.into_bytes(), value }
[INFO] [stdout] 73 +             Operation::Update { key: key.into_bytes(), value }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]   --> src/workloads.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |             crate::Operation::Delete { key: key.into_bytes() }
[INFO] [stdout]    |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]    |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 77 -             crate::Operation::Delete { key: key.into_bytes() }
[INFO] [stdout] 77 +             crate::Duration::Delete { key: key.into_bytes() }
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  5 + use kotoba_db::Operation;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 77 -             crate::Operation::Delete { key: key.into_bytes() }
[INFO] [stdout] 77 +             Operation::Delete { key: key.into_bytes() }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `BenchmarkExt` in the crate root
[INFO] [stdout]    --> src/workloads.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl crate::BenchmarkExt for CrudBenchmark {
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub trait Benchmark {
[INFO] [stdout]     | ------------------- similarly named trait `Benchmark` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 119 - impl crate::BenchmarkExt for CrudBenchmark {
[INFO] [stdout] 119 + impl crate::Benchmark for CrudBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout]   5 + use crate::runner::BenchmarkExt;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `BenchmarkExt`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 119 - impl crate::BenchmarkExt for CrudBenchmark {
[INFO] [stdout] 119 + impl BenchmarkExt for CrudBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]    --> src/workloads.rs:124:20
[INFO] [stdout]     |
[INFO] [stdout] 124 |             crate::Operation::Insert { key, value } => {
[INFO] [stdout]     |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 124 -             crate::Operation::Insert { key, value } => {
[INFO] [stdout] 124 +             crate::Duration::Insert { key, value } => {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   5 + use kotoba_db::Operation;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 124 -             crate::Operation::Insert { key, value } => {
[INFO] [stdout] 124 +             Operation::Insert { key, value } => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]    --> src/workloads.rs:134:20
[INFO] [stdout]     |
[INFO] [stdout] 134 |             crate::Operation::Read { key } => {
[INFO] [stdout]     |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 134 -             crate::Operation::Read { key } => {
[INFO] [stdout] 134 +             crate::Duration::Read { key } => {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   5 + use kotoba_db::Operation;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 134 -             crate::Operation::Read { key } => {
[INFO] [stdout] 134 +             Operation::Read { key } => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]    --> src/workloads.rs:141:20
[INFO] [stdout]     |
[INFO] [stdout] 141 |             crate::Operation::Update { key, value } => {
[INFO] [stdout]     |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 141 -             crate::Operation::Update { key, value } => {
[INFO] [stdout] 141 +             crate::Duration::Update { key, value } => {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   5 + use kotoba_db::Operation;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 141 -             crate::Operation::Update { key, value } => {
[INFO] [stdout] 141 +             Operation::Update { key, value } => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Operation` in the crate root
[INFO] [stdout]    --> src/workloads.rs:153:20
[INFO] [stdout]     |
[INFO] [stdout] 153 |             crate::Operation::Delete { key } => {
[INFO] [stdout]     |                    ^^^^^^^^^ could not find `Operation` in the crate root
[INFO] [stdout]     |
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 153 -             crate::Operation::Delete { key } => {
[INFO] [stdout] 153 +             crate::Duration::Delete { key } => {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]     |
[INFO] [stdout]   5 + use kotoba_db::Operation;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `Operation`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 153 -             crate::Operation::Delete { key } => {
[INFO] [stdout] 153 +             Operation::Delete { key } => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `BenchmarkExt` in the crate root
[INFO] [stdout]    --> src/workloads.rs:223:13
[INFO] [stdout]     |
[INFO] [stdout] 223 | impl crate::BenchmarkExt for QueryBenchmark {
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub trait Benchmark {
[INFO] [stdout]     | ------------------- similarly named trait `Benchmark` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 223 - impl crate::BenchmarkExt for QueryBenchmark {
[INFO] [stdout] 223 + impl crate::Benchmark for QueryBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout]   5 + use crate::runner::BenchmarkExt;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `BenchmarkExt`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 223 - impl crate::BenchmarkExt for QueryBenchmark {
[INFO] [stdout] 223 + impl BenchmarkExt for QueryBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `BenchmarkExt` in the crate root
[INFO] [stdout]    --> src/workloads.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 | impl crate::BenchmarkExt for TransactionBenchmark {
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub trait Benchmark {
[INFO] [stdout]     | ------------------- similarly named trait `Benchmark` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 316 - impl crate::BenchmarkExt for TransactionBenchmark {
[INFO] [stdout] 316 + impl crate::Benchmark for TransactionBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout]   5 + use crate::runner::BenchmarkExt;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `BenchmarkExt`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 316 - impl crate::BenchmarkExt for TransactionBenchmark {
[INFO] [stdout] 316 + impl BenchmarkExt for TransactionBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `BenchmarkExt` in the crate root
[INFO] [stdout]    --> src/workloads.rs:412:13
[INFO] [stdout]     |
[INFO] [stdout] 412 | impl crate::BenchmarkExt for MemoryBenchmark {
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub trait Benchmark {
[INFO] [stdout]     | ------------------- similarly named trait `Benchmark` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 412 - impl crate::BenchmarkExt for MemoryBenchmark {
[INFO] [stdout] 412 + impl crate::Benchmark for MemoryBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout]   5 + use crate::runner::BenchmarkExt;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `BenchmarkExt`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 412 - impl crate::BenchmarkExt for MemoryBenchmark {
[INFO] [stdout] 412 + impl BenchmarkExt for MemoryBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0405]: cannot find trait `BenchmarkExt` in the crate root
[INFO] [stdout]    --> src/workloads.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 | impl crate::BenchmarkExt for StorageBenchmark {
[INFO] [stdout]     |             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/lib.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub trait Benchmark {
[INFO] [stdout]     | ------------------- similarly named trait `Benchmark` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: a trait with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 468 - impl crate::BenchmarkExt for StorageBenchmark {
[INFO] [stdout] 468 + impl crate::Benchmark for StorageBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]     |
[INFO] [stdout]   5 + use crate::runner::BenchmarkExt;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `BenchmarkExt`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 468 - impl crate::BenchmarkExt for StorageBenchmark {
[INFO] [stdout] 468 + impl BenchmarkExt for StorageBenchmark {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hdrhistogram::Histogram`
[INFO] [stdout]   --> src/runner.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use hdrhistogram::Histogram;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]   --> src/analyzer.rs:10:33
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::{HashMap, BTreeMap};
[INFO] [stdout]    |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BenchmarkConfig`
[INFO] [stdout]  --> src/generator.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{BenchmarkConfig, Operation};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/generator.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/reporter.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils`
[INFO] [stdout]  --> src/workloads.rs:5:58
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::{Benchmark, BenchmarkConfig, BenchmarkResult, utils};
[INFO] [stdout]   |                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/workloads.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `LatencyPercentiles` and `runner::BenchmarkRunner`
[INFO] [stdout]    --> src/workloads.rs:107:21
[INFO] [stdout]     |
[INFO] [stdout] 107 |         use crate::{runner::BenchmarkRunner, LatencyPercentiles};
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runner::BenchmarkRunner`
[INFO] [stdout]    --> src/workloads.rs:213:13
[INFO] [stdout]     |
[INFO] [stdout] 213 |         use crate::runner::BenchmarkRunner;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runner::BenchmarkRunner`
[INFO] [stdout]    --> src/workloads.rs:306:13
[INFO] [stdout]     |
[INFO] [stdout] 306 |         use crate::runner::BenchmarkRunner;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runner::BenchmarkRunner`
[INFO] [stdout]    --> src/workloads.rs:402:13
[INFO] [stdout]     |
[INFO] [stdout] 402 |         use crate::runner::BenchmarkRunner;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::runner::BenchmarkRunner`
[INFO] [stdout]    --> src/workloads.rs:458:13
[INFO] [stdout]     |
[INFO] [stdout] 458 |         use crate::runner::BenchmarkRunner;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Instant`
[INFO] [stdout]   --> src/lib.rs:18:27
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::{Duration, Instant};
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0405, E0412, E0432, E0433.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0405`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kotoba-bench` (lib) due to 41 previous errors; 13 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ab27af4fe4a775368ecaa1045a9d8ac6f782d3ab79ef80c5cde4a9ad1ad51617", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab27af4fe4a775368ecaa1045a9d8ac6f782d3ab79ef80c5cde4a9ad1ad51617", kill_on_drop: false }`
[INFO] [stdout] ab27af4fe4a775368ecaa1045a9d8ac6f782d3ab79ef80c5cde4a9ad1ad51617
