[package]
edition = "2024"
rust-version = "1.85"
name = "kip"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pure thread-safe engineering expression evaluator for US imperial units"
documentation = "https://docs.rs/kip"
readme = "README.md"
keywords = [
"engineering",
"units",
"imperial",
"expression",
"evaluator",
]
categories = [
"science",
"mathematics",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/joneseysinno/kip"
[features]
default = [
"packs",
"parallel",
]
packs = [
"dep:serde",
"dep:toml",
]
parallel = ["dep:rayon"]
si-display = []
[lib]
name = "kip"
path = "src/lib.rs"
[[example]]
name = "sheet"
path = "examples/sheet.rs"
required-features = ["parallel"]
[[example]]
name = "sweep"
path = "examples/sweep.rs"
required-features = ["parallel"]
[[test]]
name = "builtin_exactness"
path = "tests/builtin_exactness.rs"
[[test]]
name = "concurrency"
path = "tests/concurrency.rs"
[[test]]
name = "conformance"
path = "tests/conformance.rs"
[[test]]
name = "eval_conformance"
path = "tests/eval_conformance.rs"
[[test]]
name = "fmt_conformance"
path = "tests/fmt_conformance.rs"
[[test]]
name = "hardening_conformance"
path = "tests/hardening_conformance.rs"
[[test]]
name = "lexer_conformance"
path = "tests/lexer_conformance.rs"
[[test]]
name = "loom_models"
path = "tests/loom_models.rs"
[[test]]
name = "pack_conformance"
path = "tests/pack_conformance.rs"
[[test]]
name = "parallel_conformance"
path = "tests/parallel_conformance.rs"
[[test]]
name = "parser_conformance"
path = "tests/parser_conformance.rs"
[[test]]
name = "property_conformance"
path = "tests/property_conformance.rs"
[[test]]
name = "registry_conformance"
path = "tests/registry_conformance.rs"
[[test]]
name = "remediation2_conformance"
path = "tests/remediation2_conformance.rs"
[[test]]
name = "remediation3_conformance"
path = "tests/remediation3_conformance.rs"
[[test]]
name = "remediation_conformance"
path = "tests/remediation_conformance.rs"
[[test]]
name = "symbolic_conformance"
path = "tests/symbolic_conformance.rs"
[[test]]
name = "unit_simplify"
path = "tests/unit_simplify.rs"
[[bench]]
name = "parallel_sheet"
path = "benches/parallel_sheet.rs"
harness = false
required-features = ["parallel"]
[[bench]]
name = "throughput"
path = "benches/throughput.rs"
harness = false
[dependencies.indexmap]
version = "2"
[dependencies.num-rational]
version = "0.4"
[dependencies.num-traits]
version = "0.2"
[dependencies.rayon]
version = "1"
optional = true
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.smallvec]
version = "1"
[dependencies.toml]
version = "0.8"
optional = true
[dependencies.unicode-ident]
version = "1"
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.loom]
version = "0.7"
[dev-dependencies.proptest]
version = "1"
[lints.clippy]
mod_module_files = "warn"
[lints.rust]
unsafe_code = "deny"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(loom)"]