[package]
edition = "2024"
rust-version = "1.85"
name = "expr-lang"
version = "2.1.0"
authors = ["@jdx"]
build = false
include = [
"/CHANGELOG.md",
"/LICENSE",
"/README.md",
"/compat/cases.tsv",
"/compat/errors.tsv",
"/examples/**/*.rs",
"/MIGRATION.md",
"/src/**/*.pest",
"/src/**/*.rs",
"/tests/**/*.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Implementation of expr language in Rust"
homepage = "https://github.com/jdx/expr.rs"
documentation = "https://docs.rs/expr-lang"
readme = "README.md"
license = "MIT"
repository = "https://github.com/jdx/expr.rs"
[features]
base64 = ["dep:base64"]
default = [
"base64",
"json",
"regex",
"temporal",
]
json = [
"dep:serde_json",
"base64",
]
regex = ["dep:regex"]
serde = [
"dep:serde",
"indexmap/serde",
"chrono?/serde",
"chrono-tz?/serde",
]
temporal = [
"dep:chrono",
"dep:chrono-tz",
"dep:iana-time-zone",
"dep:regex",
]
[lib]
name = "expr"
path = "src/lib.rs"
[[example]]
name = "expr-bench"
path = "examples/expr-bench.rs"
[[test]]
name = "go_compat"
path = "tests/go_compat.rs"
[[test]]
name = "panic_free"
path = "tests/panic_free.rs"
[dependencies.base64]
version = "0.23"
optional = true
[dependencies.chrono]
version = "0.4"
optional = true
[dependencies.chrono-tz]
version = "0.10"
optional = true
[dependencies.iana-time-zone]
version = "0.1"
optional = true
[dependencies.indexmap]
version = "2"
[dependencies.log]
version = "0.4"
[dependencies.pest]
version = "2"
[dependencies.pest_derive]
version = "2"
[dependencies.regex]
version = "1"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1"
features = ["preserve_order"]
optional = true
[dev-dependencies.proptest]
version = "1"
[dev-dependencies.serde]
version = "1"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.test-log]
version = "0.2"
[profile.dev]
debug = 1