# 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-lua"
version = "0.5.6"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "General-purpose enhanced Lua runtime. Batteries-included scripting, automation, and web services."
homepage = "https://assay.rs"
readme = "README.md"
keywords = [
    "lua",
    "scripting",
    "automation",
    "runtime",
    "kubernetes",
]
categories = [
    "command-line-utilities",
    "development-tools::testing",
]
license = "MIT"
repository = "https://github.com/developerinlondon/assay"

[features]
cli = [
    "dep:clap",
    "dep:tracing-subscriber",
]
db = ["dep:sqlx"]
default = [
    "db",
    "server",
    "cli",
]
server = [
    "dep:http-body-util",
    "dep:hyper",
    "dep:hyper-util",
]

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

[[bin]]
name = "assay"
path = "src/main.rs"
required-features = ["cli"]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dependencies.anyhow]
version = "1"

[dependencies.axum]
version = "0.8.8"

[dependencies.clap]
version = "4.5.57"
features = ["derive"]
optional = true

[dependencies.data-encoding]
version = "2.10.0"

[dependencies.digest]
version = "0.10.7"

[dependencies.futures-util]
version = "0.3"

[dependencies.glob]
version = "0.3.3"

[dependencies.http-body-util]
version = "0.1"
optional = true

[dependencies.hyper]
version = "1"
features = [
    "http1",
    "server",
]
optional = true

[dependencies.hyper-util]
version = "0.1"
features = ["tokio"]
optional = true

[dependencies.include_dir]
version = "0.7.4"

[dependencies.jsonwebtoken]
version = "10.3.0"
features = ["rust_crypto"]

[dependencies.libc]
version = "0.2"

[dependencies.minijinja]
version = "2.15.1"

[dependencies.mlua]
version = "0.11.6"
features = [
    "lua55",
    "vendored",
    "async",
    "serialize",
]

[dependencies.rand]
version = "0.10.0"

[dependencies.regex-lite]
version = "0.1.9"

[dependencies.reqwest]
version = "0.13.2"
features = [
    "json",
    "rustls",
    "query",
]
default-features = false

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

[dependencies.serde_json]
version = "1.0.149"

[dependencies.serde_yml]
version = "0.0.12"

[dependencies.sha2]
version = "0.10.9"

[dependencies.sha3]
version = "0.10.8"

[dependencies.sqlx]
version = "0.8.6"
features = [
    "runtime-tokio-rustls",
    "postgres",
    "mysql",
    "sqlite",
    "any",
]
optional = true

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

[dependencies.tokio-tungstenite]
version = "0.28.0"
features = [
    "connect",
    "rustls-tls-webpki-roots",
]

[dependencies.toml]
version = "0.9.12"

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

[dependencies.tracing]
version = "0.1"

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

[dependencies.zeroize]
version = "1.8.2"

[dev-dependencies.tokio-test]
version = "0.4"

[dev-dependencies.wiremock]
version = "0.6.5"

[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true
