<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl" -->

---
title: Servo 0.4 hits 558 commits, Polonius borrow checker...
description: Servo 0.4.0 dropped this week with 558 commits — the most active single month in the project's history — bringing real-world site compatibility, a 23% canvas...
canonical: https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Servo 0.4 hits 558 commits, Polonius borrow checker nears nightly stabilization | daily.dev
og:description: Servo 0.4.0 dropped this week with 558 commits — the most active single month in the project's history — bringing real-world site compatibility, a 23% canvas...
og:url: https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl
og:image: https://api.daily.dev/og/posts/JVWJ98wkL.png
og:image:alt: Servo 0.4 hits 558 commits, Polonius borrow checker nears nightly stabilization
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Servo 0.4 hits 558 commits, Polonius borrow checker nears nightly stabilization

**[Rust Digest](https://daily.dev/sources/rust_digest)** · 5 min read · 2 upvotes · 0 comments

## Summary

Servo 0.4.0 dropped this week with 558 commits — the most active single month in the project's history — bringing real-world site compatibility, a 23% canvas power reduction, and several SpiderMonkey CVE patches. Polonius, Rust's long-awaited improved borrow checker, is close enough to nightly that the team is talking 3-6 months to stabilization, with only 1.4% average compile time regression across 20,000 crates. The Rust compiler itself got a detailed July performance report showing 5.59% mean wall-time reduction and a 37.92% rustdoc speedup. On the ecosystem side, the Rust Commercial Network crossed 50 participating companies two months after launch, and Ferrocene 26.05.0 added a new qualified aarch64 target for software-defined vehicles.

## Content

**TLDR:** Servo 0.4.0 dropped this week with 558 commits — the most active single month in the project's history — bringing real-world site compatibility, a 23% canvas power reduction, and several SpiderMonkey CVE patches. Polonius, Rust's long-awaited improved borrow checker, is close enough to nightly that the team is talking 3-6 months to stabilization, with only 1.4% average compile time regression across 20,000 crates. The Rust compiler itself got a detailed July performance report showing 5.59% mean wall-time reduction and a 37.92% rustdoc speedup. On the ecosystem side, the Rust Commercial Network crossed 50 participating companies two months after launch, and Ferrocene 26.05.0 added a new qualified aarch64 target for software-defined vehicles.

---

## Servo 0.4.0 ships 558 commits, CVE patches, and 23% canvas power reduction

Servo 0.4.0 covers all of June 2026 and is the project's most active single month ever. Real-world rendering improved noticeably for lichess.org, Speedtest.net, Zulip, and Google Photos. The release patches multiple SpiderMonkey CVEs, fixes an XSS bug in file:/// directory listings, and adds constant-time operations for RSA and ML-DSA. A new NoGC marker type uses Rust's type system to catch GC-related panics at compile time rather than runtime, which also opens optimization paths. Layout microbenchmarks are up to 10% faster and BoxFragment is 17% smaller in memory. [Read more](https://daily.dev/posts/JG558hP6R)

## Polonius borrow checker approaching nightly stabilization with 1.4% average compile overhead

Polonius, the replacement for Rust's current borrow checker, is close enough to ship that the team is projecting 3-6 months to nightly stabilization pending soundness fixes and performance validation. The current checker is overly conservative — it incorrectly extends mutable reference lifetimes across match arms and similar patterns. Testing across 20,000 popular crates showed only a 1.4% average compile time increase, with 75% of crates seeing under 2% regression. If you've been working around false-positive borrow errors, this is worth tracking. [Read more](https://daily.dev/posts/LLPxLtaJ6)

## Rust compiler performance report: 5.59% wall-time reduction, rustdoc 37.92% faster

The July 2026 compiler performance update covers December 2025 through July 2026. The headline numbers: 5.59% mean wall-time reduction overall, rustdoc down 37.92% thanks to impl processing optimizations and smarter sort key generation. Clippy got 10-30% runtime reduction by eliminating no-op virtual dispatch calls for lint visitor methods. The new trait solver dropped one benchmark from 27 seconds to under 1 second. AST expression nodes shrank from 72 to 64 bytes, yielding over 10% wall-time reductions on AST-heavy benchmarks. Separately, Clippy is also getting roughly 20% faster in the next release. [Read more](https://daily.dev/feed-by-ids?id=rsrJhR5XG&id=9JZGm0zpM)

## GitHub's Blackbird code search hits 45 GiB/s case-folding by removing an early-exit branch

GitHub engineers published the internals of their Blackbird code search case-folding pipeline, which indexes 480TB of source code. The counterintuitive finding: removing an early-exit branch that stopped at the first non-ASCII byte — and making the loop entirely branch-free — let LLVM auto-vectorize it, yielding a 15x speedup over the naive approach. The full design uses a compact 1776-byte Unicode lookup table and a decode-free fold technique that performs UTF-8 case folding as direct byte arithmetic without decoding to code points. The result is open-sourced as the casefold Rust crate. [Read more](https://daily.dev/posts/0Kmr0GljO)

---

## Also notable

- **Ferrocene 26.05.0 adds qualified aarch64-rhivos2-linux-gnu target for software-defined vehicles:** Ferrocene 26.05.0 (TÜV SÜD-qualified, ISO 26262 ASIL D / IEC 61508 SIL 3) adds a new qualified aarch64-rhivos2-linux-gnu target built with Red Hat for software-defined vehicle stacks, a #[warn(ferrocene::unvalidated)] lint for tracking certified vs. uncertified code in the IDE, and certified core::fmt and panic!() support; it incorporates upstream Rust 1.93.0 through 1.95.0 and is priced at €25/month per user. [Read more](https://daily.dev/posts/ylnKb994l)
- **ripgrep 15.2.0 musl binary segfaults on searches across ~1.8M files due to mallocng heap corruption:** A confirmed bug in ripgrep 15.2.0's x86_64-unknown-linux-musl binary causes occasional SIGSEGV crashes inside musl's mallocng allocator during calloc from opendir when searching trees with roughly 1.8M files at high concurrency; the bug was first discovered in the rg binary bundled with OpenAI Codex. [Read more](https://daily.dev/posts/VFzYZfFeM)
- **urandom forks rand crate, achieves 31% higher Xoshiro f64 throughput via specialized next_f64:** The urandom crate forks rand with a sealed Rng trait that lets generators and algorithms specialize for each other, yielding ~31% higher throughput for Xoshiro f64 generation, a single Lemire multiply-and-reject path for unbiased integer sampling, and stronger reproducibility guarantees across architectures — the trade-off is a smaller ecosystem and no support for plugging in arbitrary generators. [Read more](https://daily.dev/posts/RPDG7mdoV)
- **serde(flatten) buffers all undeclared fields during deserialization, causing non-obvious overhead:** Using #[serde(flatten)] in Rust causes all fields not explicitly declared on the outer struct to be buffered in memory during deserialization — a non-obvious cost that can matter significantly depending on data size and usage patterns. [Read more](https://daily.dev/posts/XWa6NHsib)
- **DataFusion runs PageRank on a 1B-edge graph in 5GB RAM using sort-merge joins and disk spillover:** A developer ran PageRank and Weakly Connected Components on billion-scale graphs using Apache DataFusion in Rust — 5GB RAM for PageRank on a 1B-edge graph, 10GB for WCC on a 2B-edge graph — completing the Twitter MPI graph (52M nodes, ~2B edges) in about 40 minutes on 2 CPU cores, with code open-sourced at github.com/SemyonSinchenko/graphframes-rs. [Read more](https://daily.dev/posts/YSjhw28f4)

## Similar posts on daily.dev

- [How to speed up the Rust compiler in September 2026](https://daily.dev/posts/how-to-speed-up-the-rust-compiler-in-september-2026-gftvtz9fk) · Lobsters · 1 upvotes · 0 comments
- [June in Servo: real world compat, media queries, SharedWorker, and more](https://daily.dev/posts/june-in-servo-real-world-compat-media-queries-sharedworker-and-more-wihizhsml) · Hacker News · 0 upvotes · 0 comments

---

Tags: [#rust](https://daily.dev/tags/rust), [#webassembly](https://daily.dev/tags/webassembly)

[View this post on daily.dev](https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"DiscussionForumPosting","mainEntityOfPage":"https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl","headline":"Servo 0.4 hits 558 commits, Polonius borrow checker nears nightly stabilization","text":"Servo 0.4.0 dropped this week with 558 commits — the most active single month in the project's history — bringing real-world site compatibility, a 23% canvas power reduction, and several SpiderMonkey CVE patches. Polonius, Rust's long-awaited improved borrow checker, is close enough to nightly that the team is talking 3-6 months to stabilization, with only 1.4% average compile time regression across 20,000 crates. The Rust compiler itself got a detailed July performance report showing 5.59% mean wall-time reduction and a 37.92% rustdoc speedup. On the ecosystem side, the Rust Commercial Network crossed 50 participating companies two months after launch, and Ferrocene 26.05.0 added a new qualified aarch64 target for software-defined vehicles.","url":"https://daily.dev/posts/servo-0-4-hits-558-commits-polonius-borrow-checker-nears-nightly-stabilization-jvwj98wkl","datePublished":"2026-08-03T04:18:04.991Z","dateModified":"2026-09-13T21:09:46.347Z","author":{"@type":"Organization","name":"Rust Digest","logo":"https://media.daily.dev/image/upload/s--YNSg30Q0--/f_auto,q_auto/v1773839405/logos/rust_digest?_a=BAMAMiiu0","url":"https://daily.dev/sources/rust_digest"},"interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"isPartOf":{"@type":"WebPage","url":"https://daily.dev/sources/rust_digest","name":"Rust Digest"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Rust Digest","item":"https://daily.dev/sources/rust_digest"},{"@type":"ListItem","position":3,"name":"Servo 0.4 hits 558 commits, Polonius borrow checker nears nightly stabilization"}]}
```

