Stable public facade for the Spanda language implementation. External embedders and legacy integrations should depend on spanda-core and import spanda_core::….
After lean-core Phases 1–20 and Platform Architecture Phase 8, spanda-core is intentionally thin:
spanda-driverhardware_verify — hardware compatibility checks for embedders and CLIpub use shimsproviders facade)First-party apps (spanda-cli, spanda-node, spanda-wasm, spanda-dap, spanda-llvm) import workspace crates directly and do not depend on spanda-core.
use spanda_core::{check, run, verify_compatibility, RunOptions, SpandaError};
use spanda_core::ast::Program;
use spanda_core::providers::ProviderRegistry;
Equivalent direct paths (preferred for in-repo code):
use spanda_driver::{check, run, RunOptions};
use spanda_error::SpandaError;
use spanda_ast::nodes::Program;
use spanda_providers::ProviderRegistry;
// Hardware verify stays on the facade for embedders:
use spanda_core::verify_compatibility;
These paths no longer exist on spanda_core:
| Removed | Use instead |
|---|---|
spanda_core::transport_live |
spanda_transport_routing::transport_live |
spanda_core::transport_mqtt |
spanda_transport_mqtt or spanda_transport_routing::live_bridges |
spanda_core::transport_dds |
spanda_transport_dds or spanda_transport_routing::live_bridges |
spanda_core::transport_websocket |
spanda_transport_websocket or spanda_transport_routing::live_bridges |
spanda_core::transport |
spanda_transport_routing::RoutingCommBus |
spanda_core::transport_wire |
spanda_transport::{encode_wire_value, decode_wire_value} |
spanda_core::transport_security |
spanda_transport::security |
spanda_core::transport_rclrs |
spanda_transport_ros2::rclrs |
spanda-core defaults to full (ota + fleet + certify + bridge). For a slimmer dependency graph:
spanda-core = { path = "...", default-features = false }
# optional: features = ["ota"], ["fleet"], ["certify"], ["bridge"], or ["full"]
| Feature | Enables |
|---|---|
ota |
Deploy agents, bundles, remote rollout (spanda-ota, spanda-deploy-http) |
fleet |
Fleet mesh, orchestrator, swarm coordinator (spanda-fleet) |
certify |
Certification proof and runtime gate shims (spanda-certify) |
bridge |
Python/C++ FFI registry shims (spanda-bridge, spanda-ffi) |
full |
All optional surfaces (default) |
Integration tests for fleet, OTA, providers, and certify live in the owning workspace crates. spanda-core/tests/ keeps facade integration tests and lean_core_shims.rs guards.