- Warn when no timing data was found at all (empty --times-dir previously produced empty CSVs without any hint) — best_cars empty + non-empty car list now logs a warning in parse_all_times - Remove the inaccurate "known gap" doc from write_trash_csv: category 1 (not best on any track) already covers non-final cars, so the documented gap never existed - Gate env_logger behind the bin-logging feature (default-on) and mark the records binary as requiring it, so downstream lib consumers do not pull env_logger transitively; lib builds clean with --no-default-features - Switch fetch_car progress output from println! to log::info! so RUST_LOG controls it - atomic_write takes &Path instead of &PathBuf - Add direct unit tests for is_final_build (sum-8 finals, maxed builds, sub-8 non-finals, malformed inputs) and a parsing test covering missing/null/non-numeric "t" fields (warn + skip, valid entries still parsed)
38 lines
931 B
TOML
38 lines
931 B
TOML
[package]
|
|
name = "top_drives"
|
|
version = "0.3.0"
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
name = "top_drives"
|
|
path = "src/lib.rs"
|
|
|
|
# Bin-only (logger init in records.rs); required-features keeps the lib crate's
|
|
# downstream consumers free of env_logger unless they opt in.
|
|
[[bin]]
|
|
name = "records"
|
|
path = "src/records.rs"
|
|
required-features = ["bin-logging"]
|
|
|
|
[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 = { version = "0.11", optional = true }
|
|
|
|
[features]
|
|
default = ["bin-logging", "test-utils"]
|
|
bin-logging = ["dep:env_logger"]
|
|
test-utils = []
|
|
|
|
[dev-dependencies]
|
|
top_drives = { path = ".", features = ["test-utils"] }
|
|
tempfile = "3.10.1"
|
|
proptest = "1"
|
|
mockito = "1"
|