- Gate env_logger init behind #[cfg(feature = "bin-logging")] in
records.rs main() so the binary respects the feature flag
- Set default-features = false on the dev-dependency self-reference
in Cargo.toml; previously default features were silently re-enabled
during tests, making feature isolation accidental rather than real
- Bind guid.to_string() once per card in user_data.rs deck loop and
reuse it via clone, replacing three allocations per locked card
- Add per-field help text to the Track subcommand args clarifying
human-readable names ("Laguna Seca", "Dry") vs raw codes
- Document write_details_csv DashMap snapshot memory tradeoff
(full clone, roughly doubled peak memory during the write)
- Extend my_cars fixture test: duplicate guids count as 2 copies
with per-copy configs, and incomplete-tune cards still count in
copy_count
38 lines
957 B
TOML
38 lines
957 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"], default-features = false }
|
|
tempfile = "3.10.1"
|
|
proptest = "1"
|
|
mockito = "1"
|