[workspace]
members = [".", "cli"]
default-members = [".", "cli"]
resolver = "3"

[workspace.lints.rust]
unsafe_code = "forbid"

[workspace.package]
rust-version = "1.88"
edition = "2024"

[workspace.dependencies]
chrono = { version = "0.4.42", features = ["serde"]}
serde = { version = "1.0.228", features = ["derive"] }
schemars = { version = "0.9", default-features = false, features = ["derive", "chrono04"] }
itertools = "0.14.0"

[package]
name = "grid-tariffs"
version = "0.15.1"
edition = "2024"
license = "MIT"
description = "Grid tariffs"
repository = "https://git.spotpilot.io/spotpilot/grid-tariffs"

[dependencies]
chrono.workspace = true
chrono-tz = { version = "0.10.4", default-features = false }
indexmap = "2.12.0"
schemars = { workspace = true, optional = true }
serde.workspace = true
thiserror = { version = "2.0.17", default-features = false }
itertools.workspace = true

[features]
schemars = ["dep:schemars"]

[dev-dependencies]
serde_json = "1.0.145"
