assay-engine 0.4.2

Standalone workflow + auth + dashboard HTTP server on PostgreSQL 18 + SQLite. Embeddable as a library, or run as a binary.
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"
name = "assay-engine"
version = "0.4.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Standalone workflow + auth + dashboard HTTP server on PostgreSQL 18 + SQLite. Embeddable as a library, or run as a binary."
readme = false
keywords = [
    "workflow",
    "auth",
    "oidc",
    "zanzibar",
    "postgres",
]
categories = [
    "asynchronous",
    "database",
    "web-programming::http-server",
]
license = "Apache-2.0"
repository = "https://github.com/developerinlondon/assay"
resolver = "2"

[features]
auth-jwt = ["assay-auth/auth-jwt"]
auth-oidc = ["assay-auth/auth-oidc"]
auth-oidc-provider = ["assay-auth/auth-oidc-provider"]
auth-passkey = ["assay-auth/auth-passkey"]
auth-password = ["assay-auth/auth-password"]
auth-session = ["assay-auth/auth-session"]
auth-zanzibar = ["assay-auth/auth-zanzibar"]
backend-postgres = [
    "assay-workflow/backend-postgres",
    "assay-auth/backend-postgres",
    "assay-vault?/backend-postgres",
]
backend-sqlite = [
    "assay-workflow/backend-sqlite",
    "assay-auth/backend-sqlite",
    "assay-vault?/backend-sqlite",
]
default = [
    "backend-postgres",
    "backend-sqlite",
    "server",
    "auth-jwt",
    "auth-session",
    "auth-password",
    "auth-passkey",
    "auth-oidc",
    "auth-oidc-provider",
    "auth-zanzibar",
    "vault",
]
server = ["dep:clap"]
vault = [
    "dep:assay-vault",
    "assay-vault/vault",
    "vault-kv",
    "vault-transit",
    "vault-collections",
    "vault-share",
    "vault-bitwarden-compat",
    "vault-sealing-shamir",
    "vault-audit-forwarding",
    "vault-dynamic-postgres",
]
vault-audit-forwarding = ["assay-vault?/vault-audit-forwarding"]
vault-bitwarden-compat = ["assay-vault?/vault-bitwarden-compat"]
vault-collections = ["assay-vault?/vault-collections"]
vault-dynamic-postgres = ["assay-vault?/vault-dynamic-postgres"]
vault-kv = ["assay-vault?/vault-kv"]
vault-sealing-hsm = ["assay-vault?/vault-sealing-hsm"]
vault-sealing-shamir = ["assay-vault?/vault-sealing-shamir"]
vault-share = ["assay-vault?/vault-share"]
vault-transit = ["assay-vault?/vault-transit"]

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

[[bin]]
name = "assay-engine"
path = "src/bin/assay-engine.rs"
required-features = ["server"]

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

[dependencies.anyhow]
version = "1"

[dependencies.assay-auth]
version = "0.3"

[dependencies.assay-dashboard]
version = "0.4"

[dependencies.assay-domain]
version = "0.2"

[dependencies.assay-vault]
version = "0.2"
optional = true
default-features = false

[dependencies.assay-workflow]
version = "0.3"

[dependencies.axum]
version = "0.8"

[dependencies.clap]
version = "4"
features = [
    "derive",
    "env",
]
optional = true

[dependencies.openssl]
version = "0.10"
features = ["vendored"]

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.sqlx]
version = "0.8"
features = [
    "runtime-tokio-rustls",
    "postgres",
    "sqlite",
]

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = ["full"]

[dependencies.toml]
version = "0.9"

[dependencies.tower-http]
version = "0.6"
features = [
    "cors",
    "trace",
]

[dependencies.tracing]
version = "0.1"

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

[dependencies.url]
version = "2"

[dependencies.uuid]
version = "1.18"
features = [
    "v7",
    "serde",
]

[dev-dependencies.base64]
version = "0.22"

[dev-dependencies.reqwest]
version = "0.13"
features = [
    "json",
    "rustls",
]
default-features = false

[dev-dependencies.tempfile]
version = "3"

[dev-dependencies.tokio]
version = "1"
features = [
    "full",
    "test-util",
]