Library no longer prints to stderr: - Replace every eprintln! with log::warn! (lib: user_data, http; bin: parsing, output, commands); initialize env_logger in main with a warn-level default so output is unchanged unless RUST_LOG is set - Warn on missing/non-numeric "t" time fields instead of silently coercing them to 0.0; suppress the per-car NotFound warning (most cars legitimately have no timing file), keep warnings for real I/O errors Ownership and clone cleanup: - CarCounts no longer duplicates the car database: drop the car_list field and build car_map by consuming car_list (each Car stored once); iterate car_map.values() where the list was previously used - run_analysis takes MyCarsData by value: owned moves into the parse Arc, owned_configs/copy_count move into CarCounts; only the three commands that need owned/wishlist afterwards retain their own copy - is_final_build checks the digits directly (no per-call String allocation) and treats malformed configs as non-final so they surface in improve.csv; owned_final_configs becomes a borrowed rid-to-configs map so the target-exclusion check allocates nothing - Normalize sum arithmetic to u8 in normalize_to_final_build Docs and structure: - Document the first-seen-wins tie-breaking in compute_ideal_wishlist and the non-final/non-best coverage gap in write_trash_csv - Extract compare_by_rq_config_brand_name shared by compare_records and the remove.csv sort; drop the unused _output_dir parameter from run_track; add a retry_delay helper de-duplicating the three HTTP backoff sites; rename the shadowed `entry` binding to config_data
34 lines
662 B
TOML
34 lines
662 B
TOML
[package]
|
|
name = "top_drives"
|
|
version = "0.3.0"
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
name = "top_drives"
|
|
path = "src/lib.rs"
|
|
|
|
[[bin]]
|
|
name = "records"
|
|
path = "src/records.rs"
|
|
|
|
[dependencies]
|
|
reqwest = "0.12.15"
|
|
tokio = { version = "1.44.1", features = ["rt-multi-thread", "macros", "fs", "sync", "io-util"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1.0.140"
|
|
futures = "0.3.31"
|
|
clap = { version = "4", features = ["derive"] }
|
|
thiserror = "2"
|
|
dashmap = "6"
|
|
log = "0.4"
|
|
env_logger = "0.11"
|
|
|
|
[features]
|
|
default = []
|
|
test-utils = []
|
|
|
|
[dev-dependencies]
|
|
top_drives = { path = ".", features = ["test-utils"] }
|
|
tempfile = "3.10.1"
|
|
proptest = "1"
|
|
mockito = "1"
|