MarshallOfSound

#54229: chore: remove dead code, unused chromium_src sources and orphaned files

Merged
Created: Sep 23, 2026, 3:10:37 AM
Merged: Sep 23, 2026, 5:12:46 PM
1 comments
Target: main

Description of Change

Mechanical removal of code that nothing references, one commit per area (each commit message lists exactly what went and why it is dead):

  • build: chromium_src — chrome sources that were compiled but never linked (theme pack, PiP label/resize/live-caption buttons, chrome's platform_util, predictors, spellcheck policy handlers, …), two targets that were compiled twice (global_accelerator_listener, native_window_tracker), and platform-only files moved under their platform.
  • refactor: extensions — the never-registered browserAction.*/pageAction.* function classes, the never-built ExtensionActionAPI keyed service, and two local copies of extensions::util::AllowFileAccess.
  • refactor: shell/ — ~25 functions, declarations and stubs with no caller on any platform (OSR guest-view plumbing, FileSelectHelper leftovers, GetSiteInstanceFromAffinity, the render-view-deleted event that existed for the remote module, …).
  • refactor: gin_helper/converters — unused ErrorThrower/PromiseBase helpers, CreateDataPropertyCallback, Converter<blink::mojom::Referrer>, Converter<MenuItem::Type>.
  • refactor: bindings — the electron_common_environment binding, the electron_browser_printing registration, and native methods JS never calls (_getPreloadScript, _isEvalAllowed, _fromIdIfExists, the shadowed C++ Protocol::IsProtocolHandled, …).
  • chore: lib/ — dead JS (WebViewImpl.setupEventProperty, setLayoutZoomLevelLimits, an Electron-20 deprecation log that could never fire, …), ~20 stale internal typings, and the enableWebSQL leftovers (WebSQL was removed in 31; this drops the no-op option from the docs and therefore from electron.d.ts).
  • chore: repo — orphaned spec fixtures, scripts, the unreferenced pipeline-electron-build-and-test-and-nan.yml, native-test leftovers (incl. the pyyaml DEPS entry), stale disabled-test entries and CODEOWNERS paths.

Built on Linux; hid/usb/serial files are untouched to avoid conflicting with #53657.

Checklist

Release Notes

Notes: Removed the no-op enableWebSQL web preference from the documentation and TypeScript definitions.

Backports

No Backports Requested

This pull request doesn't have any backports requested or created for older release branches.

What are backports?

Backports are copies of changes made to the main branch that are applied to older release branches. They ensure that bug fixes and important changes are available in maintained older versions of Electron.

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