Tor’s Arti 2.5.0 Released: Stable Counter Galois Onion20 days agohttps://blog.torproject.org/arti_2_5_0_released/Arti 2.5.0 发布,Counter Galois Onion 功能已标记为稳定功能。默认构建中现已启用拥塞控制以提高速度。包含对两个中等严重性 DoS 安全问题的修复。正在持续开发将 Arti 用作中继和目录授权服务器的功能。最低支持的 Rust 版本已提升至 Rust 1.91。包含整个代码库的错误修复、清理和改进。
From Julia to Rust: a differentiable tensor stack for scientific computing20 days agohttps://tensor4all.org/blog/introducing-tenferro-rs/由于Julia在大型代码库中存在运行时问题,因此从Julia转向Rust进行科学计算。tenferro-rs 是一个原生Rust密集张量库,支持自动微分、einsum运算、快速傅里叶变换(FFT)以及显式的CPU/CUDA后端。Rust的所有权系统和类型机制在编译期增强了代码正确性,使其特别适合由AI生成的代码。其设计将操作族、自动微分规则和后端实现分离为独立的crate,以提高可扩展性。支持PyTorch风格的即时自动微分和JAX风格的追踪变换,以处理动态形状计算。通过有限差分验证、性能基准测试和设计文档来确保代码的正确性。
Local Reasoning for Global Properties20 days agohttps://tratt.net/laurie/blog/2026/local_reasoning_for_global_properties.html作者曾认为AI不会从新编程语言中受益,因为AI能用许多现有语言生成代码。然而,AI常能生成良好的局部代码(如函数),但在全局程序理解上存在困难,导致不必要的防御性检查,可能引发指数级状态复杂度。如果AI的全局推理弱点持续存在,编程语言设计可能通过强制局部推理来确保全局属性,类似于Rust防止数据竞争的方式,从而提供帮助。Rust的所有权类型和Send/Sync特征能静态防止数据竞争,允许局部推理确保全局数据竞争自由,无需新的子语言。这表明编程语言能以最小程序员负担来强制执行令人惊讶的全局属性(如数据竞争自由)。AI生成的代码常包含过多的防御性检查,这些检查不必要、损害性能,并误导程序状态,导致指数级状态爆炸。未来的编程语言可能纳入效果系统等特性,以强制执行更多全局属性,这可能有益于AI代码生成和人工审查。尽管并非所有全局属性都能强制执行,但有证据表明,实用语言能提供更多保证,从而在AI时代改变语言设计的激励机制。
Curveball16 days agohttps://mightyburger.net/projects/curveball/Curveball是用于Neverball的曲线生成工具,提供网页应用和可下载的桌面应用版本,使用Rust语言编写。该工具旨在生成现有curve.c工具无法实现的复杂曲线,后者仅能生成圆弧。Neverball关卡由通过半空间交集定义的凸面刷子构成,采用Quake地图格式进行描述。Curveball使用chull包从点集计算凸包,从而简化由曲线顶点生成刷子的过程。其核心抽象概念是拉伸:将二维轮廓沿路径复制,并通过凸包处理顶点以形成刷子。沿路径定向轮廓涉及弗莱纳标架以处理旋转,并考虑挠率以避免问题。Curveball支持基于拉伸的曲线以及三种特殊类型:经典曲线、斜坡曲线和射线曲线,这些类型的生成方法存在部分重叠。该工具旨在简化Neverball关卡创建,通过轮廓和路径的组合实现多样化的曲线形状。
Astro 7.013 days agohttps://astro.build/blog/astro-7/Astro 7 版本发布聚焦于性能提升,实现了构建速度加快 15-61%。关键升级包括基于 Rust 的 .astro 编译器、通过 Sätteri 实现 Rust 驱动的 Markdown/MDX 流水线,以及基于队列的渲染引擎。与 Vite 8 及其 Rolldown 打包工具的集成增强了构建速度,大多数项目无需更改配置。引入了 src/fetch.ts 支持的高级路由功能,提供对 Astro 请求管道的完全控制,兼容 Hono 中间件。路由缓存功能已稳定,并为 Netlify、Vercel 和 Cloudflare 提供了实验性 CDN 缓存供应商支持。AI 增强功能包括后台开发服务器模式和 JSON 日志记录,以支持 AI 编码代理和结构化日志。基准测试显示各类站点构建时间显著减少,其中 Markdown 密集型页面的提升幅度最大。
Satteri: A Markdown pipeline forged in Rust for the JavaScript world13 days agohttps://satteri.bruits.org/一个用Rust构建的Markdown处理管道,可在JavaScript中使用。特点是在快速的Rust Markdown/MDX引擎上支持灵活的JavaScript插件。结合了两者的优点:速度和灵活性。可通过WebAssembly (WASM)在浏览器中试用,支持实时编辑和渲染。包含插件、MDX支持和AST检查的完整演练场。
Rewriting Bun in Rust12 days agohttps://simonwillison.net/2026/Jul/8/rewriting-bun-in-rust/Bun 已通过 AI 驱动的编码代理从 Zig 重写为 Rust,显著减少了内存相关的错误。这次重写得益于一套全面的 TypeScript 测试套件,它作为自动迁移的符合性基准。关键的工程技术包括动态工作流、试运行、对抗性审查以及基于流程的修复,而非手动代码编辑。Jarred Sumner 称赞 Zig 在 Bun 初期开发中的作用,但选择了 Rust 因其内存安全特性,如 RAII 和编译器对使用后释放错误的检查。重写大约花了 11 天的密集 AI 辅助工作,API 令牌的估算成本为 165,000 美元,由 Anthropic 资助。新的 Rust 版本已在 Claude Code 中运行近一个月,在 Linux 上启动速度提高了 10%,对用户的影响最小。该项目展示了高级语言模型如何实现之前被认为不可行的大规模软件重写。
Rust 1.97.011 days agohttps://blog.rust-lang.org/2026/07/09/Rust-1.97.0/Rust 1.97.0 稳定版发布公告,包含通过 rustup 的更新说明。符号重整 v0 默认启用,取代了传统的基于 Itanium 的方案。Cargo 现在支持拒绝警告,改善了 CI 工作流程和缓存效率。链接器输出不再默认隐藏,为调试显示警告信息。已稳定的 API 包括整数和 NonZero 类型的方法,以及常量上下文更新。
Cache-Conscious Data Layout in Rust: Field Zoning, False Sharing, 128-Byte Rule14 days agohttps://debasishg.github.io/blog/part1-cache-conscious-data-layout-in-rust/针对多线程数据结构中的伪共享问题,通过按写所有权和访问频率对字段进行分组来实现区域划分。采用对齐和填充策略,例如使用128字节对齐而非64字节,以避免邻行预取问题,并确保热点字段位于不同的缓存行上。使用 #[repr(C)] 强制字段顺序,防止编译器重排破坏缓存优化布局策略。避免在步长为1的访问模式中使用手动预取提示,因为这可能与硬件预取器竞争并损害性能。设计环形缓冲区容量时,需考虑缓存层级、工作集预算和突发数据吸收,而非随意采用整数容量。
Moving a Rust WebRTC SFU to thread-per-core: 70ms → 10ms P99.99 latency10 days agohttps://pulsebeam.dev/blog/moving-to-thread-per-core将 Rust WebRTC SFU 从 Tokio 的工作窃取模型迁移到线程每核(TPC)架构,使 P99.99 延迟从 70 毫秒降低至 10 毫秒,并提升了 25% 的容量。TPC 架构消除了不必要的异步通道,通过同步处理数据包来避免调度开销和优先级反转,从而改善了尾部延迟。基准测试显示,在高 CPU 负载下延迟保持稳定,TPC 即使在 80% 的 CPU 利用率下也能维持低抖动,增强了拥塞控制和流媒体质量。
PgDog (YC P25) Is Hiring a Founding Software Engineer7 days agohttps://www.ycombinator.com/companies/pgdog/jobs/uWymUYy-founding-software-engin...PgDog是一家专注于扩展PostgreSQL的初创企业,已获多家公司采用且目前正在招聘。该岗位涉及运用Rust语言、PostgreSQL数据库、基础设施及分布式系统技术,直接为客户构建并交付产品功能。理想的候选人需具备细节导向意识、测试驱动开发习惯、能熟练处理生产环境代码,并能在人工智能辅助与独立思考间取得平衡。职责范围涵盖漏洞修复、功能开发、路线图设计、客户对接以及人才招聘。工作内容包括从零开始使用Rust构建分布式数据库,时间将分配于漏洞修复、新功能开发和基础设施优化三方面。
In Praise of Exhaustive Destructuring8 days agohttps://antoine.vandecreme.net/blog/exhaustive-destructuring-praise/作者最初不喜欢Rust在解构结构体时必须列出所有字段或使用'..'的要求,觉得它不如TypeScript或Haskell方便。后来作者意识到,显式结构体解构(不使用'..'列出所有字段)通过强制在添加新字段时更新代码,增强了软件的安全性。向WeatherReading结构体添加'wind_speed'字段后,如果某个使用字段访问('.'语法)的函数未更新,可能会导致难以被编译器警告发现的错误。在函数参数或方法内部使用结构体解构时,如果遗漏新字段,会触发编译时错误,从而确保所有字段都被考虑在内。这种技术在多层级应用(如CRUD服务)中尤其有用,可以在添加或更改字段时确保一致性。观察到经常被一起解构的字段组,可能暗示需要将其重构为单独的结构体,以改进设计。
Show HN: OpenMarkdown – A Markdown editor you and your agent co-edit5 days agohttps://openmarkdown.dev/OpenMarkdown是一款本地优先、轻如羽毛、快速响应的Markdown编辑器,专为用户及其智能代理设计。它采用原生Rust核心,确保快速加载时间和原生级性能。编辑器不依赖AI;而是运行在用户现有的智能代理上,提供直接集成。文件以纯.md格式存储在用户磁盘上,避免数据库依赖和锁定,确保持久性和可移植性。智能代理可以像维基一样与文件交互,根据用户查询打开正确文件并导航至特定位置。功能包括代理辅助的文本高亮和重写,修改内容直接保存到磁盘。提供不同供应商选项,具有多样化速度和单点登录支持,月费价格各异。键盘快捷键如Ctrl+G和Cmd+P增强控制,无需菜单即可快速调用提示和文件导航。三种编辑模式(实时预览、纯源代码、纯净阅读)一键切换,并带有可见的语法着色标记。编辑器支持与智能代理协同规划,例如起草认证系统改造计划的示例所示。它通过不重新格式化文本来确保文件完整性,提供安全默认设置(如将删除文件移至废纸篓),且无需账户或云遥测。用户界面支持三语(中文、日文、英文),提供用于终端文件打开的CLI工具,并兼容标准Mac快捷键。
We're Building Postgres in Rust. Using the LLVM of Databases4 days agohttps://turso.tech/blog/a-new-modern-version-of-postgres-in-rustTurso 正在成为数据库领域的 LLVM,以 SQLite 作为第一个前端,Postgres 作为下一个。Turso 是 SQLite 在 Rust 中的现代重写版本,具备通过 MVCC 实现并发写入、丰富的类型系统以及自更新的物化视图等功能。该项目旨在构建一个兼容 Postgres 的数据库,采用现代架构,包括嵌入式浏览器支持和基于文件的操作。Turso 使用一种字节码语言(VDBE),并已演示了通过该字节码在浏览器中运行《毁灭战士》游戏。这一方法涉及将 Postgres SQL 编译为 Turso 的字节码,并将 pgmicro 作为官方项目并入 Turso。Turso 是开源的,拥有超过 260 名贡献者,通过严格的测试方法强调可靠性。FAQ 涵盖了兼容性、服务器支持、AI 贡献、开发进度以及通过 WASM 处理扩展等问题。
Battery packs: Let's talk about crates, baby4 days agohttps://smallcultfollowing.com/babysteps/blog/2026/07/15/battery-packs/“电池包”是围绕特定主题精心挑选的一系列crate,旨在帮助开发者无需深入研究即可选择高质量的crate。任何人都可以通过发布一个名为 X-battery-pack 的crate来创建电池包,并将其依赖项作为推荐内容。电池包包含依赖项、特性、模板以及结构化分类(例如“最多选择一个”或“任意数量选择”)。它们旨在解决新接触Rust的开发者面临的crate选择挑战,并促进互操作性和维护资金的筹集。风险可能包括电池包数量过多而导致拥挤,但它们的设计允许不断演进,以避免生态系统陷入停滞。
Claude Code uses Bun written in Rust nowa day agohttps://simonwillison.net/2026/Jul/19/claude-code-in-bun-in-rust/贾里德·萨姆纳宣布 Claude Code v2.1.181+ 采用 Rust 移植版的 Bun,使 Linux 启动速度提升 10%,用户几乎察觉不到变化。在 Claude Code 安装文件中发现的证据显示其使用了 Bun v1.4.0(macOS arm64 版),该版本截至文本日期尚未在 GitHub 上发布。Rust 版本的 Bun 已作为金丝雀版本提供,Claude 中的 563 个 Rust 源文件表明该版本已投入生产环境运行。