[package]
edition = "2021"
name = "zen-engine"
version = "2.0.1"
authors = ["GoRules Team <bot@gorules.io>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Business rules engine"
homepage = "https://gorules.io"
readme = "README.md"
license = "MIT"
repository = "https://github.com/gorules/zen.git"
[features]
arbitrary_precision = [
"serde_json/arbitrary_precision",
"zen-expression/arbitrary_precision",
"zen-types/arbitrary_precision",
"zen-tmpl/arbitrary_precision",
]
bindgen = ["rquickjs/bindgen"]
default = []
[lib]
name = "zen_engine"
path = "src/lib.rs"
doctest = false
[[test]]
name = "decision"
path = "tests/decision.rs"
[[test]]
name = "engine"
path = "tests/engine.rs"
[[test]]
name = "model"
path = "tests/model.rs"
[[test]]
name = "policy"
path = "tests/policy.rs"
[[test]]
name = "policy_cache"
path = "tests/policy_cache.rs"
[[test]]
name = "policy_dictionary"
path = "tests/policy_dictionary.rs"
[[test]]
name = "policy_driver"
path = "tests/policy_driver.rs"
[[test]]
name = "policy_instance_of"
path = "tests/policy_instance_of.rs"
[[test]]
name = "policy_nl"
path = "tests/policy_nl.rs"
[[test]]
name = "policy_output_types"
path = "tests/policy_output_types.rs"
[[test]]
name = "policy_runtime"
path = "tests/policy_runtime.rs"
[[test]]
name = "policy_table"
path = "tests/policy_table.rs"
[[test]]
name = "policy_toml"
path = "tests/policy_toml.rs"
[[test]]
name = "workspace_graph"
path = "tests/workspace_graph.rs"
[[test]]
name = "workspace_graph_dictionary"
path = "tests/workspace_graph_dictionary.rs"
[[test]]
name = "workspace_graph_enhance"
path = "tests/workspace_graph_enhance.rs"
[[bench]]
name = "engine"
path = "benches/engine.rs"
harness = false
[dependencies.ahash]
version = "0.8"
[dependencies.anyhow]
version = "1"
[dependencies.arc-swap]
version = "1"
[dependencies.base64]
version = "0.22"
[dependencies.downcast-rs]
version = "2.0"
features = [
"std",
"sync",
]
[dependencies.fixedbitset]
version = "0.5"
[dependencies.flate2]
version = "1"
features = ["rust_backend"]
[dependencies.json_dotpath]
version = "1"
[dependencies.nohash-hasher]
version = "0.2"
[dependencies.once_cell]
version = "1"
[dependencies.petgraph]
version = "0.8"
[dependencies.rquickjs]
version = "0.10"
features = [
"macro",
"loader",
"rust-alloc",
"futures",
"either",
"properties",
]
[dependencies.rust_decimal]
version = "1"
features = ["maths-nopanic"]
[dependencies.self_cell]
version = "1"
[dependencies.serde]
version = "1"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1"
features = []
[dependencies.serde_path_to_error]
version = "0.1"
[dependencies.strum]
version = "0.27"
features = ["derive"]
[dependencies.swc_common]
version = "23"
[dependencies.swc_ecma_ast]
version = "25"
[dependencies.swc_ecma_parser]
version = "41"
[dependencies.swc_ts_fast_strip]
version = "53.0.0"
[dependencies.thiserror]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"sync",
"time",
]
[dependencies.typed-arena]
version = "2"
[dependencies.zen-expression]
version = "2.0.1"
[dependencies.zen-tmpl]
version = "2.0.1"
[dependencies.zen-types]
version = "2.0.1"
[dependencies.zip]
version = "8"
features = ["deflate-flate2"]
default-features = false
[dev-dependencies.criterion]
version = "0.5"
features = ["async_tokio"]
[dev-dependencies.insta]
version = "1.43"
features = [
"yaml",
"redactions",
]
[dev-dependencies.mimalloc]
version = "0.1.52"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
]
[dev-dependencies.toml]
version = "0.8"
[target.'cfg(not(target_family = "wasm"))'.dependencies.async-trait]
version = "0.1"
[target.'cfg(not(target_family = "wasm"))'.dependencies.http]
version = "1.3"
[target.'cfg(not(target_family = "wasm"))'.dependencies.jsonschema]
version = "0.49"
[target.'cfg(not(target_family = "wasm"))'.dependencies.reqsign]
version = "0.20"
features = [
"aws",
"azure",
"google",
"default-context",
]
[target.'cfg(not(target_family = "wasm"))'.dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[target.'cfg(not(target_family = "wasm"))'.dependencies.sha2]
version = "0.10"
[target.'cfg(target_family = "wasm")'.dependencies.jsonschema]
version = "0.49"
default-features = false
[target.'cfg(target_family = "wasm")'.dependencies.rquickjs]
version = "0.10"
features = [
"macro",
"loader",
"rust-alloc",
"futures",
"either",
"properties",
"bindgen",
]