git: 26a523cd8208 - main - devel/electron38: update to 38.2.0

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Wed, 01 Oct 2025 00:59:25 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=26a523cd82087dd30510dc2ffaa2c1c83fabb34a

commit 26a523cd82087dd30510dc2ffaa2c1c83fabb34a
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2025-10-01 00:58:12 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2025-10-01 00:59:07 +0000

    devel/electron38: update to 38.2.0
    
    Changelog: https://github.com/electron/electron/releases/tag/v38.2.0
    
    Reported by:    GitHub (watch releases)
---
 devel/electron38/Makefile.version                  |  2 +-
 devel/electron38/distinfo                          | 10 ++++----
 devel/electron38/files/package.json                |  1 +
 devel/electron38/files/patch-electron_BUILD.gn     | 10 ++++----
 .../files/patch-electron_script_spec-runner.js     |  8 +++---
 ...shell_browser_electron__browser__main__parts.cc | 30 +++++++++++-----------
 .../files/patch-electron_spec_chromium-spec.ts     |  6 ++---
 devel/electron38/files/yarn.lock                   | 14 +++++-----
 8 files changed, 40 insertions(+), 41 deletions(-)

diff --git a/devel/electron38/Makefile.version b/devel/electron38/Makefile.version
index b8439634df33..4896b80eb93c 100644
--- a/devel/electron38/Makefile.version
+++ b/devel/electron38/Makefile.version
@@ -1,2 +1,2 @@
-ELECTRON_VER=	38.1.2
+ELECTRON_VER=	38.2.0
 ELECTRON_VER_MAJOR=	${ELECTRON_VER:C/\..*//}
diff --git a/devel/electron38/distinfo b/devel/electron38/distinfo
index b26ba282317d..729e126be781 100644
--- a/devel/electron38/distinfo
+++ b/devel/electron38/distinfo
@@ -1,12 +1,12 @@
-TIMESTAMP = 1758139873
+TIMESTAMP = 1759265241
 SHA256 (electron/chromium-140.0.7339.133.tar.xz) = 0592f933166d422c42d47b494973ebb8a1cb55493523b6ea901247b883d8d130
 SIZE (electron/chromium-140.0.7339.133.tar.xz) = 7424804784
 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92
 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111
-SHA256 (electron/electron-yarn-cache-38.1.2.tar.xz) = bfc17958c35fa8316af71837284ed542ad19a2ec3cbd54baaefed90a0f558420
-SIZE (electron/electron-yarn-cache-38.1.2.tar.xz) = 29991888
-SHA256 (electron/electron-electron-v38.1.2_GH0.tar.gz) = 295563cf7932c4a049b96a679a0eb1285beb426ffc76d5e6934fe1c5b2b23929
-SIZE (electron/electron-electron-v38.1.2_GH0.tar.gz) = 15856754
+SHA256 (electron/electron-yarn-cache-38.2.0.tar.xz) = 7ed6fedc372c5bd23b38ed252c12ace0f0fbce096b5442add4501a965282eb04
+SIZE (electron/electron-yarn-cache-38.2.0.tar.xz) = 30044356
+SHA256 (electron/electron-electron-v38.2.0_GH0.tar.gz) = 196671584f008ed4c22b71cd5c579ebe73d6fdf33cfa7622c1bdc7ccd7c6a8c0
+SIZE (electron/electron-electron-v38.2.0_GH0.tar.gz) = 15861186
 SHA256 (electron/nodejs-node-v22.19.0_GH0.tar.gz) = 8f28e6635c2fe9d1ea29347606df81128c52bc3a2b820aca5851bd6b89c96aa4
 SIZE (electron/nodejs-node-v22.19.0_GH0.tar.gz) = 123089614
 SHA256 (electron/nodejs-nan-e14bdcd1f72d62bca1d541b66da43130384ec213_GH0.tar.gz) = 02edf8d5b3fef9af94d8a1355da60564a57e7f2c99cb422bce042400607ed2eb
diff --git a/devel/electron38/files/package.json b/devel/electron38/files/package.json
index b0fa63b4b085..63b8af826880 100644
--- a/devel/electron38/files/package.json
+++ b/devel/electron38/files/package.json
@@ -20,6 +20,7 @@
     "@types/temp": "^0.9.4",
     "@typescript-eslint/eslint-plugin": "^8.32.1",
     "@typescript-eslint/parser": "^8.7.0",
+    "@xmldom/xmldom": "^0.8.11",
     "buffer": "^6.0.3",
     "chalk": "^4.1.0",
     "check-for-leaks": "^1.2.1",
diff --git a/devel/electron38/files/patch-electron_BUILD.gn b/devel/electron38/files/patch-electron_BUILD.gn
index 6c112312dc02..32ad07879980 100644
--- a/devel/electron38/files/patch-electron_BUILD.gn
+++ b/devel/electron38/files/patch-electron_BUILD.gn
@@ -1,4 +1,4 @@
---- electron/BUILD.gn.orig	2025-09-02 20:56:04 UTC
+--- electron/BUILD.gn.orig	2025-09-27 23:16:33 UTC
 +++ electron/BUILD.gn
 @@ -548,7 +548,7 @@ source_set("electron_lib") {
      defines += [ "GDK_DISABLE_DEPRECATION_WARNINGS" ]
@@ -22,7 +22,7 @@
    if (is_linux) {
      libs = [ "xshmfence" ]
      deps += [
-@@ -1220,7 +1226,7 @@ if (is_mac) {
+@@ -1221,7 +1227,7 @@ if (is_mac) {
        ":electron_lib",
        ":electron_win32_resources",
        ":packed_resources",
@@ -31,7 +31,7 @@
        "//content:sandbox_helper_win",
        "//electron/buildflags",
        "//third_party/electron_node:libnode",
-@@ -1247,7 +1253,7 @@ if (is_mac) {
+@@ -1248,7 +1254,7 @@ if (is_mac) {
        public_deps = [ "//tools/v8_context_snapshot" ]
      }
  
@@ -40,7 +40,7 @@
        data_deps += [ "//components/crash/core/app:chrome_crashpad_handler" ]
      }
  
-@@ -1314,7 +1320,7 @@ if (is_mac) {
+@@ -1315,7 +1321,7 @@ if (is_mac) {
          configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
        }
  
@@ -49,7 +49,7 @@
          deps += [ "//sandbox/linux:chrome_sandbox" ]
        }
      }
-@@ -1435,7 +1441,9 @@ dist_zip("electron_dist_zip") {
+@@ -1436,7 +1442,9 @@ dist_zip("electron_dist_zip") {
        ]
      }
  
diff --git a/devel/electron38/files/patch-electron_script_spec-runner.js b/devel/electron38/files/patch-electron_script_spec-runner.js
index 48b303bb179e..a983efc3305c 100644
--- a/devel/electron38/files/patch-electron_script_spec-runner.js
+++ b/devel/electron38/files/patch-electron_script_spec-runner.js
@@ -1,9 +1,9 @@
---- electron/script/spec-runner.js.orig	2025-03-10 00:01:50 UTC
+--- electron/script/spec-runner.js.orig	2025-09-27 23:16:33 UTC
 +++ electron/script/spec-runner.js
-@@ -200,7 +200,7 @@ async function runTestUsingElectron (specDir, testName
-     exe = path.resolve(BASE, utils.getElectronExec());
+@@ -359,7 +359,7 @@ async function runTestUsingElectron (specDir, testName
+     argsToPass = argsToPass.filter(arg => (arg.toString().indexOf('--files') === -1 && arg.toString().indexOf('spec/') === -1));
    }
-   const runnerArgs = [`electron/${specDir}`, ...unknownArgs.slice(2)];
+   const runnerArgs = [`electron/${specDir}`, ...argsToPass, ...additionalArgs];
 -  if (process.platform === 'linux') {
 +  if (process.platform === 'linux' || process.platform === 'freebsd') {
      runnerArgs.unshift(path.resolve(__dirname, 'dbus_mock.py'), exe);
diff --git a/devel/electron38/files/patch-electron_shell_browser_electron__browser__main__parts.cc b/devel/electron38/files/patch-electron_shell_browser_electron__browser__main__parts.cc
index 6277cc013ede..311931480134 100644
--- a/devel/electron38/files/patch-electron_shell_browser_electron__browser__main__parts.cc
+++ b/devel/electron38/files/patch-electron_shell_browser_electron__browser__main__parts.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/electron_browser_main_parts.cc.orig	2025-09-02 20:56:04 UTC
+--- electron/shell/browser/electron_browser_main_parts.cc.orig	2025-09-27 23:16:33 UTC
 +++ electron/shell/browser/electron_browser_main_parts.cc
-@@ -76,7 +76,7 @@
+@@ -77,7 +77,7 @@
  #include "ui/wm/core/wm_state.h"
  #endif
  
@@ -9,7 +9,7 @@
  #include "base/environment.h"
  #include "chrome/browser/ui/views/dark_mode_manager_linux.h"
  #include "device/bluetooth/bluetooth_adapter_factory.h"
-@@ -129,7 +129,7 @@ namespace {
+@@ -130,7 +130,7 @@ namespace {
  
  namespace {
  
@@ -18,16 +18,16 @@
  class LinuxUiGetterImpl : public ui::LinuxUiGetter {
   public:
    LinuxUiGetterImpl() = default;
-@@ -209,7 +209,7 @@ int ElectronBrowserMainParts::PreEarlyInitialization()
- #if BUILDFLAG(IS_POSIX)
-   HandleSIGCHLD();
- #endif
+@@ -213,7 +213,7 @@ int ElectronBrowserMainParts::PreEarlyInitialization()
+ #if BUILDFLAG(IS_OZONE)
+   // Initialize Ozone platform and add required feature flags as per platform's
+   // properties.
 -#if BUILDFLAG(IS_LINUX)
 +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
-   ui::OzonePlatform::PreEarlyInitialization();
+   ui::SetOzonePlatformForLinuxIfNeeded(*base::CommandLine::ForCurrentProcess());
  #endif
- #if BUILDFLAG(IS_MAC)
-@@ -300,7 +300,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
+   ui::OzonePlatform::PreEarlyInitialization();
+@@ -306,7 +306,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
    // happen before the ResourceBundle is loaded
    if (locale.empty())
      l10n_util::OverrideLocaleWithCocoaLocale();
@@ -36,7 +36,7 @@
    // l10n_util::GetApplicationLocaleInternal uses g_get_language_names(),
    // which keys off of getenv("LC_ALL").
    // We must set this env first to make ui::ResourceBundle accept the custom
-@@ -329,7 +329,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
+@@ -335,7 +335,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
    ElectronBrowserClient::SetApplicationLocale(app_locale);
    fake_browser_process_->SetApplicationLocale(app_locale);
  
@@ -45,7 +45,7 @@
    // Reset to the original LC_ALL since we should not be changing it.
    if (!locale.empty()) {
      if (lc_all)
-@@ -386,7 +386,7 @@ void ElectronBrowserMainParts::ToolkitInitialized() {
+@@ -392,7 +392,7 @@ void ElectronBrowserMainParts::ToolkitInitialized() {
  }
  
  void ElectronBrowserMainParts::ToolkitInitialized() {
@@ -54,7 +54,7 @@
    auto* linux_ui = ui::GetDefaultLinuxUi();
    CHECK(linux_ui);
    linux_ui_getter_ = std::make_unique<LinuxUiGetterImpl>();
-@@ -493,7 +493,7 @@ void ElectronBrowserMainParts::PostCreateMainMessageLo
+@@ -499,7 +499,7 @@ void ElectronBrowserMainParts::PostCreateMainMessageLo
  }
  
  void ElectronBrowserMainParts::PostCreateMainMessageLoop() {
@@ -63,7 +63,7 @@
    std::string app_name = electron::Browser::Get()->GetName();
  #endif
  #if BUILDFLAG(IS_LINUX)
-@@ -505,7 +505,9 @@ void ElectronBrowserMainParts::PostCreateMainMessageLo
+@@ -511,7 +511,9 @@ void ElectronBrowserMainParts::PostCreateMainMessageLo
  
    if (!bluez::BluezDBusManager::IsInitialized())
      bluez::DBusBluezManagerWrapperLinux::Initialize();
@@ -73,7 +73,7 @@
    // Set up crypt config. This needs to be done before anything starts the
    // network service, as the raw encryption key needs to be shared with the
    // network service for encrypted cookie storage.
-@@ -600,7 +602,7 @@ void ElectronBrowserMainParts::PostMainMessageLoopRun(
+@@ -606,7 +608,7 @@ void ElectronBrowserMainParts::PostMainMessageLoopRun(
    fake_browser_process_->PostMainMessageLoopRun();
    content::DevToolsAgentHost::StopRemoteDebuggingPipeHandler();
  
diff --git a/devel/electron38/files/patch-electron_spec_chromium-spec.ts b/devel/electron38/files/patch-electron_spec_chromium-spec.ts
index 9772904ae0c3..1c7a9ecf6c0b 100644
--- a/devel/electron38/files/patch-electron_spec_chromium-spec.ts
+++ b/devel/electron38/files/patch-electron_spec_chromium-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/chromium-spec.ts.orig	2025-09-02 20:56:04 UTC
+--- electron/spec/chromium-spec.ts.orig	2025-09-27 23:16:33 UTC
 +++ electron/spec/chromium-spec.ts
 @@ -475,13 +475,13 @@ describe('command line switches', () => {
      it('should not set an invalid locale', async () => testLocale('asdfkl', `${currentLocale}|${currentSystemLocale}|${currentPreferredLanguages}`));
@@ -18,7 +18,7 @@
    });
  
    describe('--remote-debugging-pipe switch', () => {
-@@ -2965,12 +2965,12 @@ describe('font fallback', () => {
+@@ -3220,12 +3220,12 @@ describe('font fallback', () => {
        expect(fonts[0].familyName).to.equal('Arial');
      } else if (process.platform === 'darwin') {
        expect(fonts[0].familyName).to.equal('Helvetica');
@@ -33,7 +33,7 @@
      const html = `
      <html lang="ja-JP">
        <head>
-@@ -3522,7 +3522,7 @@ describe('paste execCommand', () => {
+@@ -3777,7 +3777,7 @@ describe('paste execCommand', () => {
    });
  });
  
diff --git a/devel/electron38/files/yarn.lock b/devel/electron38/files/yarn.lock
index 2effe90e4bb1..06b1b0a79f78 100644
--- a/devel/electron38/files/yarn.lock
+++ b/devel/electron38/files/yarn.lock
@@ -1325,6 +1325,11 @@
   resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.5.tgz#325db42395cd49fe6c14057f9a900e427df8810e"
   integrity sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==
 
+"@xmldom/xmldom@^0.8.11":
+  version "0.8.11"
+  resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.8.11.tgz#b79de2d67389734c57c52595f7a7305e30c2d608"
+  integrity sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==
+
 "@xtuc/ieee754@^1.2.0":
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
@@ -7206,14 +7211,7 @@ string_decoder@~1.1.1:
   dependencies:
     safe-buffer "~5.1.0"
 
-"strip-ansi-cjs@npm:strip-ansi@^6.0.1":
-  version "6.0.1"
-  resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
-  integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
-  dependencies:
-    ansi-regex "^5.0.1"
-
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
   version "6.0.1"
   resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
   integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==