diff --git a/.github/workflows/electron.yml b/.github/workflows/electron.yml index 36d510215f4..717d197c79f 100644 --- a/.github/workflows/electron.yml +++ b/.github/workflows/electron.yml @@ -36,6 +36,11 @@ jobs: uses: ./.github/actions/setup - name: Build Electron run: ./bin/package-electron + env: + CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }} + CSC_LINK: ${{ secrets.CSC_LINK }} + APPLE_ID: ${{ secrets.APPLE_ID }} + APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }} - name: Upload Build uses: actions/upload-artifact@v3 with: diff --git a/.secret-tokens.example b/.secret-tokens.example new file mode 100644 index 00000000000..1675ffbfd99 --- /dev/null +++ b/.secret-tokens.example @@ -0,0 +1,2 @@ +export APPLE_ID=example@email.com +export APPLE_APP_SPECIFIC_PASSWORD=password diff --git a/bin/package-electron b/bin/package-electron index 0caece7e196..801a6c5e2fe 100755 --- a/bin/package-electron +++ b/bin/package-electron @@ -3,7 +3,6 @@ ROOT=`dirname $0` RELEASE="" -RELEASE_NOTES="" # TODO: figure out automation for release notes when we start publishing electron versions CI=${CI:-false} cd "$ROOT/.." @@ -47,15 +46,13 @@ yarn workspace desktop-electron update-client cd packages/desktop-electron; yarn clean; - export npm_config_better_sqlite3_binary_host="https://static.actualbudget.com/prebuild/better-sqlite3" - if [ "$RELEASE" == "production" ]; then if [ -f ../../.secret-tokens ]; then source ../../.secret-tokens fi - yarn build --publish always -c.releaseInfo.releaseNotes="$RELEASE_NOTES" --arm64 --x64 + yarn build --publish never --arm64 --x64 - echo "\nCreated release with release notes \"$RELEASE_NOTES\"" + echo "\nCreated release" else SKIP_NOTARIZATION=true yarn build --publish never --x64 fi diff --git a/packages/api/package.json b/packages/api/package.json index 0f4c7c5d413..7c2d9a01e5b 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -20,7 +20,7 @@ "test": "yarn run build:app && jest -c jest.config.js" }, "dependencies": { - "better-sqlite3": "^9.1.1", + "better-sqlite3": "^9.2.2", "compare-versions": "^6.1.0", "node-fetch": "^3.3.2", "uuid": "^9.0.0" diff --git a/packages/desktop-client/README.md b/packages/desktop-client/README.md index 834b79b486a..2c6572f9fed 100644 --- a/packages/desktop-client/README.md +++ b/packages/desktop-client/README.md @@ -37,14 +37,15 @@ First start the dev server: ```sh HTTPS=true yarn start ``` + Next, navigate to the root of your project folder, run the standartised docker container, and launch the visual regression tests from within it. ```sh # Run docker container -docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.37.0-jammy /bin/bash +docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.37.1-jammy /bin/bash - # If you recieve an error such as "docker: invalid reference format", please instead use the following command: - docker run --rm --network host -v ${pwd}:/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.37.0-jammy /bin/bash + # If you receive an error such as "docker: invalid reference format", please instead use the following command: + docker run --rm --network host -v ${pwd}:/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.37.1-jammy /bin/bash # Run the VRT tests: important - they MUST be ran against a HTTPS server E2E_START_URL=https://192.168.0.178:3001 yarn vrt diff --git a/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-3-chromium-linux.png b/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-3-chromium-linux.png index ed62336bdf9..32f89ebccab 100644 Binary files a/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-3-chromium-linux.png and b/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-3-chromium-linux.png differ diff --git a/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-4-chromium-linux.png b/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-4-chromium-linux.png index b3cea84a41e..0f71093688d 100644 Binary files a/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-4-chromium-linux.png and b/packages/desktop-client/e2e/onboarding.test.js-snapshots/Onboarding-checks-the-page-visuals-4-chromium-linux.png differ diff --git a/packages/desktop-client/src/components/manager/WelcomeScreen.tsx b/packages/desktop-client/src/components/manager/WelcomeScreen.tsx index 564fc586717..9d13d9dd242 100644 --- a/packages/desktop-client/src/components/manager/WelcomeScreen.tsx +++ b/packages/desktop-client/src/components/manager/WelcomeScreen.tsx @@ -50,8 +50,8 @@ export function WelcomeScreen() { Get started by importing an existing budget file from Actual or - another budgeting app, or start fresh with an empty budget. You can - always create or import another budget later. + another budgeting app, create a demo budget file, or start fresh with + an empty budget. You can always create or import another budget later. - + + + + ); diff --git a/packages/desktop-electron/about/index.js b/packages/desktop-electron/about/index.js index 0286f1c41fc..06678cbbf30 100644 --- a/packages/desktop-electron/about/index.js +++ b/packages/desktop-electron/about/index.js @@ -20,7 +20,6 @@ root.innerHTML = `
-
© 2020 Shift Reset LLC
`; const container = root.querySelector('#container'); diff --git a/packages/desktop-electron/afterSignHook.js b/packages/desktop-electron/afterSignHook.js deleted file mode 100644 index 492f58d848f..00000000000 --- a/packages/desktop-electron/afterSignHook.js +++ /dev/null @@ -1,44 +0,0 @@ -const fs = require('fs'); -const path = require('path'); - -const electron_notarize = require('electron-notarize'); - -// This is expected to be run by `electron-builder` after it signs the build. -// It's disabled for now as we currently don't sign builds after Actual being open sourced. -// To start signing builds again: -// - add the property `"afterSign": "./afterSignHook.js"` to the `build` object in package.json. -// - add the property `"certificateSubjectName": "Shift Reset LLC"` (or similar) to the `win` object in package.json. - -module.exports = async function (params) { - // Only notarize the app on Mac OS only. - if (process.platform !== 'darwin' || process.env['SKIP_NOTARIZATION']) { - return; - } - - // Same appId in electron-builder. - const appId = 'com.shiftreset.actual'; - - const appPath = path.join( - params.appOutDir, - `${params.packager.appInfo.productFilename}.app`, - ); - if (!fs.existsSync(appPath)) { - throw new Error(`Cannot find application at: ${appPath}`); - } - - console.log(`Notarizing ${appId} found at ${appPath}`); - - try { - await electron_notarize.notarize({ - appBundleId: appId, - appPath, - appleId: 'longster@gmail.com', - appleIdPassword: '@keychain:AC_PASSWORD', - ascProvider: 'JamesLong106746326', - }); - } catch (error) { - console.error(error); - } - - console.log(`Done notarizing ${appId}`); -}; diff --git a/packages/desktop-electron/index.js b/packages/desktop-electron/index.js index 188eb12fdae..d8e03335217 100644 --- a/packages/desktop-electron/index.js +++ b/packages/desktop-electron/index.js @@ -215,7 +215,7 @@ function updateMenu(isBudgetOpen) { } } -app.setAppUserModelId('com.shiftreset.actual'); +app.setAppUserModelId('com.actualbudget.actual'); app.on('ready', async () => { // Install an `app://` protocol that always returns the base HTML diff --git a/packages/desktop-electron/package.json b/packages/desktop-electron/package.json index 8b4d265a85f..4f80a76bbc1 100644 --- a/packages/desktop-electron/package.json +++ b/packages/desktop-electron/package.json @@ -1,5 +1,6 @@ { "name": "desktop-electron", + "author": "Actual", "productName": "Actual", "description": "A simple and powerful personal finance system", "version": "24.1.0", @@ -11,7 +12,7 @@ }, "main": "index.js", "build": { - "appId": "com.shiftreset.actual", + "appId": "com.actualbudget.actual", "files": [ "!node_modules/loot-core/src{,/**/*}", "!node_modules/loot-core/lib-dist/{browser,bundle.mobile*}", @@ -23,15 +24,18 @@ ], "publish": { "provider": "github", - "repo": "releases", + "repo": "actual", "owner": "actualbudget", - "vPrefixedTagName": false + "vPrefixedTagName": true }, "mac": { "category": "public.app-category.finance", "icon": "icons/icon.icns", "hardenedRuntime": true, - "gatekeeperAssess": false + "gatekeeperAssess": false, + "notarize": { + "teamId": "79ANZ983YF" + } }, "linux": { "target": "AppImage", @@ -45,16 +49,16 @@ "dependencies": { "electron-is-dev": "2.0.0", "electron-log": "4.4.8", - "electron-updater": "6.1.4", + "electron-updater": "6.1.7", "loot-core": "*", "node-fetch": "^2.6.9", "promise-retry": "^2.0.1" }, "devDependencies": { - "@electron/notarize": "2.1.0", - "@electron/rebuild": "3.3.0", + "@electron/notarize": "2.2.0", + "@electron/rebuild": "3.4.1", "cross-env": "^7.0.3", - "electron": "26.2.0", - "electron-builder": "24.6.4" + "electron": "27.2.0", + "electron-builder": "24.10.0" } } diff --git a/packages/loot-core/package.json b/packages/loot-core/package.json index 13d2a555df4..36d1d680e3f 100644 --- a/packages/loot-core/package.json +++ b/packages/loot-core/package.json @@ -24,7 +24,7 @@ "@types/adm-zip": "^0.5.0", "absurd-sql": "0.0.54", "assert": "^2.0.0", - "better-sqlite3": "^9.1.1", + "better-sqlite3": "^9.2.2", "browserify-zlib": "^0.2.0", "core-js": "^3.8.3", "csv-parse": "^4.10.1", diff --git a/upcoming-release-notes/2182.md b/upcoming-release-notes/2182.md new file mode 100644 index 00000000000..233bd0a47c9 --- /dev/null +++ b/upcoming-release-notes/2182.md @@ -0,0 +1,6 @@ +--- +category: Maintenance +authors: [MatissJanis] +--- + +Electron-app app store (osx) release diff --git a/yarn.lock b/yarn.lock index 4f82064c2a7..5eadc1b0dd3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,10 +5,10 @@ __metadata: version: 8 cacheKey: 10 -"7zip-bin@npm:~5.1.1": - version: 5.1.1 - resolution: "7zip-bin@npm:5.1.1" - checksum: 853e636745131719b85650df93d1a3a9af0b0db1c0e2a0884451ec87e14c8b0f4fb911c04805984ece1211ff1235f7869547b780e06939469410f2da9b5e0da6 +"7zip-bin@npm:~5.2.0": + version: 5.2.0 + resolution: "7zip-bin@npm:5.2.0" + checksum: 5339c7a56f57f8d7d16ac8d15f588d155e5705cd4822e0d161ea45e6fbfe4a5226b464a331ec555a1ec9376ad04e5f61c125656cf3a1507900c1968ccbcfe80b languageName: node linkType: hard @@ -27,7 +27,7 @@ __metadata: "@swc/jest": "npm:^0.2.29" "@types/jest": "npm:^27.5.0" "@types/uuid": "npm:^9.0.2" - better-sqlite3: "npm:^9.1.1" + better-sqlite3: "npm:^9.2.2" compare-versions: "npm:^6.1.0" jest: "npm:^27.0.0" node-fetch: "npm:^3.3.2" @@ -2156,6 +2156,17 @@ __metadata: languageName: node linkType: hard +"@electron/notarize@npm:2.2.0": + version: 2.2.0 + resolution: "@electron/notarize@npm:2.2.0" + dependencies: + debug: "npm:^4.1.1" + fs-extra: "npm:^9.0.1" + promise-retry: "npm:^2.0.1" + checksum: 31639c9ee54d5ff2be7882c24916716b678b3c931b90cdea359262826b643c4291853cbaba8ecfc7cfddd75331117ef120fbd9c6a7b87c7d099ad54b6a2b0427 + languageName: node + linkType: hard + "@electron/osx-sign@npm:1.0.5": version: 1.0.5 resolution: "@electron/osx-sign@npm:1.0.5" @@ -2173,9 +2184,9 @@ __metadata: languageName: node linkType: hard -"@electron/rebuild@npm:3.3.0": - version: 3.3.0 - resolution: "@electron/rebuild@npm:3.3.0" +"@electron/rebuild@npm:3.4.1": + version: 3.4.1 + resolution: "@electron/rebuild@npm:3.4.1" dependencies: "@malept/cross-spawn-promise": "npm:^2.0.0" chalk: "npm:^4.0.0" @@ -2187,12 +2198,13 @@ __metadata: node-api-version: "npm:^0.1.4" node-gyp: "npm:^9.0.0" ora: "npm:^5.1.0" + read-binary-file-arch: "npm:^1.0.6" semver: "npm:^7.3.5" tar: "npm:^6.0.5" yargs: "npm:^17.0.1" bin: electron-rebuild: lib/cli.js - checksum: 1cb27eb6370b0ad94ab5e38208ab07cb9ba77c855b18c64d0d7b5bf15bb107ed242fccc2e99a5a7682699deb57da3404caee794b222da2dff8fad01fa4d46846 + checksum: c6d9ade62f13b3c3642321ddcfed64a1ab839c25d19e2a7f444d0c4852bf6ee1fcb180d8c333516f9d656787e3d33ed2efc84f4d02d5196c32a0cc5f30e1f548 languageName: node linkType: hard @@ -5666,11 +5678,10 @@ __metadata: languageName: node linkType: hard -"app-builder-lib@npm:24.6.4": - version: 24.6.4 - resolution: "app-builder-lib@npm:24.6.4" +"app-builder-lib@npm:24.10.0": + version: 24.10.0 + resolution: "app-builder-lib@npm:24.10.0" dependencies: - 7zip-bin: "npm:~5.1.1" "@develar/schema-utils": "npm:~2.6.5" "@electron/notarize": "npm:2.1.0" "@electron/osx-sign": "npm:1.0.5" @@ -5679,12 +5690,12 @@ __metadata: "@types/fs-extra": "npm:9.0.13" async-exit-hook: "npm:^2.0.1" bluebird-lst: "npm:^1.0.9" - builder-util: "npm:24.5.0" - builder-util-runtime: "npm:9.2.1" + builder-util: "npm:24.9.4" + builder-util-runtime: "npm:9.2.3" chromium-pickle-js: "npm:^0.2.0" debug: "npm:^4.3.4" ejs: "npm:^3.1.8" - electron-publish: "npm:24.5.0" + electron-publish: "npm:24.9.4" form-data: "npm:^4.0.0" fs-extra: "npm:^10.1.0" hosted-git-info: "npm:^4.1.0" @@ -5698,7 +5709,7 @@ __metadata: semver: "npm:^7.3.8" tar: "npm:^6.1.12" temp-file: "npm:^3.4.0" - checksum: 682b0ed778f69bbba59b1ff7376373120cd17c59c9c9b953bfc994f72e3938c38f2ad3ce415eadab8e0e13e2e2a8a48ac6aa63e1d0f48ddff86cfc34ec58d90b + checksum: 8350e08488d13c239ae62d8b4e799d5017d186547538161f47ec6475a3b290152e644e01788f4e35ba0b5bebdf4ef5118450fb52e76bc1813eb81f3db8025976 languageName: node linkType: hard @@ -6189,14 +6200,14 @@ __metadata: languageName: node linkType: hard -"better-sqlite3@npm:^9.1.1": - version: 9.1.1 - resolution: "better-sqlite3@npm:9.1.1" +"better-sqlite3@npm:^9.2.2": + version: 9.2.2 + resolution: "better-sqlite3@npm:9.2.2" dependencies: bindings: "npm:^1.5.0" node-gyp: "npm:latest" prebuild-install: "npm:^7.1.1" - checksum: 0e9dc50ebb449f1e2177a8960dcb0d87ef8cca85046920577de396955dd8783cf6b361c615e4f22a18227f5d66a9085500e9f4d840d92f970e51f84f7dea30f3 + checksum: fc843a9ceb883e5c16eed8a3e7d85c15b52e3588a24424ad66391fc0bf5b94de2fa70016a716ad685cea8810e3233e958c0c1f350f35a5f18762021e313e297d languageName: node linkType: hard @@ -6486,25 +6497,25 @@ __metadata: languageName: node linkType: hard -"builder-util-runtime@npm:9.2.1": - version: 9.2.1 - resolution: "builder-util-runtime@npm:9.2.1" +"builder-util-runtime@npm:9.2.3": + version: 9.2.3 + resolution: "builder-util-runtime@npm:9.2.3" dependencies: debug: "npm:^4.3.4" sax: "npm:^1.2.4" - checksum: 23a4cc0e65d1547d022c9ec9b84958c811b3ef064baff58a103b985f902fd4bce043547126eb834227445fa7da915169069837ffed38631a59cd64385e45fe43 + checksum: 15f9618af1a2224d0ade19fa7dca12f80bc2ceeb4fc89242f2505b44f58d13d3439bb08a5bec865bb0f8e930fa57bd112d9ee9024f22f1654925ffe2bed3925b languageName: node linkType: hard -"builder-util@npm:24.5.0": - version: 24.5.0 - resolution: "builder-util@npm:24.5.0" +"builder-util@npm:24.9.4": + version: 24.9.4 + resolution: "builder-util@npm:24.9.4" dependencies: - 7zip-bin: "npm:~5.1.1" + 7zip-bin: "npm:~5.2.0" "@types/debug": "npm:^4.1.6" app-builder-bin: "npm:4.0.0" bluebird-lst: "npm:^1.0.9" - builder-util-runtime: "npm:9.2.1" + builder-util-runtime: "npm:9.2.3" chalk: "npm:^4.1.2" cross-spawn: "npm:^7.0.3" debug: "npm:^4.3.4" @@ -6516,7 +6527,7 @@ __metadata: source-map-support: "npm:^0.5.19" stat-mode: "npm:^1.0.0" temp-file: "npm:^3.4.0" - checksum: 10c922f516ee68aa8b2fbdfd968b201fc92de022cb978e5a8af3681d7a099b131e9de9a5ea07e4e6a3f51ce027c77a900d54cafb4b1e831d30eb4f5b1b836d44 + checksum: df830846d6149491616bdedf8e6829385cb968105762a835bda29eaeaea8f54254f5b14b9a3c4d060d0402d3bf886e48ab2a0c28c4615b4904fc25ad7c68ec90 languageName: node linkType: hard @@ -8254,14 +8265,14 @@ __metadata: version: 0.0.0-use.local resolution: "desktop-electron@workspace:packages/desktop-electron" dependencies: - "@electron/notarize": "npm:2.1.0" - "@electron/rebuild": "npm:3.3.0" + "@electron/notarize": "npm:2.2.0" + "@electron/rebuild": "npm:3.4.1" cross-env: "npm:^7.0.3" - electron: "npm:26.2.0" - electron-builder: "npm:24.6.4" + electron: "npm:27.2.0" + electron-builder: "npm:24.10.0" electron-is-dev: "npm:2.0.0" electron-log: "npm:4.4.8" - electron-updater: "npm:6.1.4" + electron-updater: "npm:6.1.7" loot-core: "npm:*" node-fetch: "npm:^2.6.9" promise-retry: "npm:^2.0.1" @@ -8377,13 +8388,13 @@ __metadata: languageName: node linkType: hard -"dmg-builder@npm:24.6.4": - version: 24.6.4 - resolution: "dmg-builder@npm:24.6.4" +"dmg-builder@npm:24.10.0": + version: 24.10.0 + resolution: "dmg-builder@npm:24.10.0" dependencies: - app-builder-lib: "npm:24.6.4" - builder-util: "npm:24.5.0" - builder-util-runtime: "npm:9.2.1" + app-builder-lib: "npm:24.10.0" + builder-util: "npm:24.9.4" + builder-util-runtime: "npm:9.2.3" dmg-license: "npm:^1.0.11" fs-extra: "npm:^10.1.0" iconv-lite: "npm:^0.6.2" @@ -8391,7 +8402,7 @@ __metadata: dependenciesMeta: dmg-license: optional: true - checksum: b3c1401ddb8b260c81a309568b4cfa26a018506bd4d03aedf8b2edb64189eb71070075cfaa5df3a3f063700f340d872a2d2c1a745d36c0a684193deb2d27ca0d + checksum: 237d071ed74b38ab817d85685790b1daf3d415377c0842de850226dd1885441ab5107d9a7193e23660b1c17054b6fca85d4d9c28e7efd4944c5b879aa5e0727c languageName: node linkType: hard @@ -8701,15 +8712,15 @@ __metadata: languageName: node linkType: hard -"electron-builder@npm:24.6.4": - version: 24.6.4 - resolution: "electron-builder@npm:24.6.4" +"electron-builder@npm:24.10.0": + version: 24.10.0 + resolution: "electron-builder@npm:24.10.0" dependencies: - app-builder-lib: "npm:24.6.4" - builder-util: "npm:24.5.0" - builder-util-runtime: "npm:9.2.1" + app-builder-lib: "npm:24.10.0" + builder-util: "npm:24.9.4" + builder-util-runtime: "npm:9.2.3" chalk: "npm:^4.1.2" - dmg-builder: "npm:24.6.4" + dmg-builder: "npm:24.10.0" fs-extra: "npm:^10.1.0" is-ci: "npm:^3.0.0" lazy-val: "npm:^1.0.5" @@ -8719,7 +8730,7 @@ __metadata: bin: electron-builder: cli.js install-app-deps: install-app-deps.js - checksum: 070563186394b78492032a56753f6386343b579a5f5c81f4ac06c8127232066cf1d97afa6a00b0704593a43970552660ab59597f2c905eee1ff675f8b99284d3 + checksum: 0773bcafdcfa00f70d441f0a9cff1de8b6b87a8ad65285b6bcf4f2a9f6cc17640759b2b4bff408bf3bfbe15b00598de020a87f2cc7fe84b2338e7427dfd9a24f languageName: node linkType: hard @@ -8737,18 +8748,18 @@ __metadata: languageName: node linkType: hard -"electron-publish@npm:24.5.0": - version: 24.5.0 - resolution: "electron-publish@npm:24.5.0" +"electron-publish@npm:24.9.4": + version: 24.9.4 + resolution: "electron-publish@npm:24.9.4" dependencies: "@types/fs-extra": "npm:^9.0.11" - builder-util: "npm:24.5.0" - builder-util-runtime: "npm:9.2.1" + builder-util: "npm:24.9.4" + builder-util-runtime: "npm:9.2.3" chalk: "npm:^4.1.2" fs-extra: "npm:^10.1.0" lazy-val: "npm:^1.0.5" mime: "npm:^2.5.2" - checksum: 826a8c7b219f8ffcfa7274effbc8a83e4e0cad665298bf06ca4b9071f828224dfb3407b45cefac0c9dc40af1c6529473dabcb3e30ac951690c0d48d013c2b71e + checksum: c4e9397b5ef070dbede48fece9d36d3dcaec7df1052f49744df790ff9793da24d52c22d949067dd7a5cbf9f5f06cd2243c221ec5bfdab3080b4c37f5b39a0473 languageName: node linkType: hard @@ -8759,11 +8770,11 @@ __metadata: languageName: node linkType: hard -"electron-updater@npm:6.1.4": - version: 6.1.4 - resolution: "electron-updater@npm:6.1.4" +"electron-updater@npm:6.1.7": + version: 6.1.7 + resolution: "electron-updater@npm:6.1.7" dependencies: - builder-util-runtime: "npm:9.2.1" + builder-util-runtime: "npm:9.2.3" fs-extra: "npm:^10.1.0" js-yaml: "npm:^4.1.0" lazy-val: "npm:^1.0.5" @@ -8771,20 +8782,20 @@ __metadata: lodash.isequal: "npm:^4.5.0" semver: "npm:^7.3.8" tiny-typed-emitter: "npm:^2.1.0" - checksum: 278d8aa728690ca1cee8ec45cc657570b80da46ce2168ee191013d8ff4a109364f89156fd5268015b672861225c1784f460859909a2f60277190cba767b967cc + checksum: c6a5b566d70de550cd959a3af0bed98da868b997d7ef741ede488027a8c876af2e1bf981becfeac767c4dbf7af856ed4e53053e7fcd246dc2af5fc71fd5ef7cc languageName: node linkType: hard -"electron@npm:26.2.0": - version: 26.2.0 - resolution: "electron@npm:26.2.0" +"electron@npm:27.2.0": + version: 27.2.0 + resolution: "electron@npm:27.2.0" dependencies: "@electron/get": "npm:^2.0.0" "@types/node": "npm:^18.11.18" extract-zip: "npm:^2.0.1" bin: electron: cli.js - checksum: 27485e960a188c95c52bdad9797471fdcbeaadcdfecb48731816c143fb89be68ca259d97a74575c52c0c73465333b118eaea692e64265e8fc19fe99943042789 + checksum: 80f207756c4ff85ea8f54e4e6aa0d0fb223719873af550ce081c4846cbfcff612d3611ddef4f127e7a0d34547ad57d2701ad957b06f2d93a885905126973c576 languageName: node linkType: hard @@ -13351,7 +13362,7 @@ __metadata: absurd-sql: "npm:0.0.54" adm-zip: "npm:^0.5.9" assert: "npm:^2.0.0" - better-sqlite3: "npm:^9.1.1" + better-sqlite3: "npm:^9.2.2" browserify-zlib: "npm:^0.2.0" buffer: "npm:^6.0.3" core-js: "npm:^3.8.3" @@ -17247,6 +17258,17 @@ __metadata: languageName: node linkType: hard +"read-binary-file-arch@npm:^1.0.6": + version: 1.0.6 + resolution: "read-binary-file-arch@npm:1.0.6" + dependencies: + debug: "npm:^4.3.4" + bin: + read-binary-file-arch: cli.js + checksum: 7a25894816ff9caf5c27886b0aea1740bfab29483443a2859e5a0dc367c56ee9489f3cdba9da676a6d5913d3e421e71c6afbdbcfb636714ff49d93d152c72ba5 + languageName: node + linkType: hard + "read-cache@npm:^1.0.0": version: 1.0.0 resolution: "read-cache@npm:1.0.0"