本期聚焦 Rust 在效能重寫、記憶體安全、跨語言整合、可觀測性與邊緣 AI 等領域的最新實務,同時收錄編譯器健全性研究與長時間執行服務的除錯經驗。
pnpm 12 以 Rust 重寫核心,安裝時間最高縮短 90%
pnpm 12 正式版將原本以 Node.js 與 TypeScript 建構的基礎改寫為 Rust,同時維持 pnpm 11 的指令、設定與 lockfile 格式。報導宣稱安裝時間最高可縮短 90%;對既有使用者而言,介面相容性有助於降低升級成本,但實際效能仍會依專案結構、快取狀態與執行環境而異。
AI 產生的 Unsafe Rust:通過測試不代表並行邏輯正確
作者請 AI 撰寫無鎖 SPSC 環形緩衝區,產出的程式不但首次編譯成功,也通過單元測試,卻藏有只會在大規模執行時浮現的 torn read。這個案例提醒團隊,涉及 unsafe、原子操作與記憶體排序的程式碼,不能只靠編譯器與一般測試背書,仍需要嚴格檢查同步不變量與並行模型。
實證研究檢視 rustc 型別健全性漏洞
一篇研究從實證角度分析 rustc 的 soundness bug,也就是編譯器接受原本不應通過的程式,進而可能破壞 Rust 所承諾的型別與記憶體安全保證。研究重點並非否定 Rust 的安全設計,而是說明官方編譯器本身仍是複雜軟體,需要持續進行漏洞蒐集、分類與驗證。
從 C 逐步翻譯成慣用 Rust
這項研究探討如何透過代理式翻譯,把廣泛用於作業系統、嵌入式平台及網路基礎設施的 C 程式逐步轉換成 Rust。題目以「忒修斯之船」比喻漸進式替換:除了讓程式可編譯,更重要的是在保留行為與資料表示需求的同時,逐步導入所有權、型別與慣用抽象。
以 OpenTelemetry 統一大規模 Rust 追蹤品質
Datadog 分享以 OpenTelemetry 為基礎打造具明確規範的 Rust 可觀測性函式庫,目標是讓取樣、上下文傳遞與 trace 品質在不同服務間維持一致。這類共用封裝可把組織層級的追蹤策略落實到程式碼,減少各團隊自行設定所造成的資料缺口與行為差異。
Rust SDK 支援 AWS IoT Greengrass 邊緣 AI 代理
AWS 介紹如何使用 IoT Greengrass Component SDK for Rust 建置邊緣 AI 代理。面對大量感測器持續產生資料的情境,在裝置端先進行異常分類,可降低把所有資料送往雲端所帶來的延遲、頻寬成本與連線依賴。
PDF Inspector 先判斷文件類型,再選擇處理流程
firecrawl/pdf-inspector 是用 Rust 開發的 PDF 檢查、分類與文字擷取函式庫,主要用途之一是區分掃描或圖片為主的文件,以及已包含文字層的 PDF。應用程式可依檢查結果決定是否需要 OCR,避免所有文件都走相同且可能較昂貴的處理路徑。
跨 Rust、C ABI 與 .NET Runtime 的非同步 FFI
這篇實作紀錄說明如何讓 Rust 的 Tokio 與 .NET 非同步執行環境透過 C ABI 協作。跨 runtime 的 async FFI 不只是函式簽章轉換,還必須處理非同步完成通知、生命週期、錯誤傳遞與資源釋放,是 Rust 與 C# 整合時值得參考的工程案例。
長時間執行的 Rust NVR 如何驗證記憶體洩漏
作者以 macOS 網路錄影機 Murlet 為例,檢查必須連續運作數週的服務是否存在記憶體洩漏,結果也確實找到了問題。對無人值守系統而言,短時間測試正常並不足夠;觀察長期記憶體趨勢與真實工作負載,才能發現緩慢累積、最後導致服務失效的資源問題。
Picodata 結合分散式資料庫與 Rust 外掛
Picodata 是支援 PostgreSQL 相容介面的分散式資料庫,並可透過 Rust 外掛加入 Redis 與 Cassandra CQL 協定相容能力。這種設計讓單一資料庫叢集能面向不同既有用戶端與工作負載,同時以外掛機制延伸協定及功能。