brewlog/Cargo.toml
Jon Seager a6eaf26814
refactor: remove PostgreSQL feature-flagged support
- Remove sqlite/postgres feature flags from Cargo.toml
- Replace "any" sqlx feature with direct "sqlite" feature
- Remove all #[cfg] conditional compilation from database.rs
- Update README.md and CLAUDE.md to reflect SQLite-only support
2026-02-06 13:26:41 +00:00

83 lines
2.8 KiB
TOML

[package]
name = "brewlog"
version = "0.1.0"
edition = "2024"
[dependencies]
anyhow = "1.0"
async-trait = "0.1"
axum = { version = "0.7", features = ["macros"] }
askama = "0.12"
base64 = "0.22"
chrono = { version = "0.4", features = ["serde", "clock"] }
clap = { version = "4.5", features = ["derive", "env"] }
dotenvy = "0.15"
isocountry = "0.3"
open = "5"
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls", "gzip"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
rand = "0.8"
sha2 = "0.10"
sqlx = { version = "0.7", default-features = false, features = [
"runtime-tokio",
"tls-rustls",
"macros",
"chrono",
"sqlite",
"migrate",
] }
thiserror = "1.0"
tokio = { version = "1.38", features = ["rt-multi-thread", "macros", "signal"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json", "fmt"] }
tower = "0.4"
tower-cookies = "0.10"
tower-http = { version = "0.6", features = ["trace"] }
slug = "0.1.6"
url = "2"
uuid = { version = "1", features = ["v4"] }
webauthn-rs = { version = "0.5", features = ["danger-allow-state-serialisation"] }
webauthn-rs-proto = "0.5"
[dev-dependencies]
portpicker = "0.1"
reqwest = { version = "0.12", default-features = false, features = ["blocking", "cookies", "rustls-tls"] }
tempfile = "3.8"
once_cell = "1.19"
webauthn-authenticator-rs = { version = "0.5", features = ["softpasskey"] }
wiremock = "0.6"
[[test]]
name = "cli"
path = "tests/cli/main.rs"
harness = true
[profile.test]
# Run CLI tests serially to share single server instance
opt-level = 0
[[test]]
name = "server"
path = "tests/server/main.rs"
harness = true
[lints.clippy]
# Enable pedantic lints with lower priority so individual allows take precedence
pedantic = { level = "warn", priority = -1 }
# Pedantic lints to disable (too noisy or not applicable)
missing_errors_doc = "allow" # Would require extensive doc changes
missing_panics_doc = "allow" # Would require extensive doc changes
module_name_repetitions = "allow" # Common pattern in domain types (e.g., RoasterId in roasters)
must_use_candidate = "allow" # Too aggressive for this codebase
return_self_not_must_use = "allow" # Builder methods returning Self are common
needless_pass_by_value = "allow" # Generic T: ToString pattern and consumed value types
cast_possible_truncation = "allow" # Pagination values won't exceed u32 in practice
cast_sign_loss = "allow" # Database counts are non-negative
# Cherry-picked restriction lints (production safety)
dbg_macro = "deny" # Prevent debug macros in production
todo = "warn" # Flag TODOs for attention
unwrap_used = "warn" # Flag unwrap() for review; allow where justified
expect_used = "warn" # Flag expect() for review; allow where justified