soma_provider_adapters/lib.rs
1// Render per-item feature-requirement badges when rustdoc runs on nightly with
2// `--cfg docsrs` (docs.rs posture; locally via `cargo xtask doc --docsrs-cfg`).
3// Inert under the stable CI doc gate: stable rustdoc never sets `docsrs`.
4#![cfg_attr(docsrs, feature(doc_auto_cfg))]
5//! Reusable, product-neutral implementations of `soma-provider-core`
6//! contracts, plus feature-gated bridges onto other shared engines
7//! (`soma-openapi`, `soma-codemode`, `soma-gateway`). See plan section 3.9
8//! and PR10's deviation notes (in this crate's individual module docs) for
9//! the reasoning behind what did and did not move here from soma-service.
10//!
11//! No module here may depend on a `crates/soma/*` or `apps/*` crate under
12//! any feature — `cargo tree -p soma-provider-adapters --all-features` must
13//! stay shared-only.
14
15#![forbid(unsafe_code)]
16
17pub mod error;
18pub mod manifest_file;
19
20#[cfg(feature = "sidecar")]
21pub mod sidecar;
22
23#[cfg(feature = "static-echo")]
24pub mod static_rust;
25
26#[cfg(feature = "ai-sdk")]
27pub mod ai_sdk;
28
29#[cfg(feature = "python")]
30pub mod python;
31#[cfg(feature = "python")]
32mod python_bridge;
33
34#[cfg(feature = "wasm")]
35pub mod wasm;
36
37#[cfg(feature = "openapi")]
38pub mod openapi;
39
40#[cfg(feature = "codemode")]
41pub mod codemode;
42
43#[cfg(feature = "gateway")]
44pub mod gateway;
45
46/// Crate version from Cargo metadata.
47pub const VERSION: &str = env!("CARGO_PKG_VERSION");