[package]
edition = "2024"
name = "gsm-core"
version = "0.4.45"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core types and platform abstractions for the Greentic messaging runtime."
readme = false
license = "MIT"
resolver = "2"
[features]
adaptive-cards = []
component-host = ["dep:wasmtime"]
default = ["adaptive-cards"]
directline_standalone = []
nats = ["dep:async-nats"]
proptest = ["dep:proptest"]
providers-bundle-tests = ["component-host"]
schemars = []
store_sqlite = ["dep:rusqlite"]
testkit = []
[lib]
name = "gsm_core"
path = "src/lib.rs"
[[example]]
name = "run_standalone"
path = "examples/run_standalone.rs"
[[example]]
name = "wasmtime_host"
path = "examples/wasmtime_host.rs"
required-features = ["component-host"]
[[test]]
name = "ac_validate_fail"
path = "tests/ac_validate_fail.rs"
[[test]]
name = "ac_validate_ok"
path = "tests/ac_validate_ok.rs"
[[test]]
name = "adaptivecards_canonical"
path = "tests/adaptivecards_canonical.rs"
[[test]]
name = "core_contracts"
path = "tests/core_contracts.rs"
[[test]]
name = "core_envelope"
path = "tests/core_envelope.rs"
[[test]]
name = "messagecard_schema"
path = "tests/messagecard_schema.rs"
[[test]]
name = "normalize_smoke"
path = "tests/normalize_smoke.rs"
[[test]]
name = "provider_capabilities"
path = "tests/provider_capabilities.rs"
[[test]]
name = "provider_install_store"
path = "tests/provider_install_store.rs"
[[test]]
name = "provider_ops"
path = "tests/provider_ops.rs"
[[test]]
name = "provider_registry"
path = "tests/provider_registry.rs"
[[test]]
name = "render_mode"
path = "tests/render_mode.rs"
[[test]]
name = "render_plan"
path = "tests/render_plan.rs"
[[test]]
name = "render_planner_golden"
path = "tests/render_planner_golden.rs"
[[test]]
name = "renderers_oauth"
path = "tests/renderers_oauth.rs"
[[test]]
name = "renderers_slack_snapshot"
path = "tests/renderers_slack_snapshot.rs"
[[test]]
name = "renderers_snapshot"
path = "tests/renderers_snapshot.rs"
[[test]]
name = "renderers_telegram_snapshot"
path = "tests/renderers_telegram_snapshot.rs"
[[test]]
name = "renderers_webex_snapshot"
path = "tests/renderers_webex_snapshot.rs"
[[test]]
name = "renderers_whatsapp_snapshot"
path = "tests/renderers_whatsapp_snapshot.rs"
[[test]]
name = "telemetry_limits_security"
path = "tests/telemetry_limits_security.rs"
[[test]]
name = "webchat_adaptive_cards"
path = "tests/webchat_adaptive_cards.rs"
[[test]]
name = "webchat_fault_injection"
path = "tests/webchat_fault_injection.rs"
[[test]]
name = "webchat_oauth_flow"
path = "tests/webchat_oauth_flow.rs"
[[test]]
name = "webchat_proactive"
path = "tests/webchat_proactive.rs"
[[test]]
name = "webchat_standalone_server"
path = "tests/webchat_standalone_server.rs"
[[test]]
name = "webchat_support"
path = "tests/webchat_support.rs"
[[test]]
name = "webchat_wc2"
path = "tests/webchat_wc2.rs"
[dependencies.anyhow]
version = "1"
[dependencies.async-nats]
version = "0.46"
optional = true
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
features = [
"macros",
"json",
"ws",
"tokio",
]
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1"
[dependencies.dashmap]
version = "6"
[dependencies.greentic-flow]
version = "0.4"
[dependencies.greentic-interfaces-host]
version = "0.4"
[dependencies.greentic-interfaces-wasmtime]
version = "0.4"
optional = true
[dependencies.greentic-pack-lib]
version = "0.4"
[dependencies.greentic-secrets-spec]
version = "0.4"
[dependencies.greentic-types]
version = "0.4"
[dependencies.gsm-telemetry]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.http]
version = "1"
[dependencies.jsonschema]
version = "0.40"
[dependencies.jsonwebtoken]
version = "10"
features = ["rust_crypto"]
[dependencies.metrics]
version = "0.24"
[dependencies.once_cell]
version = "1"
[dependencies.proptest]
version = "1"
optional = true
[dependencies.regex]
version = "1.12"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[dependencies.rusqlite]
version = "0.38"
features = ["bundled"]
optional = true
[dependencies.schemars]
version = "1"
features = [
"derive",
"derive",
]
[dependencies.secrets-core]
version = "0.4"
package = "greentic-secrets-core"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.serde_yaml_bw]
version = "2.4.1"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3"
features = [
"macros",
"parsing",
]
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"sync",
"time",
"sync",
"time",
"rt",
"macros",
]
[dependencies.tracing]
version = "0.1"
[dependencies.urlencoding]
version = "2"
[dependencies.uuid]
version = "1"
features = [
"v4",
"serde",
]
[dependencies.wasmtime]
version = "40"
features = ["component-model"]
optional = true
[dependencies.zip]
version = "7"
[dev-dependencies.axum]
version = "0.8"
[dev-dependencies.greentic-flow]
version = "0.4"
[dev-dependencies.insta]
version = "1"
features = [
"json",
"json",
]
[dev-dependencies.semver]
version = "1"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"sync",
"time",
"macros",
"rt",
"test-util",
]
[dev-dependencies.tower]
version = "0.5"
features = [
"util",
"limit",
"timeout",
]
[dev-dependencies.tower-http]
version = "0.6"
features = [
"cors",
"cors",
]
[dev-dependencies.tracing-appender]
version = "0.2"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"fmt",
"env-filter",
"std",
]
[dev-dependencies.tracing-test]
version = "0.2"
features = ["no-env-filter"]