diff --git a/devel/electron39/Makefile.version b/devel/electron39/Makefile.version index d8d33afb4260..c18725a4e55f 100644 --- a/devel/electron39/Makefile.version +++ b/devel/electron39/Makefile.version @@ -1,2 +1,2 @@ -ELECTRON_VER= 39.8.7 +ELECTRON_VER= 39.8.8 ELECTRON_VER_MAJOR= ${ELECTRON_VER:C/\..*//} diff --git a/devel/electron39/distinfo b/devel/electron39/distinfo index 638ba8916e8b..8ddefcebe2a5 100644 --- a/devel/electron39/distinfo +++ b/devel/electron39/distinfo @@ -1,27 +1,27 @@ -TIMESTAMP = 1776167979 +TIMESTAMP = 1776565788 SHA256 (electron/chromium-142.0.7444.265.tar.xz.0) = 54ca3cf92f6a207a4e1b46fe016da7d515097f999b5e53ba4201adc906ae383e SIZE (electron/chromium-142.0.7444.265.tar.xz.0) = 2000000000 SHA256 (electron/chromium-142.0.7444.265.tar.xz.1) = 289722408b81d862eb63f98cf47516308add8e18f5d62d2455c98942a2ebface SIZE (electron/chromium-142.0.7444.265.tar.xz.1) = 2000000000 SHA256 (electron/chromium-142.0.7444.265.tar.xz.2) = fcce594020d7120080cd9b4a6af385983c8980dfdd3f72405b31b11fad41ffd5 SIZE (electron/chromium-142.0.7444.265.tar.xz.2) = 227650760 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111 SHA256 (electron/yarn-4.12.0.tgz) = bd58d06826ce9542c4cd904fe10bab7bc718ea2cc39a45d9fbd15f2edb45761c SIZE (electron/yarn-4.12.0.tgz) = 1056794 -SHA256 (electron/electron39-39.8.7-node-modules.tar.xz) = 17ab1f66434124efa142c546af69b55adb35b2ebcedce939dcb75b45d0e7a860 -SIZE (electron/electron39-39.8.7-node-modules.tar.xz) = 60007861 -SHA256 (electron/electron-electron-v39.8.7_GH0.tar.gz) = 216e3cc9b858face85dd0188f93f9a3d919c64dcac9d2a49835d46a2a7959e1a -SIZE (electron/electron-electron-v39.8.7_GH0.tar.gz) = 17193311 +SHA256 (electron/electron39-39.8.8-node-modules.tar.xz) = 17ab1f66434124efa142c546af69b55adb35b2ebcedce939dcb75b45d0e7a860 +SIZE (electron/electron39-39.8.8-node-modules.tar.xz) = 60007861 +SHA256 (electron/electron-electron-v39.8.8_GH0.tar.gz) = 65fd86cfb237942730d86a257beec9fb7665633f1bfa6ce4ba61b568baa57ba3 +SIZE (electron/electron-electron-v39.8.8_GH0.tar.gz) = 17216407 SHA256 (electron/nodejs-node-v22.22.1_GH0.tar.gz) = 4d9ebbac6ba3f9610fdd5449274794a3b32305b33ca6f2fd476ac139024015c6 SIZE (electron/nodejs-node-v22.22.1_GH0.tar.gz) = 129747267 SHA256 (electron/nodejs-nan-e14bdcd1f72d62bca1d541b66da43130384ec213_GH0.tar.gz) = 02edf8d5b3fef9af94d8a1355da60564a57e7f2c99cb422bce042400607ed2eb SIZE (electron/nodejs-nan-e14bdcd1f72d62bca1d541b66da43130384ec213_GH0.tar.gz) = 180646 SHA256 (electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz) = f4ebb40a8d85dbb7ef02aa0571b2f8e22182c6d73b6992484a53c90047779d01 SIZE (electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz) = 2112918 SHA256 (electron/ReactiveCocoa-ReactiveObjC-74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76_GH0.tar.gz) = 88e65f116c7a06fccedb43970fba63080a57a4e5dc29147d2cdfe1ee58dd0546 SIZE (electron/ReactiveCocoa-ReactiveObjC-74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76_GH0.tar.gz) = 1136238 SHA256 (electron/Mantle-Mantle-78d3966b3c331292ea29ec38661b25df0a245948_GH0.tar.gz) = a365df6d83e0be3cc000b70bd39734d80c28f0d9983ebe44698337a2ca464bb1 SIZE (electron/Mantle-Mantle-78d3966b3c331292ea29ec38661b25df0a245948_GH0.tar.gz) = 62962 SHA256 (electron/EngFlow-reclient-configs-955335c30a752e9ef7bff375baab5e0819b6c00d_GH0.tar.gz) = c148f76220fc41a89ffeaf370c2cc175577be184688b12aa6fec5f8ac6c714c4 SIZE (electron/EngFlow-reclient-configs-955335c30a752e9ef7bff375baab5e0819b6c00d_GH0.tar.gz) = 13014 diff --git a/devel/electron39/files/patch-electron_shell_app_node__main.cc b/devel/electron39/files/patch-electron_shell_app_node__main.cc index 32286c059236..2dd9ba003633 100644 --- a/devel/electron39/files/patch-electron_shell_app_node__main.cc +++ b/devel/electron39/files/patch-electron_shell_app_node__main.cc @@ -1,37 +1,37 @@ ---- electron/shell/app/node_main.cc.orig 2025-09-02 20:56:04 UTC +--- electron/shell/app/node_main.cc.orig 2026-04-15 14:06:14 UTC +++ electron/shell/app/node_main.cc @@ -51,7 +51,7 @@ #include "shell/common/mac/codesign_util.h" #endif -#if !IS_MAS_BUILD() +#if !IS_MAS_BUILD() && !BUILDFLAG(IS_BSD) #include "components/crash/core/app/crashpad.h" // nogncheck #include "shell/app/electron_crash_reporter_client.h" #include "shell/common/crash_keys.h" @@ -103,14 +103,14 @@ bool UnsetHijackableEnvs(base::Environment* env) { } #endif -#if IS_MAS_BUILD() +#if IS_MAS_BUILD() || BUILDFLAG(IS_BSD) void SetCrashKeyStub(const std::string& key, const std::string& value) {} void ClearCrashKeyStub(const std::string& key) {} #endif v8::Local GetParameters(v8::Isolate* isolate) { std::map keys; -#if !IS_MAS_BUILD() +#if !IS_MAS_BUILD() && !BUILDFLAG(IS_BSD) electron::crash_keys::GetCrashKeys(&keys); #endif return gin::ConvertToV8(isolate, keys); -@@ -270,7 +270,7 @@ int NodeMain() { +@@ -275,7 +275,7 @@ int NodeMain() { // Setup process.crashReporter in child node processes auto reporter = gin_helper::Dictionary::CreateEmpty(isolate); reporter.SetMethod("getParameters", &GetParameters); -#if IS_MAS_BUILD() +#if IS_MAS_BUILD() || BUILDFLAG(IS_BSD) reporter.SetMethod("addExtraParameter", &SetCrashKeyStub); reporter.SetMethod("removeExtraParameter", &ClearCrashKeyStub); #else diff --git a/devel/electron39/files/patch-electron_spec_chromium-spec.ts b/devel/electron39/files/patch-electron_spec_chromium-spec.ts index e1fa1ca6149b..10654f0223c8 100644 --- a/devel/electron39/files/patch-electron_spec_chromium-spec.ts +++ b/devel/electron39/files/patch-electron_spec_chromium-spec.ts @@ -1,44 +1,44 @@ ---- electron/spec/chromium-spec.ts.orig 2026-03-26 07:50:03 UTC +--- electron/spec/chromium-spec.ts.orig 2026-04-15 14:06:14 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}`)); const lcAll = String(process.env.LC_ALL); - ifit(process.platform === 'linux')('current process has a valid LC_ALL env', async () => { + ifit(process.platform === 'linux' || process.platform === 'freebsd')('current process has a valid LC_ALL env', async () => { // The LC_ALL env should not be set to DOM locale string. expect(lcAll).to.not.equal(app.getLocale()); }); - ifit(process.platform === 'linux')('should not change LC_ALL', async () => testLocale('fr', lcAll, true)); - ifit(process.platform === 'linux')('should not change LC_ALL when setting invalid locale', async () => testLocale('asdfkl', lcAll, true)); - ifit(process.platform === 'linux')('should not change LC_ALL when --lang is not set', async () => testLocale('', lcAll, true)); + ifit(process.platform === 'linux' || process.platform === 'freebsd')('should not change LC_ALL', async () => testLocale('fr', lcAll, true)); + ifit(process.platform === 'linux' || process.platform === 'freebsd')('should not change LC_ALL when setting invalid locale', async () => testLocale('asdfkl', lcAll, true)); + ifit(process.platform === 'linux' || process.platform === 'freebsd')('should not change LC_ALL when --lang is not set', async () => testLocale('', lcAll, true)); }); describe('--remote-debugging-pipe switch', () => { -@@ -3336,12 +3336,12 @@ describe('font fallback', () => { +@@ -3344,12 +3344,12 @@ describe('font fallback', () => { expect(fonts[0].familyName).to.equal('Arial'); } else if (process.platform === 'darwin') { expect(fonts[0].familyName).to.equal('Helvetica'); - } else if (process.platform === 'linux') { + } else if (process.platform === 'linux' || process.platform === 'freebsd') { expect(fonts[0].familyName).to.equal('DejaVu Sans'); } // I think this depends on the distro? We don't specify a default. }); - ifit(process.platform !== 'linux')('should fall back to Japanese font for sans-serif Japanese script', async function () { + ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('should fall back to Japanese font for sans-serif Japanese script', async function () { const html = ` -@@ -3894,7 +3894,7 @@ describe('paste execCommand', () => { +@@ -3902,7 +3902,7 @@ describe('paste execCommand', () => { }); }); -ifdescribe((process.platform !== 'linux' || app.isUnityRunning()))('navigator.setAppBadge/clearAppBadge', () => { +ifdescribe(((process.platform !== 'linux' && process.platform !== 'freebsd') || app.isUnityRunning()))('navigator.setAppBadge/clearAppBadge', () => { let w: BrowserWindow; const expectedBadgeCount = 42; diff --git a/devel/electron39/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc b/devel/electron39/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc index 86cfb2f00c48..df222ead49aa 100644 --- a/devel/electron39/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc +++ b/devel/electron39/files/patch-gpu_command__buffer_service_gles2__cmd__decoder.cc @@ -1,11 +1,11 @@ ---- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2025-10-21 20:19:54 UTC +--- gpu/command_buffer/service/gles2_cmd_decoder.cc.orig 2026-04-19 02:47:31 UTC +++ gpu/command_buffer/service/gles2_cmd_decoder.cc -@@ -2851,7 +2851,7 @@ std::unique_ptr GLES2Decoder::Create( +@@ -2858,7 +2858,7 @@ std::unique_ptr GLES2Decoder::Create( } // Allow linux to run fuzzers. -#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::make_unique(client, command_buffer_service, outputter, group); #else diff --git a/devel/electron39/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc b/devel/electron39/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc index 4ad26ee7ab14..0f50af476361 100644 --- a/devel/electron39/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc +++ b/devel/electron39/files/patch-gpu_command__buffer_service_webgpu__decoder__impl.cc @@ -1,20 +1,20 @@ ---- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2025-10-21 20:19:54 UTC +--- gpu/command_buffer/service/webgpu_decoder_impl.cc.orig 2026-04-19 02:47:31 UTC +++ gpu/command_buffer/service/webgpu_decoder_impl.cc -@@ -1747,7 +1747,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte +@@ -1750,7 +1750,7 @@ wgpu::Adapter WebGPUDecoderImpl::CreatePreferredAdapte backend_types = {wgpu::BackendType::D3D12}; #elif BUILDFLAG(IS_APPLE) backend_types = {wgpu::BackendType::Metal}; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (shared_context_state_->GrContextIsVulkan() || shared_context_state_->IsGraphiteDawnVulkan()) { backend_types = {wgpu::BackendType::Vulkan}; -@@ -1992,7 +1992,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( +@@ -1995,7 +1995,7 @@ WebGPUDecoderImpl::AssociateMailboxDawn( } #if !BUILDFLAG(IS_WIN) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_APPLE) && \ - !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) + !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) if (usage & wgpu::TextureUsage::StorageBinding) { LOG(ERROR) << "AssociateMailbox: wgpu::TextureUsage::StorageBinding is NOT " "supported yet on this platform.";