SQLx 0.9.0 发布:新增 sqlx.toml 与更严格 SQL 安全机制
重要公告
新的 GitHub 组织
- SQLx 仓库将转移到新的 GitHub 组织:https://github.com/transact-rs/
- 原因:SQLx 已不再由 LaunchBadge, LLC. 拥有和维护,现在由核心作者集体所有
- 这一变更使所有权更加明确,并允许邀请外部协作者
移除 Cargo.lock 跟踪
- Git 不再跟踪 Cargo.lock 文件
- CI 将默认使用所有依赖项的最新版本进行测试
cargo install --locked sqlx-cli将不再工作- 需要可重现构建的用户应维护自己的 lockfile
版本亮点
新增运行时支持
- 支持 smol 和 async-global-executor 运行时,作为已弃用的 async-std 的继任者
sqlx.toml 配置文件
- 新增配置文件支持,便于实现多数据库或多租户设置
- 允许全局类型覆盖,简化自定义类型和第三方库的使用
原文链接:https://github.com/transact-rs/
Edge Python:13000行 Rust 打造的 WASM Python 编译器
作者分享了一个用 13000 行纯 Rust(no_std)代码写成的 Python 编译器项目 Edge Python,目标是把 Python 子集编译成约 170KB 的 WASM 模块,在浏览器、Cloudflare Workers、Wasmtime 等环境里运行。
项目亮点
- 异步模型很特别:把调度器移进虚拟机,允许挂起点从普通
def或模块顶层触发,而不必让async/await污染整条调用链 - 结构化并发内建:提供
gather、with_timeout、run、cancel等原语,并支持确定性虚拟时钟,方便测试并发逻辑 - 编译器实现很硬核:字节码采用 SSA 版本化并在控制流汇合点使用 Phi 节点,解析器则是手写 Pratt parser 直接生成字节码
- 面向真实场景:项目已经拿到赞助,希望在客户端执行数千行 Python 代码,以降低延迟和算力成本
这个项目既有“编译器玩具变真项目”的传播性,也有相当扎实的技术含量,放在今天的 Rust 生态里很吸睛。
原文链接:https://www.reddit.com/r/rust/comments/1tou27c/13k_lines_of_rust_later_from_toy_compiler_to/
Pingora - Cloudflare 开源的高性能网络代理框架
项目简介
Pingora 是一个用 Rust 语言开发的框架,用于构建快速、可靠和可编程的网络系统。该项目已经过实战检验,多年来每秒处理超过 4000 万次互联网请求。
核心特性
- 异步 Rust 架构:提供快速可靠的 HTTP 1/2 端到端代理
- 多 TLS 支持:支持 OpenSSL、BoringSSL、s2n-tls 或 rustls(实验性)
- 协议支持:支持 gRPC 和 WebSocket 代理
- 平滑重载:支持优雅的服务重启
- 灵活的负载均衡:可自定义负载均衡和故障转移策略
- 可观测性:支持多种监控工具
使用场景
- 安全优先:相比 C/C++ 服务,Pingora 提供更好的内存安全性
- 性能敏感:快速高效的性能表现
- 高度定制:提供高度可编程的 API 接口
主要组件
- pingora-core:定义协议、功能和基本特性
- pingora-proxy:构建 HTTP 代理的逻辑和 API
原文链接:https://github.com/cloudflare/pingora
Current - 基于浏览器的文件分享工具
作者向 Rust 社区分享了自己开发的新工具 Current。
关键要点
项目介绍:
- 这是一个基于浏览器的文件分享 Web 应用
- 使用 iroh 库及其点对点(P2P)网络功能构建
- 主要用途是在设备之间传输文件
目标场景:
- 专门设计用于创意团队成员之间传输大型视频文件
- 也可用于其他文件传输需求
开发状态:
- 这是开发者使用 iroh 构建的多个工具中第一个准备公开分享的项目
- 开发者希望获得社区对工具本身和技术文档写作方面的反馈
原文链接:https://www.reddit.com/r/rust/comments/1tpend9/building_current_a_browserbased_file_sharing_tool/
--
From 日报小组 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论