[package]
name = "nanosql"
version = "0.11.0"
edition = "2021"
authors = ["Arpad Goretity 'H2CO3' <arpad.goretity@gmail.com>"]
description = "Tiny, strongly-typed data mapper for SQLite"
license = "MIT"
documentation = "https://docs.rs/nanosql"
homepage = "https://h2co3.github.io/nanosql"
repository = "https://github.com/H2CO3/nanosql"

[dependencies]
rusqlite = { version = "0.39", features = ["modern_sqlite", "fallible_uint"] }
thiserror = "2.0"
ordered-float = { version = "5.3", optional = true }
chrono = { version = "0.4", optional = true }
uuid = { version = "1.23", optional = true }
serde_json = { version = "1.0.149", optional = true }
ptree = { version = "0.5.2", optional = true, default-features = false }
nanosql_macros = { path = "../nanosql_macros", version = "0.11.0", optional = true }
mime = { version = "0.3.17", optional = true }

[dev-dependencies]
compiletest_rs = "0.11.2"

[features]
default = ["derive", "expr-check"]
derive = ["dep:nanosql_macros"]
expr-check = ["nanosql_macros/expr-check"]
not-nan = ["dep:ordered-float"]
chrono = ["dep:chrono", "rusqlite/chrono"]
uuid = ["dep:uuid", "rusqlite/uuid"]
json = ["dep:serde_json", "rusqlite/serde_json"]
pretty-eqp = ["dep:ptree"]
mime = ["dep:mime"]

[[example]]
name = "realistic"
test = true
harness = false

[[example]]
name = "derive"
test = true
harness = false

[[example]]
name = "indexes"
test = true
harness = false

[[example]]
name = "foreign_key"
test = true
harness = false

[[example]]
name = "unique_and_check"
test = true
harness = false
