Chromium Weekly Digest Logo

Chromium Weekly Digest

Week 46 of 2025 (2025-11-09 to 2025-11-15)

Chromium Weekly: 2025 Week 46

Overview

This week in Chromium, development focused on significant internal refactoring, web platform advancements, and performance tuning. Out of 1184 total commits, 848 were analyzed, highlighting a major multi-day effort to remove Blink's `Supplementable` pattern for better performance and code health. Key user-facing changes include the removal of the non-standard `scroll-start` CSS property, the launch of the `ch-ua-high-entropy-values` permissions policy, and security enhancements to V8 and DNS-over-HTTPS.

Blink & Web Platform

  • ⚠️ BREAKING BREAKING CHANGE: A massive, multi-day refactoring initiative continued to remove the internal Supplementable pattern from core Blink classes, including Document, LocalFrame, HTMLVideoElement, and Page. This shift from a hash-table to an array-based model improves performance and simplifies the object model, but may require updates for projects that patch Blink's internals. (a0c6dba) (cdd031f) (4acc768) (0d09159) (209a1e8) (0f63769)
  • ⚠️ BREAKING BREAKING CHANGE: The non-standard scroll-start CSS property and its associated logic have been removed from the codebase. In a separate change, experimental CSS gap decoration properties were renamed to align with specifications, such as column-rule-outset becoming column-rule-inset. (c2d5dd2) (45245de)
  • The WebNN API continues to mature with groundwork for Windows support, where the browser will now attempt to automatically install the WinAppRuntime dependency. New command-line switches for testing and expanded test coverage for float16 data types were also added. (16ad7ec) (98e6bd5) (1ab6dab)
  • The ch-ua-high-entropy-values permissions policy has been launched, giving sites more granular control over User-Agent Client Hints. Additionally, the FedCmErrorAttribute feature for the FedCM API is now enabled by default. (e8fe18f) (bf364e8)
  • ⚠️ BREAKING BREAKING CHANGE: The setHitTestRegions API for the experimental HTML-in-canvas feature has been removed. Hit testing is now always-on and driven by CSS transforms, simplifying the API. (3a9e6b2)

Performance & Rendering

  • Tab switching performance is set to improve with the new WebContentsObserver::OnVisibilityWillChange method, which allows a renderer's process priority to be boosted *before* a page becomes visible. (8da687b)
  • Renderer memory usage was reduced by implementing a cache for memory-mapped font files, preventing redundant mapping of the same font. (d66e867) (5812124)
  • Two critical correctness fixes landed in the Viz compositor, one ensuring property change flags are correctly synced to prevent incorrect damage calculations, and another fixing a crash related to browser control animations. (5c3f0d5) (5fe41f2)

Security & Privacy

  • V8 introduced a new 'site familiarity' heuristic that may disable certain optimizations on unfamiliar websites. This trades a small amount of performance for increased security and stability, based on browsing history and Safe Browsing data. (9beb380)
  • Secure DNS (DNS-over-HTTPS) in 'automatic' mode is now more robust. If a user's configured DNS provider does not support DoH, Chrome can now fall back to a well-known provider to ensure DNS queries remain encrypted. (76cab8c) (984ddf8)
  • New infrastructure for Private UMA (PUMA) was added. This system will collect privacy-preserving metrics with reduced system information and upload them to a separate endpoint from standard UMA. (23fdfe8) (1d3ac16)

Deprecations & Code Health

  • ⚠️ BREAKING BREAKING CHANGE: Several features and APIs were removed, including the UI for ARC ADB Sideloading on ChromeOS, suggestion types for Autofill Plus Addresses, and the legacy Picture-in-Picture UI, which has been fully replaced by the modern 2024 controls. (6f1bec5) (69b5460) (272e694)
  • ⚠️ BREAKING BREAKING CHANGE: As part of Project Bedrock's goal to decouple core components, several observers were migrated away from the global BrowserList to a per-profile model, requiring updates to downstream code. (0e5b5d1) (1f82c9e) (2577a13)
  • ⚠️ BREAKING BREAKING CHANGE: The Plugin Service and AutofillDriver APIs were simplified. PluginService::GetPlugins is now synchronous, and AutofillDriver::ExtractForm was changed to ExtractFormWithField, requiring updates at all call sites. (f262f82) (5063b6a)
Daily Summaries (6)
← Back to all summaries