treetop-core 0.0.21

Core library for Treetop, a Cedar policy engine implementation.
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 = "2024"
rust-version = "1.93.1"
name = "treetop-core"
version = "0.0.21"
build = "build.rs"
include = [
    "/src/**",
    "/benches/**",
    "/docs/**",
    "/examples/**",
    "/testdata/**",
    "/Cargo.lock",
    "/Cargo.toml",
    "/Changelog.md",
    "/LICENSE",
    "/README.md",
    "/RELEASING.md",
    "/build.rs",
    "/build_support.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core library for Treetop, a Cedar policy engine implementation."
documentation = "https://docs.rs/treetop-core/latest/treetop_core/"
readme = "README.md"
keywords = [
    "cedar",
    "policy",
    "authorization",
    "access-control",
]
categories = ["authentication"]
license = "MIT"
repository = "https://github.com/treetop-policy-engine/treetop-core"

[features]
bench-internal = []
default = []
observability = []

[lib]
name = "treetop_core"
path = "src/lib.rs"

[[example]]
name = "opentelemetry_tracing"
path = "examples/opentelemetry_tracing.rs"
required-features = ["observability"]

[[example]]
name = "policy_counter_sink"
path = "examples/policy_counter_sink.rs"

[[example]]
name = "prometheus_sink"
path = "examples/prometheus_sink.rs"
required-features = ["observability"]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.arc-swap]
version = "1"

[dependencies.cedar-policy]
version = "=4.12.0"

[dependencies.humantime]
version = "2"

[dependencies.regex]
version = "1.12"

[dependencies.serde]
version = "1.0"
features = [
    "derive",
    "rc",
]

[dependencies.serde_json]
version = "1.0"

[dependencies.sha2]
version = "0.11"

[dependencies.thiserror]
version = "2.0"

[dependencies.tracing]
version = "0.1"

[dependencies.utoipa]
version = "5.4.0"

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

[dev-dependencies.gungraun]
version = "0.19.4"

[dev-dependencies.insta]
version = "1"
features = [
    "json",
    "serde",
    "redactions",
]

[dev-dependencies.serial_test]
version = "4"

[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
    "env-filter",
    "fmt",
]

[dev-dependencies.yare]
version = "3.0"