[INFO] cloning repository https://github.com/davidRoussov/document-to-json
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davidRoussov/document-to-json" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdavidRoussov%2Fdocument-to-json", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdavidRoussov%2Fdocument-to-json'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e34337233f82e85aa65b7ba57c7493fa4b06fa2d
[INFO] checking davidRoussov/document-to-json against master#46424fb5054f211ec836c5c03159f92e46bb35ac for pr-139042
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdavidRoussov%2Fdocument-to-json" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/davidRoussov/document-to-json on toolchain 46424fb5054f211ec836c5c03159f92e46bb35ac
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/davidRoussov/document-to-json
[INFO] finished tweaking git repo https://github.com/davidRoussov/document-to-json
[INFO] tweaked toml for git repo https://github.com/davidRoussov/document-to-json written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/davidRoussov/document-to-json 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" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pathetic v0.3.0
[INFO] [stderr]   Downloaded copy_dir v0.1.3
[INFO] [stderr]   Downloaded quick-js v0.4.1
[INFO] [stderr]   Downloaded webdriver v0.50.0
[INFO] [stderr]   Downloaded dot v0.1.4
[INFO] [stderr]   Downloaded fantoccini v0.21.4
[INFO] [stderr]   Downloaded libquickjs-sys v0.9.0
[INFO] [stderr]   Downloaded fern v0.7.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fec774352a7c614f059259c1546ebb222059b67c34a27cc6eec44065973fdc36
[INFO] running `Command { std: "docker" "start" "-a" "fec774352a7c614f059259c1546ebb222059b67c34a27cc6eec44065973fdc36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fec774352a7c614f059259c1546ebb222059b67c34a27cc6eec44065973fdc36", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fec774352a7c614f059259c1546ebb222059b67c34a27cc6eec44065973fdc36", kill_on_drop: false }`
[INFO] [stdout] fec774352a7c614f059259c1546ebb222059b67c34a27cc6eec44065973fdc36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+46424fb5054f211ec836c5c03159f92e46bb35ac" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 245146d284d0625bba5c9e4fa121c2e764cc0d315c2aaf4460da05f392b7c141
[INFO] running `Command { std: "docker" "start" "-a" "245146d284d0625bba5c9e4fa121c2e764cc0d315c2aaf4460da05f392b7c141", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking itoa v1.0.14
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking once_cell v1.20.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking bytes v1.9.0
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling cc v1.2.10
[INFO] [stderr]     Checking log v0.4.25
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking writeable v0.5.5
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking litemap v0.7.4
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]     Checking icu_locid_transform_data v1.5.0
[INFO] [stderr]    Compiling httparse v1.9.5
[INFO] [stderr]     Checking icu_properties_data v1.5.0
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling siphasher v1.0.1
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]     Checking write16 v1.0.0
[INFO] [stderr]     Checking equivalent v1.0.1
[INFO] [stderr]     Checking icu_normalizer_data v1.5.0
[INFO] [stderr]     Checking utf16_iter v1.0.5
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]    Compiling openssl v0.10.68
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking new_debug_unreachable v1.0.6
[INFO] [stderr]     Checking bitflags v2.8.0
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]     Checking http v1.2.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]     Checking powerfmt v0.2.0
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking socket2 v0.5.8
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking indexmap v2.7.1
[INFO] [stderr]     Checking openssl-probe v0.1.5
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling time-core v0.1.2
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]    Compiling time-macros v0.2.19
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling serde_json v1.0.137
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]    Compiling copy_dir v0.1.3
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking winnow v0.6.24
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]    Compiling openssl-sys v0.9.104
[INFO] [stderr]    Compiling libquickjs-sys v0.9.0
[INFO] [stderr]     Checking os_str_bytes v6.6.1
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking thread-id v3.3.0
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking strsim v0.10.0
[INFO] [stderr]     Checking textwrap v0.16.1
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]     Checking cpufeatures v0.2.16
[INFO] [stderr]     Checking xml-rs v0.8.25
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking sled v0.34.7
[INFO] [stderr]     Checking uuid v1.12.0
[INFO] [stderr]     Checking simple-logging v2.0.2
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking fern v0.7.1
[INFO] [stderr]     Checking dotenv v0.15.0
[INFO] [stderr]     Checking dot v0.1.4
[INFO] [stderr]     Checking time v0.3.37
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking xmltree v0.10.3
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling zerofrom-derive v0.1.5
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling html5ever v0.27.0
[INFO] [stderr]    Compiling async-trait v0.1.85
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tokio v1.43.0
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]     Checking zerofrom v0.1.5
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling string_cache_codegen v0.5.2
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling markup5ever v0.12.1
[INFO] [stderr]     Checking http-body-util v0.1.2
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tokio-util v0.7.13
[INFO] [stderr]     Checking hyper v1.5.2
[INFO] [stderr]     Checking string_cache v0.8.7
[INFO] [stderr]     Checking serde_spanned v0.6.8
[INFO] [stderr]     Checking toml_datetime v0.6.8
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking toml_edit v0.22.22
[INFO] [stderr]     Checking hyper-util v0.1.10
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking xml5ever v0.18.1
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking markup5ever_rcdom v0.3.0
[INFO] [stderr]     Checking webdriver v0.50.0
[INFO] [stderr]     Checking pathetic v0.3.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking toml v0.8.19
[INFO] [stderr]     Checking fantoccini v0.21.4
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking quick-js v0.4.1
[INFO] [stderr]     Checking parversion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/analysis.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/analysis.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future`
[INFO] [stdout]  --> src/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::future;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/analysis.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json_node::JsonNode`
[INFO] [stdout]   --> src/analysis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::json_node::JsonNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasisGraphBuilder` and `BasisGraph`
[INFO] [stdout]   --> src/analysis.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::basis_graph::{BasisGraph, BasisGraphBuilder};
[INFO] [stdout]    |                          ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentType` and `Document`
[INFO] [stdout]   --> src/analysis.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_format::DocumentFormat`
[INFO] [stdout]   --> src/analysis.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::document_format::DocumentFormat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashTransformation` and `Transformation`
[INFO] [stdout]   --> src/analysis.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transformation::{Transformation, HashTransformation};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_node::DocumentNode`
[INFO] [stdout]   --> src/analysis.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::document_node::DocumentNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNode` and `Graph`
[INFO] [stdout]   --> src/analysis.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::profile::Profile`
[INFO] [stdout]   --> src/analysis.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::profile::Profile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]   --> src/analysis.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::context::{Context, ContextID};
[INFO] [stdout]    |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `XMLNode`
[INFO] [stdout]  --> src/document.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use xmltree::{Element, XMLNode};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/document.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataNode`
[INFO] [stdout]   --> src/document.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::data_node::{DataNode};
[INFO] [stdout]    |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::transformation::XMLElementTransformation`
[INFO] [stdout]   --> src/document.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::transformation::XMLElementTransformation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PLAIN_TEXT` should have an upper camel case name
[INFO] [stdout]   --> src/document.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     PLAIN_TEXT,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `PlainText`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/document_node.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/id.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::de::{self, Deserialize, Deserializer, Visitor, Error as SerdeError};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `write_lock`
[INFO] [stdout]   --> src/macros.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use write_lock;
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Model`
[INFO] [stdout]  --> src/normalization.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::model::{Model};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/provider.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/transformation.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsValue`
[INFO] [stdout]  --> src/transformation.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quick_js::{Context as QuickContext, JsValue};
[INFO] [stdout]   |                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arc`
[INFO] [stdout]  --> src/types.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc};
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasisGraph`
[INFO] [stdout]  --> src/types.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::basis_graph::{BasisGraph};
[INFO] [stdout]   |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/llm/mod.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/llm/mod.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]  --> src/llm/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNodeID` and `GraphNode`
[INFO] [stdout]  --> src/llm/mod.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::graph_node::{GraphNode, GraphNodeID};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/traverse.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/traverse.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]   --> src/traverse.rs:11:33
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/meta_context.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/analysis.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/analysis.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future`
[INFO] [stdout]  --> src/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::future;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/analysis.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json_node::JsonNode`
[INFO] [stdout]   --> src/analysis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::json_node::JsonNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasisGraphBuilder` and `BasisGraph`
[INFO] [stdout]   --> src/analysis.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::basis_graph::{BasisGraph, BasisGraphBuilder};
[INFO] [stdout]    |                          ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentType` and `Document`
[INFO] [stdout]   --> src/analysis.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_format::DocumentFormat`
[INFO] [stdout]   --> src/analysis.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::document_format::DocumentFormat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashTransformation` and `Transformation`
[INFO] [stdout]   --> src/analysis.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transformation::{Transformation, HashTransformation};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_node::DocumentNode`
[INFO] [stdout]   --> src/analysis.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::document_node::DocumentNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNode` and `Graph`
[INFO] [stdout]   --> src/analysis.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::profile::Profile`
[INFO] [stdout]   --> src/analysis.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::profile::Profile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]   --> src/analysis.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::context::{Context, ContextID};
[INFO] [stdout]    |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `XMLNode`
[INFO] [stdout]  --> src/document.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use xmltree::{Element, XMLNode};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/document.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataNode`
[INFO] [stdout]   --> src/document.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::data_node::{DataNode};
[INFO] [stdout]    |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::transformation::XMLElementTransformation`
[INFO] [stdout]   --> src/document.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::transformation::XMLElementTransformation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PLAIN_TEXT` should have an upper camel case name
[INFO] [stdout]   --> src/document.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     PLAIN_TEXT,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `PlainText`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/document_node.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/id.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::de::{self, Deserialize, Deserializer, Visitor, Error as SerdeError};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `write_lock`
[INFO] [stdout]   --> src/macros.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use write_lock;
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Model`
[INFO] [stdout]  --> src/normalization.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::model::{Model};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/provider.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/transformation.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsValue`
[INFO] [stdout]  --> src/transformation.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quick_js::{Context as QuickContext, JsValue};
[INFO] [stdout]   |                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arc`
[INFO] [stdout]  --> src/types.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc};
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasisGraph`
[INFO] [stdout]  --> src/types.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::basis_graph::{BasisGraph};
[INFO] [stdout]   |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/llm/mod.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/llm/mod.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]  --> src/llm/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNodeID` and `GraphNode`
[INFO] [stdout]  --> src/llm/mod.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::graph_node::{GraphNode, GraphNodeID};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/traverse.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/traverse.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]   --> src/traverse.rs:11:33
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/meta_context.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/llm/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         meta_context: Arc<MetaContext>,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `example_snippet_count`
[INFO] [stdout]   --> src/llm/mod.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let example_snippet_count = read_lock!(CONFIG).llm.example_snippet_count;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example_snippet_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/llm/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         meta_context: Arc<MetaContext>,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `example_snippet_count`
[INFO] [stdout]   --> src/llm/mod.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let example_snippet_count = read_lock!(CONFIG).llm.example_snippet_count;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example_snippet_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/normalization.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document`
[INFO] [stdout]   --> src/normalization.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let document = build_document_from_meta_context(
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/normalization.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document`
[INFO] [stdout]   --> src/normalization.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let document = build_document_from_meta_context(
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/organization.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/organization.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `provider`
[INFO] [stdout]   --> src/translation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     provider: Arc<P>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_provider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/translation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     meta_context: Arc<MetaContext>,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/translation.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json_schema`
[INFO] [stdout]   --> src/translation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     json_schema: &str,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_json_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `provider`
[INFO] [stdout]   --> src/translation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     provider: Arc<P>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_provider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/translation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     meta_context: Arc<MetaContext>,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/translation.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json_schema`
[INFO] [stdout]   --> src/translation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     json_schema: &str,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_json_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document_format`
[INFO] [stdout]    --> src/traverse.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     document_format: &Option<DocumentFormat>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document_format`
[INFO] [stdout]    --> src/traverse.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     document_format: &Option<DocumentFormat>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/id.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/id.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/basis_graph.rs:40:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/basis_graph.rs:40:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/document.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let mut reader = std::io::Cursor::new(xml);
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/document.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let mut reader = std::io::Cursor::new(xml);
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text_node`
[INFO] [stdout]    --> src/document_node.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |             XMLNode::Text(text_node) => Vec::new(),
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text_node`
[INFO] [stdout]    --> src/document_node.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |             XMLNode::Text(text_node) => Vec::new(),
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_hashes`
[INFO] [stdout]   --> src/lineage.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let unique_hashes = remove_duplicate_sequences(hashes.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_hashes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_hashes`
[INFO] [stdout]   --> src/lineage.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let unique_hashes = remove_duplicate_sequences(hashes.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_hashes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/model.rs:33:29
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/model.rs:33:29
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]   --> src/provider.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         lineage: &Lineage
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]   --> src/provider.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         lineage: &Lineage
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         lineage: &Lineage,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         lineage: &Lineage,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         lineage: &Lineage
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         lineage: &Lineage
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_node_field`
[INFO] [stdout]    --> src/transformation.rs:311:21
[INFO] [stdout]     |
[INFO] [stdout] 311 |         if let Some(data_node_field) = data_node.fields.get(&self.field) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_node_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_node_field`
[INFO] [stdout]    --> src/transformation.rs:311:21
[INFO] [stdout]     |
[INFO] [stdout] 311 |         if let Some(data_node_field) = data_node.fields.get(&self.field) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_node_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let (mut a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let (a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let (mut a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let (a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LlmProvider` is more private than the item `LlmConfig::llm_provider`
[INFO] [stdout]   --> src/config.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub llm_provider: LlmProvider,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `LlmConfig::llm_provider` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LlmProvider` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/config.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum LlmProvider {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_analysis` and `network_analysis` are never read
[INFO] [stdout]   --> src/analysis.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct Analysis {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 29 |     node_analysis: NodeAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     network_analysis: NetworkAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_nodes` is never read
[INFO] [stdout]   --> src/analysis.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct NodeAnalysis {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 63 |     basis_nodes: Vec<BasisNode>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_basis_nodes` is never used
[INFO] [stdout]    --> src/analysis.rs:124:14
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl NodeAnalysis {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     async fn get_basis_nodes<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_networks` is never read
[INFO] [stdout]    --> src/analysis.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 198 | struct NetworkAnalysis {
[INFO] [stdout]     |        --------------- field in this struct
[INFO] [stdout] 199 |     basis_networks: Vec<BasisNetwork>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple`, `Flattened`, and `Nested` are never constructed
[INFO] [stdout]  --> src/document_format.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum FormatStrategy {
[INFO] [stdout]   |      -------------- variants in this enum
[INFO] [stdout] 5 |     Simple,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 6 |     Flattened,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 7 |     Nested,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FormatStrategy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/document_format.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DocumentFormat {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 12 |     format_type: DocumentType,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     encoding: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     strategy: Option<FormatStrategy>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     indent: Option<usize>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     line_ending: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     headers: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     wrap_text: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     exclude_nulls: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     custom_delimiter: Option<char>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentFormat` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db_path` is never read
[INFO] [stdout]    --> src/provider.rs:225:5
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct SqliteProvider {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 225 |     db_path: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Transform` is never used
[INFO] [stdout]   --> src/transformation.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | trait Transform {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LlmProvider` is more private than the item `LlmConfig::llm_provider`
[INFO] [stdout]   --> src/config.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub llm_provider: LlmProvider,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `LlmConfig::llm_provider` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LlmProvider` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/config.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum LlmProvider {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_analysis` and `network_analysis` are never read
[INFO] [stdout]   --> src/analysis.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct Analysis {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 29 |     node_analysis: NodeAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     network_analysis: NetworkAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_nodes` is never read
[INFO] [stdout]   --> src/analysis.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct NodeAnalysis {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 63 |     basis_nodes: Vec<BasisNode>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_basis_nodes` is never used
[INFO] [stdout]    --> src/analysis.rs:124:14
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl NodeAnalysis {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     async fn get_basis_nodes<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_networks` is never read
[INFO] [stdout]    --> src/analysis.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 198 | struct NetworkAnalysis {
[INFO] [stdout]     |        --------------- field in this struct
[INFO] [stdout] 199 |     basis_networks: Vec<BasisNetwork>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple`, `Flattened`, and `Nested` are never constructed
[INFO] [stdout]  --> src/document_format.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum FormatStrategy {
[INFO] [stdout]   |      -------------- variants in this enum
[INFO] [stdout] 5 |     Simple,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 6 |     Flattened,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 7 |     Nested,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FormatStrategy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/document_format.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DocumentFormat {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 12 |     format_type: DocumentType,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     encoding: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     strategy: Option<FormatStrategy>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     indent: Option<usize>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     line_ending: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     headers: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     wrap_text: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     exclude_nulls: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     custom_delimiter: Option<char>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentFormat` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `db_path` is never read
[INFO] [stdout]    --> src/provider.rs:225:5
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct SqliteProvider {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 225 |     db_path: String,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Transform` is never used
[INFO] [stdout]   --> src/transformation.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | trait Transform {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/llm/openai.rs:547:70
[INFO] [stdout]     |
[INFO] [stdout] 547 |         if let Some(cached_response) = Self::get_cached_response(hash.clone()) {
[INFO] [stdout]     |                                                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/llm/openai.rs:547:70
[INFO] [stdout]     |
[INFO] [stdout] 547 |         if let Some(cached_response) = Self::get_cached_response(hash.clone()) {
[INFO] [stdout]     |                                                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/main.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `lazy_static::lazy_static`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lazy_static::lazy_static;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context` and `JsValue`
[INFO] [stdout]   --> src/main.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use quick_js::{Context, JsValue};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/analysis.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/analysis.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future`
[INFO] [stdout]  --> src/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::future;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/analysis.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json_node::JsonNode`
[INFO] [stdout]   --> src/analysis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::json_node::JsonNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasisGraphBuilder` and `BasisGraph`
[INFO] [stdout]   --> src/analysis.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::basis_graph::{BasisGraph, BasisGraphBuilder};
[INFO] [stdout]    |                          ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentType` and `Document`
[INFO] [stdout]   --> src/analysis.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_format::DocumentFormat`
[INFO] [stdout]   --> src/analysis.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::document_format::DocumentFormat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashTransformation` and `Transformation`
[INFO] [stdout]   --> src/analysis.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transformation::{Transformation, HashTransformation};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_node::DocumentNode`
[INFO] [stdout]   --> src/analysis.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::document_node::DocumentNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNode` and `Graph`
[INFO] [stdout]   --> src/analysis.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::profile::Profile`
[INFO] [stdout]   --> src/analysis.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::profile::Profile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]   --> src/analysis.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::context::{Context, ContextID};
[INFO] [stdout]    |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `XMLNode`
[INFO] [stdout]  --> src/document.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use xmltree::{Element, XMLNode};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/document.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataNode`
[INFO] [stdout]   --> src/document.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::data_node::{DataNode};
[INFO] [stdout]    |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::transformation::XMLElementTransformation`
[INFO] [stdout]   --> src/document.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::transformation::XMLElementTransformation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PLAIN_TEXT` should have an upper camel case name
[INFO] [stdout]   --> src/document.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     PLAIN_TEXT,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `PlainText`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/document_node.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/id.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::de::{self, Deserialize, Deserializer, Visitor, Error as SerdeError};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `write_lock`
[INFO] [stdout]   --> src/macros.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use write_lock;
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Model`
[INFO] [stdout]  --> src/normalization.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::model::{Model};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/provider.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/transformation.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsValue`
[INFO] [stdout]  --> src/transformation.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quick_js::{Context as QuickContext, JsValue};
[INFO] [stdout]   |                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arc`
[INFO] [stdout]  --> src/types.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc};
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasisGraph`
[INFO] [stdout]  --> src/types.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::basis_graph::{BasisGraph};
[INFO] [stdout]   |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::Config`
[INFO] [stdout]  --> src/prelude.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use crate::config::Config;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::environment::Environment`
[INFO] [stdout]  --> src/prelude.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use crate::environment::Environment;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::meta_context::MetaContext`
[INFO] [stdout]  --> src/prelude.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use crate::meta_context::MetaContext;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::context::Context`
[INFO] [stdout]   --> src/prelude.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use crate::context::Context;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/llm/mod.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/llm/mod.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]  --> src/llm/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNodeID` and `GraphNode`
[INFO] [stdout]  --> src/llm/mod.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::graph_node::{GraphNode, GraphNodeID};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/traverse.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/traverse.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]   --> src/traverse.rs:11:33
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/meta_context.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/main.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `lazy_static::lazy_static`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use lazy_static::lazy_static;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use async_trait::async_trait;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Context` and `JsValue`
[INFO] [stdout]   --> src/main.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout] 12 | use quick_js::{Context, JsValue};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashMap` and `HashSet`
[INFO] [stdout]  --> src/analysis.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, HashMap};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/analysis.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::future`
[INFO] [stdout]  --> src/analysis.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use futures::future;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/analysis.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::json_node::JsonNode`
[INFO] [stdout]   --> src/analysis.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::json_node::JsonNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BasisGraphBuilder` and `BasisGraph`
[INFO] [stdout]   --> src/analysis.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::basis_graph::{BasisGraph, BasisGraphBuilder};
[INFO] [stdout]    |                          ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DocumentType` and `Document`
[INFO] [stdout]   --> src/analysis.rs:13:23
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_format::DocumentFormat`
[INFO] [stdout]   --> src/analysis.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::document_format::DocumentFormat;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashTransformation` and `Transformation`
[INFO] [stdout]   --> src/analysis.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::transformation::{Transformation, HashTransformation};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::document_node::DocumentNode`
[INFO] [stdout]   --> src/analysis.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::document_node::DocumentNode;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNode` and `Graph`
[INFO] [stdout]   --> src/analysis.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::profile::Profile`
[INFO] [stdout]   --> src/analysis.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::profile::Profile;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]   --> src/analysis.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::context::{Context, ContextID};
[INFO] [stdout]    |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `XMLNode`
[INFO] [stdout]  --> src/document.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use xmltree::{Element, XMLNode};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/document.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DataNode`
[INFO] [stdout]   --> src/document.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::data_node::{DataNode};
[INFO] [stdout]    |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::transformation::XMLElementTransformation`
[INFO] [stdout]   --> src/document.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::transformation::XMLElementTransformation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PLAIN_TEXT` should have an upper camel case name
[INFO] [stdout]   --> src/document.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 |     PLAIN_TEXT,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `PlainText`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/document_node.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/id.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde::de::{self, Deserialize, Deserializer, Visitor, Error as SerdeError};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `write_lock`
[INFO] [stdout]   --> src/macros.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use write_lock;
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Model`
[INFO] [stdout]  --> src/normalization.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::model::{Model};
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashMap`
[INFO] [stdout]  --> src/provider.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/transformation.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `JsValue`
[INFO] [stdout]  --> src/transformation.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use quick_js::{Context as QuickContext, JsValue};
[INFO] [stdout]   |                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Arc`
[INFO] [stdout]  --> src/types.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc};
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BasisGraph`
[INFO] [stdout]  --> src/types.rs:4:26
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::basis_graph::{BasisGraph};
[INFO] [stdout]   |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::data_node::DataNode`
[INFO] [stdout]  --> src/types.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::data_node::DataNode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::config::Config`
[INFO] [stdout]  --> src/prelude.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use crate::config::Config;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::environment::Environment`
[INFO] [stdout]  --> src/prelude.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use crate::environment::Environment;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: glob import doesn't reexport anything with visibility `pub` because no imported item is public enough
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the most public imported item is `pub(crate)`
[INFO] [stdout]  --> src/prelude.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use crate::macros::*;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]   = help: reduce the glob import's visibility or increase visibility of imported items
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::meta_context::MetaContext`
[INFO] [stdout]  --> src/prelude.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use crate::meta_context::MetaContext;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::context::Context`
[INFO] [stdout]   --> src/prelude.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub use crate::context::Context;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RwLock`
[INFO] [stdout]  --> src/llm/mod.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/llm/mod.rs:2:24
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContextID` and `Context`
[INFO] [stdout]  --> src/llm/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                      ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GraphNodeID` and `GraphNode`
[INFO] [stdout]  --> src/llm/mod.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::graph_node::{GraphNode, GraphNodeID};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/traverse.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Graph`
[INFO] [stdout]   --> src/traverse.rs:10:25
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::graph_node::{Graph, GraphNode};
[INFO] [stdout]    |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]   --> src/traverse.rs:11:33
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::document::{Document, DocumentType};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ContextID`
[INFO] [stdout]  --> src/meta_context.rs:7:31
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::context::{Context, ContextID};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/llm/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         meta_context: Arc<MetaContext>,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `example_snippet_count`
[INFO] [stdout]   --> src/llm/mod.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let example_snippet_count = read_lock!(CONFIG).llm.example_snippet_count;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example_snippet_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/llm/mod.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         meta_context: Arc<MetaContext>,
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `example_snippet_count`
[INFO] [stdout]   --> src/llm/mod.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 |         let example_snippet_count = read_lock!(CONFIG).llm.example_snippet_count;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_example_snippet_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/normalization.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document`
[INFO] [stdout]   --> src/normalization.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let document = build_document_from_meta_context(
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/organization.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/normalization.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document`
[INFO] [stdout]   --> src/normalization.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let document = build_document_from_meta_context(
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `provider`
[INFO] [stdout]   --> src/translation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     provider: Arc<P>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_provider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/translation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     meta_context: Arc<MetaContext>,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/translation.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json_schema`
[INFO] [stdout]   --> src/translation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     json_schema: &str,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_json_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/organization.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document_format`
[INFO] [stdout]    --> src/traverse.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     document_format: &Option<DocumentFormat>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `provider`
[INFO] [stdout]   --> src/translation.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     provider: Arc<P>,
[INFO] [stdout]    |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_provider`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meta_context`
[INFO] [stdout]   --> src/translation.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     meta_context: Arc<MetaContext>,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_meta_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options`
[INFO] [stdout]   --> src/translation.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     options: &Option<Options>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `json_schema`
[INFO] [stdout]   --> src/translation.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     json_schema: &str,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_json_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `document_format`
[INFO] [stdout]    --> src/traverse.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     document_format: &Option<DocumentFormat>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_document_format`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/id.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/basis_graph.rs:40:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/document.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let mut reader = std::io::Cursor::new(xml);
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text_node`
[INFO] [stdout]    --> src/document_node.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |             XMLNode::Text(text_node) => Vec::new(),
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/id.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_hashes`
[INFO] [stdout]   --> src/lineage.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let unique_hashes = remove_duplicate_sequences(hashes.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_hashes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/model.rs:33:29
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]   --> src/provider.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         lineage: &Lineage
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/basis_graph.rs:40:29
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         lineage: &Lineage,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         lineage: &Lineage
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/document.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let mut reader = std::io::Cursor::new(xml);
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text_node`
[INFO] [stdout]    --> src/document_node.rs:142:27
[INFO] [stdout]     |
[INFO] [stdout] 142 |             XMLNode::Text(text_node) => Vec::new(),
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_node_field`
[INFO] [stdout]    --> src/transformation.rs:311:21
[INFO] [stdout]     |
[INFO] [stdout] 311 |         if let Some(data_node_field) = data_node.fields.get(&self.field) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_node_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unique_hashes`
[INFO] [stdout]   --> src/lineage.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let unique_hashes = remove_duplicate_sequences(hashes.clone());
[INFO] [stdout]    |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unique_hashes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `basis_graph`
[INFO] [stdout]   --> src/model.rs:33:29
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_basis_graph`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let (mut a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let (a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]   --> src/provider.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         lineage: &Lineage
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 |         lineage: &Lineage,
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lineage`
[INFO] [stdout]    --> src/provider.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |         lineage: &Lineage
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lineage`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_node_field`
[INFO] [stdout]    --> src/transformation.rs:311:21
[INFO] [stdout]     |
[INFO] [stdout] 311 |         if let Some(data_node_field) = data_node.fields.get(&self.field) {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_node_field`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:60:25
[INFO] [stdout]    |
[INFO] [stdout] 60 |             let (mut a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/context.rs:67:21
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let (a, b) = read_lock!(document_node).to_string_components();
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LlmProvider` is more private than the item `LlmConfig::llm_provider`
[INFO] [stdout]   --> src/config.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub llm_provider: LlmProvider,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `LlmConfig::llm_provider` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LlmProvider` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/config.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum LlmProvider {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_analysis` and `network_analysis` are never read
[INFO] [stdout]   --> src/analysis.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct Analysis {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 29 |     node_analysis: NodeAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     network_analysis: NetworkAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_nodes` is never read
[INFO] [stdout]   --> src/analysis.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct NodeAnalysis {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 63 |     basis_nodes: Vec<BasisNode>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_basis_nodes` is never used
[INFO] [stdout]    --> src/analysis.rs:124:14
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl NodeAnalysis {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     async fn get_basis_nodes<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_networks` is never read
[INFO] [stdout]    --> src/analysis.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 198 | struct NetworkAnalysis {
[INFO] [stdout]     |        --------------- field in this struct
[INFO] [stdout] 199 |     basis_networks: Vec<BasisNetwork>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BasisGraphBuilder` is never constructed
[INFO] [stdout]   --> src/basis_graph.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct BasisGraphBuilder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BasisGraphBuilder` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `from_basis_graph`, and `build` are never used
[INFO] [stdout]   --> src/basis_graph.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl BasisGraphBuilder {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn build(self) -> Result<BasisGraph, Errors> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_hash` is never used
[INFO] [stdout]   --> src/data_node.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl DataNode {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn get_hash(&self) -> Hash {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple`, `Flattened`, and `Nested` are never constructed
[INFO] [stdout]  --> src/document_format.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum FormatStrategy {
[INFO] [stdout]   |      -------------- variants in this enum
[INFO] [stdout] 5 |     Simple,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 6 |     Flattened,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 7 |     Nested,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FormatStrategy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/document_format.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DocumentFormat {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 12 |     format_type: DocumentType,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     encoding: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     strategy: Option<FormatStrategy>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     indent: Option<usize>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     line_ending: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     headers: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     wrap_text: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     exclude_nulls: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     custom_delimiter: Option<char>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentFormat` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/document_node.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl DocumentNode {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Local` and `Production` are never constructed
[INFO] [stdout]  --> src/environment.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Environment {
[INFO] [stdout]   |          ----------- variants in this enum
[INFO] [stdout] 6 |     Local,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 7 |     Production,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_local` is never used
[INFO] [stdout]   --> src/environment.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn is_local() -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_str` is never used
[INFO] [stdout]   --> src/environment.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Environment {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 17 |     fn from_str(env: &str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_str` and `sort` are never used
[INFO] [stdout]   --> src/hash.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Hash {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn from_str(s: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn sort(&mut self) -> &mut Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/id.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ID {
[INFO] [stdout]    | ------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_hashes` is never used
[INFO] [stdout]   --> src/lineage.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Lineage {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn from_hashes(source_hashes: Vec<Hash>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_normal_model` is never used
[INFO] [stdout]   --> src/model.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl Model {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_text` is never used
[INFO] [stdout]   --> src/normalization.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn normalize_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document_to_meta_context` is never used
[INFO] [stdout]   --> src/normalization.rs:92:14
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub async fn normalize_document_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document` is never used
[INFO] [stdout]    --> src/normalization.rs:104:14
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub async fn normalize_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:121:14
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub async fn normalize_document_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_file_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:165:14
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub async fn normalize_file_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_file` is never used
[INFO] [stdout]    --> src/normalization.rs:179:14
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub async fn normalize_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_url_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:228:14
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub async fn normalize_url_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_document` is never used
[INFO] [stdout]   --> src/organization.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn organize_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_document_to_string` is never used
[INFO] [stdout]   --> src/organization.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub async fn organize_document_to_string<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_text` is never used
[INFO] [stdout]   --> src/organization.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn organize_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_text_to_document` is never used
[INFO] [stdout]   --> src/organization.rs:89:14
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub async fn organize_text_to_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file` is never used
[INFO] [stdout]    --> src/organization.rs:102:14
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub async fn organize_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file_to_document` is never used
[INFO] [stdout]    --> src/organization.rs:118:14
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub async fn organize_file_to_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file_to_string` is never used
[INFO] [stdout]    --> src/organization.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub async fn organize_file_to_string<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/provider.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl JsonFileProvider {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 175 |     pub fn new(file_path: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SqliteProvider` is never constructed
[INFO] [stdout]    --> src/provider.rs:224:12
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct SqliteProvider {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/provider.rs:229:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl SqliteProvider {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 229 |     pub fn new(db_path: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Transform` is never used
[INFO] [stdout]   --> src/transformation.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | trait Transform {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate` is never used
[INFO] [stdout]   --> src/translation.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn translate<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub async fn translate_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text_to_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub async fn translate_text_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text_to_document` is never used
[INFO] [stdout]   --> src/translation.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn translate_text_to_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text` is never used
[INFO] [stdout]   --> src/translation.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub async fn translate_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document_to_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:85:14
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub async fn translate_document_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document` is never used
[INFO] [stdout]   --> src/translation.rs:98:14
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub async fn translate_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document_to_text` is never used
[INFO] [stdout]    --> src/translation.rs:121:14
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub async fn translate_document_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_meta_context` is never used
[INFO] [stdout]    --> src/translation.rs:141:14
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub async fn translate_file_to_meta_context<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_document` is never used
[INFO] [stdout]    --> src/translation.rs:158:14
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub async fn translate_file_to_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_text` is never used
[INFO] [stdout]    --> src/translation.rs:176:14
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub async fn translate_file_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file` is never used
[INFO] [stdout]    --> src/translation.rs:196:14
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub async fn translate_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DISABLED` and `SIMPLE` are never constructed
[INFO] [stdout]   --> src/types.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum AnalysisMode {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 10 |     DISABLED,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 11 |     SIMPLE,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/types.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |     FetchUrlError(String),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Errors` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 30 -     FetchUrlError(String),
[INFO] [stdout] 30 +     FetchUrlError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FileOutputError`, `UnexpectedOutputFormat`, `BasisGraphBuildError`, `PathConversionError`, `SqliteDatabaseConnectionError`, and `BasisNodeNotFound` are never constructed
[INFO] [stdout]   --> src/types.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum Errors {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     FileOutputError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     UnexpectedOutputFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     XmlParseError,
[INFO] [stdout] 26 |     BasisGraphBuildError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     PathConversionError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     SqliteDatabaseConnectionError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     BasisNodeNotFound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Errors` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `analysis_mode` and `value_transformations` are never read
[INFO] [stdout]   --> src/types.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 43 |     pub analysis_mode: Option<AnalysisMode>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub value_transformations: Option<Vec<Transformation>>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Options` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_text_to_file` is never used
[INFO] [stdout]   --> src/utility.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn write_text_to_file(path: &str, text: &str) -> io::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_to_filename` is never used
[INFO] [stdout]   --> src/utility.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn append_to_filename(path: &str, suffix: &str) -> Result<String, Errors> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `document_root` is never read
[INFO] [stdout]   --> src/meta_context.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct MetaContext {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 11 |     pub contexts: HashMap<ID, Arc<Context>>,
[INFO] [stdout] 12 |     pub document_root: Arc<RwLock<DocumentNode>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/llm/openai.rs:547:70
[INFO] [stdout]     |
[INFO] [stdout] 547 |         if let Some(cached_response) = Self::get_cached_response(hash.clone()) {
[INFO] [stdout]     |                                                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LlmProvider` is more private than the item `LlmConfig::llm_provider`
[INFO] [stdout]   --> src/config.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub llm_provider: LlmProvider,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `LlmConfig::llm_provider` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LlmProvider` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/config.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum LlmProvider {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `node_analysis` and `network_analysis` are never read
[INFO] [stdout]   --> src/analysis.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct Analysis {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 29 |     node_analysis: NodeAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     network_analysis: NetworkAnalysis,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_nodes` is never read
[INFO] [stdout]   --> src/analysis.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct NodeAnalysis {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 63 |     basis_nodes: Vec<BasisNode>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_basis_nodes` is never used
[INFO] [stdout]    --> src/analysis.rs:124:14
[INFO] [stdout]     |
[INFO] [stdout] 66  | impl NodeAnalysis {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 124 |     async fn get_basis_nodes<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `basis_networks` is never read
[INFO] [stdout]    --> src/analysis.rs:199:5
[INFO] [stdout]     |
[INFO] [stdout] 198 | struct NetworkAnalysis {
[INFO] [stdout]     |        --------------- field in this struct
[INFO] [stdout] 199 |     basis_networks: Vec<BasisNetwork>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BasisGraphBuilder` is never constructed
[INFO] [stdout]   --> src/basis_graph.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct BasisGraphBuilder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BasisGraphBuilder` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `from_basis_graph`, and `build` are never used
[INFO] [stdout]   --> src/basis_graph.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl BasisGraphBuilder {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 29 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn from_basis_graph(basis_graph: &BasisGraph) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn build(self) -> Result<BasisGraph, Errors> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_hash` is never used
[INFO] [stdout]   --> src/data_node.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl DataNode {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn get_hash(&self) -> Hash {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple`, `Flattened`, and `Nested` are never constructed
[INFO] [stdout]  --> src/document_format.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | enum FormatStrategy {
[INFO] [stdout]   |      -------------- variants in this enum
[INFO] [stdout] 5 |     Simple,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 6 |     Flattened,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 7 |     Nested,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FormatStrategy` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/document_format.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DocumentFormat {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 12 |     format_type: DocumentType,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 13 |     encoding: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     strategy: Option<FormatStrategy>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 15 |     indent: Option<usize>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     line_ending: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     headers: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 18 |     wrap_text: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 19 |     exclude_nulls: Option<bool>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 20 |     custom_delimiter: Option<char>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DocumentFormat` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/document_node.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl DocumentNode {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Local` and `Production` are never constructed
[INFO] [stdout]  --> src/environment.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Environment {
[INFO] [stdout]   |          ----------- variants in this enum
[INFO] [stdout] 6 |     Local,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 7 |     Production,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_local` is never used
[INFO] [stdout]   --> src/environment.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub fn is_local() -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_str` is never used
[INFO] [stdout]   --> src/environment.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Environment {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 17 |     fn from_str(env: &str) -> Self {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_str` and `sort` are never used
[INFO] [stdout]   --> src/hash.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Hash {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn from_str(s: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn sort(&mut self) -> &mut Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_string` is never used
[INFO] [stdout]   --> src/id.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl ID {
[INFO] [stdout]    | ------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn to_string(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_hashes` is never used
[INFO] [stdout]   --> src/lineage.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Lineage {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn from_hashes(source_hashes: Vec<Hash>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_normal_model` is never used
[INFO] [stdout]   --> src/model.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl Model {
[INFO] [stdout]    | ---------- associated function in this implementation
[INFO] [stdout] 33 |     pub fn get_normal_model(basis_graph: &BasisGraph) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_text` is never used
[INFO] [stdout]   --> src/normalization.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub async fn normalize_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document_to_meta_context` is never used
[INFO] [stdout]   --> src/normalization.rs:92:14
[INFO] [stdout]    |
[INFO] [stdout] 92 | pub async fn normalize_document_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document` is never used
[INFO] [stdout]    --> src/normalization.rs:104:14
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub async fn normalize_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_document_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:121:14
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub async fn normalize_document_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_file_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:165:14
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub async fn normalize_file_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_file` is never used
[INFO] [stdout]    --> src/normalization.rs:179:14
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub async fn normalize_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `normalize_url_to_text` is never used
[INFO] [stdout]    --> src/normalization.rs:228:14
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub async fn normalize_url_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_document` is never used
[INFO] [stdout]   --> src/organization.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub async fn organize_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_document_to_string` is never used
[INFO] [stdout]   --> src/organization.rs:59:14
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub async fn organize_document_to_string<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_text` is never used
[INFO] [stdout]   --> src/organization.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub async fn organize_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_text_to_document` is never used
[INFO] [stdout]   --> src/organization.rs:89:14
[INFO] [stdout]    |
[INFO] [stdout] 89 | pub async fn organize_text_to_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file` is never used
[INFO] [stdout]    --> src/organization.rs:102:14
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub async fn organize_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file_to_document` is never used
[INFO] [stdout]    --> src/organization.rs:118:14
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub async fn organize_file_to_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `organize_file_to_string` is never used
[INFO] [stdout]    --> src/organization.rs:132:14
[INFO] [stdout]     |
[INFO] [stdout] 132 | pub async fn organize_file_to_string<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/provider.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl JsonFileProvider {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 175 |     pub fn new(file_path: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SqliteProvider` is never constructed
[INFO] [stdout]    --> src/provider.rs:224:12
[INFO] [stdout]     |
[INFO] [stdout] 224 | pub struct SqliteProvider {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/provider.rs:229:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | impl SqliteProvider {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 229 |     pub fn new(db_path: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Transform` is never used
[INFO] [stdout]   --> src/transformation.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | trait Transform {
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate` is never used
[INFO] [stdout]   --> src/translation.rs:11:14
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub async fn translate<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub async fn translate_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text_to_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub async fn translate_text_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text_to_document` is never used
[INFO] [stdout]   --> src/translation.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub async fn translate_text_to_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_text` is never used
[INFO] [stdout]   --> src/translation.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub async fn translate_text<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document_to_meta_context` is never used
[INFO] [stdout]   --> src/translation.rs:85:14
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub async fn translate_document_to_meta_context<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document` is never used
[INFO] [stdout]   --> src/translation.rs:98:14
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub async fn translate_document<P: Provider>(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_document_to_text` is never used
[INFO] [stdout]    --> src/translation.rs:121:14
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub async fn translate_document_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_meta_context` is never used
[INFO] [stdout]    --> src/translation.rs:141:14
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub async fn translate_file_to_meta_context<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_document` is never used
[INFO] [stdout]    --> src/translation.rs:158:14
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub async fn translate_file_to_document<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file_to_text` is never used
[INFO] [stdout]    --> src/translation.rs:176:14
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub async fn translate_file_to_text<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `translate_file` is never used
[INFO] [stdout]    --> src/translation.rs:196:14
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub async fn translate_file<P: Provider>(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `DISABLED` and `SIMPLE` are never constructed
[INFO] [stdout]   --> src/types.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum AnalysisMode {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 10 |     DISABLED,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 11 |     SIMPLE,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/types.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |     FetchUrlError(String),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Errors` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 30 -     FetchUrlError(String),
[INFO] [stdout] 30 +     FetchUrlError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FileOutputError`, `UnexpectedOutputFormat`, `BasisGraphBuildError`, `PathConversionError`, `SqliteDatabaseConnectionError`, and `BasisNodeNotFound` are never constructed
[INFO] [stdout]   --> src/types.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum Errors {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     FileOutputError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     UnexpectedOutputFormat,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     XmlParseError,
[INFO] [stdout] 26 |     BasisGraphBuildError(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 27 |     PathConversionError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     SqliteDatabaseConnectionError,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     BasisNodeNotFound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Errors` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `analysis_mode` and `value_transformations` are never read
[INFO] [stdout]   --> src/types.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Options {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 43 |     pub analysis_mode: Option<AnalysisMode>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub value_transformations: Option<Vec<Transformation>>
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Options` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_text_to_file` is never used
[INFO] [stdout]   --> src/utility.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn write_text_to_file(path: &str, text: &str) -> io::Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_to_filename` is never used
[INFO] [stdout]   --> src/utility.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn append_to_filename(path: &str, suffix: &str) -> Result<String, Errors> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `document_root` is never read
[INFO] [stdout]   --> src/meta_context.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct MetaContext {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 11 |     pub contexts: HashMap<ID, Arc<Context>>,
[INFO] [stdout] 12 |     pub document_root: Arc<RwLock<DocumentNode>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/llm/openai.rs:547:70
[INFO] [stdout]     |
[INFO] [stdout] 547 |         if let Some(cached_response) = Self::get_cached_response(hash.clone()) {
[INFO] [stdout]     |                                                                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 31s
[INFO] running `Command { std: "docker" "inspect" "245146d284d0625bba5c9e4fa121c2e764cc0d315c2aaf4460da05f392b7c141", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "245146d284d0625bba5c9e4fa121c2e764cc0d315c2aaf4460da05f392b7c141", kill_on_drop: false }`
[INFO] [stdout] 245146d284d0625bba5c9e4fa121c2e764cc0d315c2aaf4460da05f392b7c141
