Skip to content

Commit cd385bd

Browse files
authored
Electron 38 (#1256)
1 parent af6fd9b commit cd385bd

File tree

7 files changed

+31
-8
lines changed

7 files changed

+31
-8
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
run: npm run webpack:prod
5959
- name: Package
6060
run: |
61-
node release-automation/build.mjs --mac --universal
61+
node release-automation/build.mjs --mac --mac-legacy-11 --universal
6262
node release-automation/build.mjs --mac-legacy-10.13-10.14 --mac-legacy-10.15 --x64
6363
- name: Print file tree
6464
run: node scripts/print-file-tree.mjs dist

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ jobs:
7676
python3 -c "import os; open(os.getenv('APPLE_API_KEY_NAME'), 'w').write(os.getenv('APPLE_API_KEY_DATA'))" >/dev/null 2>&1
7777
# @electron/notaraize documentation says key should be an absolute path
7878
export APPLE_API_KEY="$(pwd)/$APPLE_API_KEY_NAME"
79-
node release-automation/build.mjs --mac --universal --production
79+
node release-automation/build.mjs --mac --mac-legacy-11 --universal --production
8080
# These macOS versions never ran on an Apple Silicon device, so only need x64
8181
node release-automation/build.mjs --mac-legacy-10.13-10.14 --mac-legacy-10.15 --x64 --production
8282
# for safety

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
"copy-webpack-plugin": "^6.4.1",
3232
"cross-env": "^10.1.0",
3333
"css-loader": "^1.0.1",
34-
"electron": "^37.6.1",
34+
"electron": "^38.2.2",
3535
"electron-builder": "^26.0.20",
3636
"file-loader": "^6.2.0",
3737
"postcss": "^8.4.13",

release-automation/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ You must specify which platform to build for:
3939
--mac-legacy-10.15
4040
Create app for macOS 10.15 (less secure than --mac).
4141
42+
--mac-legacy-11
43+
Create app for macOS 11 (less secure than --mac).
44+
4245
--mac-dir
4346
Generate executables for macOS 10.15 and later but don't package into a complete DMG installer.
4447
Primarily for debugging.

release-automation/build.mjs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ const ELECTRON_26_FINAL = '26.6.10';
1818
// Electron 32 is the last version to support macOS 10.15
1919
const ELECTRON_32_FINAL = '32.3.3';
2020

21+
// Electron 37 is the last version to support macOS 11
22+
// TODO: 37 is still being updates, we should keep bumping this
23+
const ELECTRON_37_FINAL = '37.6.1';
24+
2125
/**
2226
* @returns {Date}
2327
*/
@@ -294,6 +298,19 @@ const buildMacLegacy1015 = () => build({
294298
}
295299
});
296300

301+
const buildMacLegacy11 = () => build({
302+
platformName: 'MAC',
303+
platformType: 'dmg',
304+
manageUpdates: true,
305+
legacy: true,
306+
extraConfig: {
307+
mac: {
308+
artifactName: '${productName}-Legacy-11-Setup-${version}.${ext}'
309+
},
310+
electronVersion: ELECTRON_37_FINAL
311+
}
312+
});
313+
297314
const buildMacDir = () => build({
298315
platformName: 'MAC',
299316
platformType: 'dir',
@@ -357,6 +374,7 @@ const run = async () => {
357374
'--mac': buildMac,
358375
'--mac-legacy-10.13-10.14': buildMacLegacy10131014,
359376
'--mac-legacy-10.15': buildMacLegacy1015,
377+
'--mac-legacy-11': buildMacLegacy11,
360378
'--mac-dir': buildMacDir,
361379
'--debian': buildDebian,
362380
'--tarball': buildTarball,

src-main/migrate.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,9 @@ const migrate = async () => {
7878
// Legacy build for macOS 10.13 and 10.14 uses Electron 26
7979
(getElectronMajorVersion() === 26 && getKernelMajorVersion() >= 19) ||
8080
// Legacy build for macOS 10.15 uses Electron 32
81-
(getElectronMajorVersion() === 32 && getKernelMajorVersion() >= 20)
81+
(getElectronMajorVersion() === 32 && getKernelMajorVersion() >= 20) ||
82+
// Legacy build for macOS 11 uses Electron 37
83+
(getElectronMajorVersion() === 37 && getKernelMajorVersion() >= 21)
8284
))
8385
)) {
8486
const result = dialog.showMessageBoxSync({

0 commit comments

Comments
 (0)