[package]
name = "sdml-core"
description = "Core Model for Simple Domain Modeling Language (SDML)"
version = "0.3.2"
authors = ["Simon Johnston <johnstonskj@gmail.com>"]
repository = "https://github.com/johnstonskj/rust-sdml.git"
license = "Apache-2.0"
readme = "README.md"
edition = "2021"
publish = true

[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
all-features = true
rustdoc-args = ["--html-in-header", "doc-src/header.html"]

[features]
default = ["serde", "terms"]
serde = ["dep:serde"]
terms = ["serde", "dep:serde_json", "dep:serde_regex"]
tree-sitter = ["dep:tree-sitter"]

[dependencies]
codespan-reporting = "0.11.1"
convert_case = "0.6"
language-tags = { version = "0.3.2", features = ["serde"] }
lazy_static = "1.5"
ordered-float = { version = "4.3", features = ["serde"] }
regex = "1.11.0"
rust_decimal = { version = "1.36.0", features = ["serde"] }
sdml-errors = { version = "0.3.3", path = "../sdml-errors" }
serde = { version = "1.0.210", features = ["derive"], optional = true }
serde_json = { version = "1.0.128", optional = true }
serde_regex = { version = "1.1", optional = true }
tracing = "0.1.40"
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
tree-sitter = { version = "0.23", optional = true }
url = { version = "2.5", features = ["serde"] }

[dev-dependencies]
pretty_assertions = "1.4"
