regorus 0.9.0

A fast, lightweight Rego (OPA policy language) interpreter
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "regorus"
version = "0.9.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A fast, lightweight Rego (OPA policy language) interpreter"
readme = "README.md"
keywords = [
    "interpreter",
    "no_std",
    "opa",
    "policy-as-code",
    "rego",
]
license = "MIT AND Apache-2.0 AND BSD-3-Clause"
repository = "https://github.com/microsoft/regorus"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
allocator-memory-limits = [
    "std",
    "mimalloc",
    "mimalloc/allocator-memory-limits",
]
arc = []
ast = []
azure-rbac = []
azure_policy = [
    "dep:jsonschema",
    "arc",
    "dashmap",
]
base64 = ["dep:data-encoding"]
base64url = ["dep:data-encoding"]
coverage = []
default = [
    "full-opa",
    "arc",
    "rvm",
]
full-opa = [
    "base64",
    "base64url",
    "coverage",
    "glob",
    "graph",
    "hex",
    "http",
    "jsonschema",
    "allocator-memory-limits",
    "mimalloc",
    "net",
    "opa-runtime",
    "regex",
    "semver",
    "std",
    "time",
    "uuid",
    "urlquery",
    "yaml",
]
glob = ["dep:globset"]
graph = []
hex = ["dep:data-encoding"]
http = []
jsonschema = ["dep:jsonschema"]
mimalloc = ["dep:mimalloc"]
net = ["dep:ipnet"]
no_std = ["lazy_static/spin_no_std"]
opa-no-std = [
    "arc",
    "base64",
    "base64url",
    "coverage",
    "graph",
    "hex",
    "no_std",
    "opa-runtime",
    "regex",
    "semver",
    "lazy_static/spin_no_std",
]
opa-runtime = []
opa-testutil = []
rand = ["dep:rand"]
regex = ["dep:regex"]
rego-extensions = []
rvm = [
    "dep:bincode",
    "dep:indexmap",
]
semver = ["dep:semver"]
std = [
    "rand/std",
    "rand/std_rng",
    "serde_json/std",
    "msvc_spectre_libs",
]
time = [
    "dep:chrono",
    "dep:chrono-tz",
]
urlquery = ["dep:url"]
uuid = ["dep:uuid"]
yaml = ["serde_yaml"]

[lib]
name = "regorus"
path = "src/lib.rs"
doctest = false

[[example]]
name = "regorus"
path = "examples/regorus.rs"
test = false
doctest = false
harness = false

[[test]]
name = "aci"
path = "tests/aci/main.rs"
test = false
harness = false

[[test]]
name = "arc"
path = "tests/arc.rs"

[[test]]
name = "execution_limits"
path = "tests/execution_limits.rs"

[[test]]
name = "kata"
path = "tests/kata/main.rs"
test = false
harness = false

[[test]]
name = "memory_limits"
path = "tests/memory_limits.rs"

[[test]]
name = "mod"
path = "tests/mod.rs"

[[test]]
name = "opa"
path = "tests/opa.rs"
test = false
harness = false
required-features = ["full-opa"]

[[bench]]
name = "aci_benchmark"
path = "benches/aci_benchmark.rs"
harness = false

[[bench]]
name = "compiled_policy_evaluation_benchmark"
path = "benches/evaluation/compiled_policy_evaluation_benchmark.rs"
harness = false

[[bench]]
name = "engine_evaluation_benchmark"
path = "benches/evaluation/engine_evaluation_benchmark.rs"
harness = false

[[bench]]
name = "regorus_benchmark"
path = "benches/regorus_benchmark.rs"
harness = false

[[bench]]
name = "schema_validation_benchmark"
path = "benches/schema_validation_benchmark.rs"
harness = false
required-features = ["azure_policy"]

[dependencies.anyhow]
version = "1.0.45"
default-features = false

[dependencies.bincode]
version = "2.0.1"
features = [
    "alloc",
    "serde",
]
optional = true
default-features = false

[dependencies.chrono]
version = "0.4.40"
optional = true

[dependencies.chrono-tz]
version = "0.10.1"
optional = true

[dependencies.dashmap]
version = "6.1"
optional = true
default-features = false

[dependencies.data-encoding]
version = "2.8.0"
features = ["alloc"]
optional = true
default-features = false

[dependencies.globset]
version = "0.4.16"
features = ["simd-accel"]
optional = true
default-features = false

[dependencies.indexmap]
version = "2.12.1"
features = ["serde"]
optional = true
default-features = false

[dependencies.ipnet]
version = "2.11.0"
optional = true
default-features = false

[dependencies.jsonschema]
version = "0.30.0"
optional = true
default-features = false

[dependencies.lazy_static]
version = "1.4.0"
default-features = false

[dependencies.mimalloc]
version = "2.2.6"
optional = true
package = "regorus-mimalloc"

[dependencies.msvc_spectre_libs]
version = "0.1"
features = ["error"]
optional = true

[dependencies.num-bigint]
version = "0.4"
default-features = false

[dependencies.num-traits]
version = "0.2"
default-features = false

[dependencies.rand]
version = "0.9.0"
features = ["thread_rng"]
optional = true
default-features = false

[dependencies.regex]
version = "1.11.1"
optional = true
default-features = false

[dependencies.semver]
version = "1.0.25"
optional = true
default-features = false

[dependencies.serde]
version = "1.0.150"
features = [
    "derive",
    "rc",
    "alloc",
]
default-features = false

[dependencies.serde_json]
version = "1.0.89"
features = ["alloc"]
default-features = false

[dependencies.serde_yaml]
version = "0.9.16"
optional = true
default-features = false

[dependencies.spin]
version = "0.9.8"
features = [
    "mutex",
    "spin_mutex",
]
default-features = false

[dependencies.thiserror]
version = "2.0"
default-features = false

[dependencies.url]
version = "2.5.4"
optional = true

[dependencies.uuid]
version = "1.15.1"
features = [
    "v4",
    "fast-rng",
]
optional = true
default-features = false

[dev-dependencies.anyhow]
version = "1.0.45"

[dev-dependencies.cfg-if]
version = "1.0.0"

[dev-dependencies.clap]
version = "4.5.53"
features = ["derive"]

[dev-dependencies.criterion]
version = "0.8"

[dev-dependencies.num_cpus]
version = "1.16"

[dev-dependencies.prettydiff]
version = "0.9.0"
default-features = false

[dev-dependencies.serde_yaml]
version = "0.9.16"

[dev-dependencies.test-generator]
version = "0.3.1"

[dev-dependencies.walkdir]
version = "2.3.2"

[build-dependencies.anyhow]
version = "1.0"

[profile.release]
lto = true
codegen-units = 1
debug = 2