capnproto-rust v0.22: 在 RPC 方法中使用 async/await
Cap'n Proto 是一种用于分布式系统的类型系统,以其高效的序列化和反序列化能力而闻名,号称 "比 Protocol Buffers 快很多倍"。capnproto-rust 是它的 Rust 实现,该项目包含了多个 crate(capnp、capnpc、capnp-futures 以及 capnp-rpc)。得益于 Rust 1.75 版本中的 “trait 方法返回 impl Trait” 特性,在 v0.22 版本中,支持在 RPC 方法实现中以符合 Rust 惯用语法的方式使用 async 和 await。
在之前的版本中,Cap'n Proto 的 Rust 代码生成工具会生成如下的 Trait:
pub mod foo {
trait Server {
fn bar(&mut self, foo::BarParams, foo::BarResults) -> Promise<(), Error>;
}
// ...(其他代码)
}
现在,可以生成更符合 Rust 习惯的代码:
pub mod foo {
trait Server {
fn bar(&self,
foo::BarParams,
foo::BarResults) -> impl Future<Output=Result<(), Error>> + '_;
}
// ...(其他代码)
}
完整的变更说明见:https://dwrensha.github.io/capnproto-rust/2025/10/27/0.22-release.html
Github: https://github.com/capnproto/capnproto-rust
rust-analyzer 2025-10-27 (v0.3.2658)
新增功能有:
- 解析脚本中的注释信息
- 对外暴露
addConfigurationAPI - 从 Chalk 切换到下一代 trait resolver
- 支持对基本类型进行导航
- 支持
#[cfg]中all、any和not的自动补全 - 将 flycheck 的
stdout和stderr日志输出到文件 - 新增“生成 trait 实现”辅助功能
- 新增“翻转范围表达式”辅助功能
- 新增“移除 else 分支”辅助功能
- 改进 fixture 支持
完整的变更内容见:https://rust-analyzer.github.io/thisweek/2025/10/27/changelog-299.html
axum-gate v1.0.0-rc.0 发布
axum-gate 是一个面向使用 Axum 框架的 Rust Web 应用的完整认证与授权解决方案,刚刚发布了 v1.0.0-rc.0。
核心功能:
- 类型安全的 JWT 身份认证,支持 Cookie 或 Bearer Token
- 支持用户组与权限的层级化 RBAC
- 开箱即用的登录/登出处理函数
- 多种存储后端支持(内存、SurrealDB、SeaORM)
- 内置审计日志与 Prometheus 监控指标
主要特性:
- Web 应用使用 Cookie 认证,API 使用 Bearer Token
- 基于确定性哈希的权限系统
- 角色层级结构,自动继承上级权限
- 可选的匿名访问支持,并自动注入用户上下文
- 默认配置符合生产环境安全标准
Github: https://github.com/emirror-de/axum-gate
--
From 日报小组 Yuan YQ
社区学习交流平台订阅:
评论区
写评论还没有评论