Chromium Weekly Digest Logo

Chromium Weekly Digest

Week 7 of 2026 (2026-02-08 to 2026-02-13)

Chromium Weekly: 2026 Week 7

Overview

An exceptionally active week saw over 2,925 commits, with over 2,230 analyzed for developer impact. The period was marked by a wave of breaking changes across core C++, UI, and platform-specific APIs, requiring significant attention from embedders. The enabling of RenderDocument by default represents a fundamental shift in the navigation lifecycle. Other major themes include significant advancements in web platform features, ongoing security hardening, and large-scale refactoring in media and Android components.

Widespread Breaking Changes & API Churn

  • ⚠️ BREAKING BREAKING CHANGE: The RenderDocument feature is now enabled by default for all frames, representing a major behavioral change to the navigation and rendering lifecycle. This may significantly impact embedders who relied on the previous behavior. (b4d0474)
  • ⚠️ BREAKING BREAKING CHANGE: The synchronous ui::Clipboard API has been converted to an asynchronous, callback-based model. Methods like ExtractCustomPlatformNames and ReadAvailableStandardAndCustomFormatNames are now async, breaking all synchronous callers. (63af498) (d704671)
  • ⚠️ BREAKING BREAKING CHANGE: Numerous fundamental C++ classes were refactored. GURL constructors and component accessors were changed (e.g., ComponentStringPiece to ComponentStringView), AccountInfo struct members were made private in favor of accessors, the base::ObserverList template signature was changed to use an enum, and many parsing methods were removed from WTF::String in favor of global functions. (a352421) (caf65ac) (c7a4f63) (79c150b) (d87b7cd) (28c4cd0) (d0e1a96)
  • ⚠️ BREAKING BREAKING CHANGE: Core browser and content APIs saw significant churn. ContentBrowserClient requires new virtual methods for prefetch headers, BrowserList::CloseAllBrowsersWith... methods were removed, and SiteInstance::IsSandboxed() was removed in favor of the new content::SecurityPrincipal interface. (50aaada) (d29ce19) (6d9a124) (5632420)
  • ⚠️ BREAKING BREAKING CHANGE: P2P and WebRTC functionality has been moved from the core network_cpp component into a new, optional network_cpp_p2p component. Embedders relying on P2P must now explicitly depend on the new component and enable the is_p2p_enabled build flag. (e7e9679)

Web Platform & Blink

  • ⚠️ BREAKING BREAKING CHANGE: The stable getComputedStyle web API will now ignore pseudo-element arguments that lack a colon prefix (e.g., "before" instead of "::before"). This aligns with the CSSOM spec but may break web content that relied on the previous non-standard behavior. (360edb0)
  • CSS capabilities were expanded with the implementation of the :animated-image pseudo-class for styling animated images, support for text-transform: full-size-kana, and the addition of @if/@else conditionals to CSS Mixins. (37d35a3) (dc99ba3) (9085422)
  • Work on the Declarative Login API continued, renaming the experimental <federation> element to <credential>. Separately, a new HTML marker attribute, similar to part, is now exposed on elements and can be set on shadow roots. (ba8075d) (00719b6) (53e7113)
  • Several web features were enabled by default: SvgTextPathPathAttribute allows using a path() function in <textPath>, the AudioContext.playbackStats API provides audio playback metrics, and the scroll named timeline range is available for animation triggers. (7a62601) (e7b2165) (583df46)

Android & iOS

  • ⚠️ BREAKING BREAKING CHANGE: Android APIs underwent significant changes. org.chromium.base.Promise will now throw a synchronous UnhandledRejectionException on unhandled rejections. The WebView API removed addDocumentStartJavaScript() in favor of addPersistentJavaScript(), and several public methods were removed from ChildServiceConnectionController. (8eee606) (b9e641f) (405dcdd)
  • On Android, Pinned Tabs, Tab Highlighting V2, and the DocumentIsolationPolicy for enhanced process isolation are now all enabled by default. (e1e6eae) (aebe25d) (57aef12)
  • On iOS, Tab Strip management was refactored out of BrowserViewController into a new BrowserLayoutCoordinator. Code is also being cleaned up to remove version guards for iOS 16 as the minimum deployment target is now iOS 17. (6247109) (b307cec)

Media, GPU, and Performance

  • ⚠️ BREAKING BREAKING CHANGE: The core media API was refactored. media::AudioDecoderConfig now requires a ChannelLayoutConfig object instead of the ChannelLayout enum. The media::VideoFrame::IsMappable() method was also renamed to HasDirectCpuAccess() across the codebase. (ab38239) (8465918) (9405179)
  • To improve performance, memory pressure listeners are now enabled by default on Windows and macOS. For Linux builds using a sysroot, _FORTIFY_SOURCE=3 is now enabled for better buffer overflow protection. (bed11e0) (164c25c)
  • WebGPU is now enabled by default on Linux for modern NVIDIA drivers. The experimental WebNN API gained a new chrome://webnn-internals debugging page and now supports D3D shared images on discrete GPUs. (398364a) (03677e4) (8093382)

Security, Identity & Services

  • ⚠️ BREAKING BREAKING CHANGE: On macOS, the legacy V1 Apple Keychain API (crypto/apple/keychain.h) has been completely removed. Embedders must migrate to the V2 API for all keychain access. (e338af7)
  • ⚠️ BREAKING BREAKING CHANGE: The headless_shell build now disables enterprise policy support by default. Users who rely on this functionality must explicitly enable the headless_use_policy=true GN argument. (cedf821)
  • ⚠️ BREAKING The sign-in and Autofill systems saw significant development. The PrimaryAccountMutator::SetPrimaryAccount() method now requires an explicit access_point parameter, and work began on integrating Autofill with Google Wallet under a new 'Autofill AI' feature. (70eb35f) (62b7cff) (f665bc8)
Daily Summaries (6)
← Back to all summaries