This is a backport PR for branch 46-x-y
samuelmaddock

#55284: fix: extension code drift

Merged
Created: Oct 23, 2026, 12:52:47 PM
Merged: Oct 23, 2026, 5:01:32 PM
1 comments
Target: 46-x-y

Description of Change

Backport of #55155

See that PR for details. The only conflict was an include block in electron_extensions_api_client.cc.

Checklist

Release Notes

Notes:

  • Fixed extension chrome.webRequest events reporting a tabId of -1 and chrome.declarativeNetRequest rules restricted to tabs never matching.
  • Fixed session.clearStorageData() unregistering the service workers of loaded extensions.
  • Fixed a crash when an extension called chrome.cookies.getAllCookieStores().
  • Fixed chrome.management methods and events being unavailable to extensions with the management permission.
  • Fixed __MSG_*__ placeholders not being localized in extension stylesheets.
  • Fixed extension service workers being stopped after 30 seconds while a WebSocket was active.
  • Fixed sandboxed extension pages being hosted in a process with extension API privileges.
  • Fixed navigator.clipboard being unavailable in extension service workers.
  • Fixed extension service workers running an outdated script after an app restart when the extension's files changed without a version change.
  • Fixed chrome.alarms and content scripts registered with persistAcrossSessions not persisting across app restarts.

Backport Information

Original PR Author
samuelmaddock
Original PR Status
Merged
Original PR Merged At
Oct 23, 2026, 12:41:54 PM
Original PR Link
GitHubView on GitHub

Semver Impact

Major
Breaking changes
Minor
New features
Patch
Bug fixes
None
Docs, tests, etc.

Semantic Versioning helps users understand the impact of updates:

  • Major (X.y.z): Breaking changes that may require code modifications
  • Minor (x.Y.z): New features that maintain backward compatibility
  • Patch (x.y.Z): Bug fixes that don't change the API
  • None: Changes that don't affect using facing parts of Electron