rutis 0.6.0

Cordis core paradigms in idiomatic Rust: plugin assembly, fiber lifecycle, typed service registry, dependency-driven reload
Documentation

rutis

Cordis 核心范式的 Rust 惯用实现(自 min-cordis 独立成库)。

五支柱

  1. 插件 = 装配单元:一次 apply,提供服务 / 监听 / 清理
  2. fiber = 生命周期容器:六态状态机 + 依赖门控 + 子树永久关闭 + 恰好一次清理
  3. 服务 = 类型键注册表 + 实例子树可见性 + isolate 作用域
  4. 事件总线 = 四分发语义(emit / parallel / serial / waterfall),实例事件独立派发与保序
  5. 依赖驱动重载:provider 卸载 → 消费者驱逐并自动重载

使用

[dependencies]
rutis = "0.6.0"

内核零 serde、零 unsafe,依赖仅 tokio / tokio-util / thiserror。设计与对拍文档见仓库 docs。

首次使用建议先读应用设计指南,再按开发手册实现。配套示例可在仓库中运行:cargo run -p rutis --example development_workflow。

0.6

会继续扩展的错误、诊断与观察类型标为 #[non_exhaustive],此后增加字段或变体不再是破坏性变更;EventOptions 改用 EventOptions::default().prepend(true) 构造。诊断新增同键 emit 积压(event_backlogs)。见 0.5 → 0.6 迁移说明。

0.5 事件接口

通过 EventKey<E> 统一默认、命名与实例通道;EventPattern<E> 支持带来源键的前缀订阅。SyncEvent 增加 bail_sync / waterfall_sync,同步终点可以借用当前调用栈。

见 0.3 → 0.5 迁移说明。

License

MIT(继承自 Cordis © Shigma)。