diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml index 7fc458b7a..7bf582af6 100644 --- a/.github/workflows/benchmark.yml +++ b/.github/workflows/benchmark.yml @@ -30,7 +30,7 @@ jobs: - name: Setup node.js uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - name: Install global dependencies run: npm install -g npm@10.2.5 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c0aa0c4aa..112cb3125 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - run: npm install -g npm@10.2.5 - name: Cache Desktop node_modules @@ -78,7 +78,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - run: npm install -g npm@10.2.5 @@ -130,7 +130,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - run: sudo apt-get install xvfb - run: npm install -g npm@10.2.5 @@ -197,7 +197,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - run: npm install -g npm@10.2.5 node-gyp@10.0.1 # Set things up so @nodert-win10-rs4 dependencies build properly @@ -305,7 +305,7 @@ jobs: - name: Setup node.js uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - name: Install global dependencies run: npm install -g npm@10.2.5 diff --git a/.github/workflows/danger.yml b/.github/workflows/danger.yml index 1245abd13..6653c464b 100644 --- a/.github/workflows/danger.yml +++ b/.github/workflows/danger.yml @@ -15,7 +15,7 @@ jobs: fetch-depth: 0 # fetch all history - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' - run: npm install -g npm@10.2.5 - name: Cache danger node_modules id: cache-desktop-modules diff --git a/.github/workflows/stories.yml b/.github/workflows/stories.yml index fa9438b6b..444d92621 100644 --- a/.github/workflows/stories.yml +++ b/.github/workflows/stories.yml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: - node-version: '20.11.1' + node-version: '20.14.0' cache: 'npm' - name: Install global dependencies run: npm install -g npm@10.2.5 diff --git a/.nvmrc b/.nvmrc index 2dbbe00e6..48b14e6b2 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20.11.1 +20.14.0 diff --git a/package-lock.json b/package-lock.json index b43d7503c..4705bbf81 100644 --- a/package-lock.json +++ b/package-lock.json @@ -208,7 +208,7 @@ "csv-parse": "5.5.2", "danger": "11.3.1", "debug": "4.3.3", - "electron": "30.0.9", + "electron": "31.1.0", "electron-builder": "24.13.3", "electron-mocha": "12.2.0", "endanger": "7.0.4", @@ -233,7 +233,7 @@ "p-limit": "3.1.0", "patch-package": "8.0.0", "pixelmatch": "5.3.0", - "playwright": "1.42.1", + "playwright": "1.45.0", "pngjs": "7.0.0", "prettier": "2.8.0", "protobufjs-cli": "1.1.1", @@ -260,7 +260,7 @@ "webpack-dev-server": "4.11.1" }, "engines": { - "node": "20.11.1" + "node": "20.14.0" }, "optionalDependencies": { "fs-xattr": "0.3.0" @@ -21984,11 +21984,12 @@ } }, "node_modules/electron": { - "version": "30.0.9", - "resolved": "https://registry.npmjs.org/electron/-/electron-30.0.9.tgz", - "integrity": "sha512-ArxgdGHVu3o5uaP+Tqj8cJDvU03R6vrGrOqiMs7JXLnvQHMqXJIIxmFKQAIdJW8VoT3ac3hD21tA7cPO10RLow==", + "version": "31.1.0", + "resolved": "https://registry.npmjs.org/electron/-/electron-31.1.0.tgz", + "integrity": "sha512-TBOwqLxSxnx6+pH6GMri7R3JPH2AkuGJHfWZS0p1HsmN+Qr1T9b0IRJnnehSd/3NZAmAre4ft9Ljec7zjyKFJA==", "dev": true, "hasInstallScript": true, + "license": "MIT", "dependencies": { "@electron/get": "^2.0.0", "@types/node": "^20.9.0", @@ -31587,9 +31588,9 @@ } }, "node_modules/nan": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.18.0.tgz", - "integrity": "sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==" + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", + "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==" }, "node_modules/nanoid": { "version": "3.3.1", @@ -33898,18 +33899,18 @@ } }, "node_modules/playwright": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.42.1.tgz", - "integrity": "sha512-PgwB03s2DZBcNRoW+1w9E+VkLBxweib6KTXM0M3tkiT4jVxKSi6PmVJ591J+0u10LUrgxB7dLRbiJqO5s2QPMg==", + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.45.0.tgz", + "integrity": "sha512-4z3ac3plDfYzGB6r0Q3LF8POPR20Z8D0aXcxbJvmfMgSSq1hkcgvFRXJk9rUq5H/MJ0Ktal869hhOdI/zUTeLA==", "dev": true, "dependencies": { - "playwright-core": "1.42.1" + "playwright-core": "1.45.0" }, "bin": { "playwright": "cli.js" }, "engines": { - "node": ">=16" + "node": ">=18" }, "optionalDependencies": { "fsevents": "2.3.2" @@ -33928,18 +33929,6 @@ "node": ">=18" } }, - "node_modules/playwright/node_modules/playwright-core": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.42.1.tgz", - "integrity": "sha512-mxz6zclokgrke9p1vtdy/COWBH+eOZgYUVVU34C73M+4j4HLlQJHtfcqiqqxpP0o8HhMkflvfbquLX5dg6wlfA==", - "dev": true, - "bin": { - "playwright-core": "cli.js" - }, - "engines": { - "node": ">=16" - } - }, "node_modules/plist": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", diff --git a/package.json b/package.json index 0ac20b328..39f09f18a 100644 --- a/package.json +++ b/package.json @@ -290,7 +290,7 @@ "csv-parse": "5.5.2", "danger": "11.3.1", "debug": "4.3.3", - "electron": "30.0.9", + "electron": "31.1.0", "electron-builder": "24.13.3", "electron-mocha": "12.2.0", "endanger": "7.0.4", @@ -315,7 +315,7 @@ "p-limit": "3.1.0", "patch-package": "8.0.0", "pixelmatch": "5.3.0", - "playwright": "1.42.1", + "playwright": "1.45.0", "pngjs": "7.0.0", "prettier": "2.8.0", "protobufjs-cli": "1.1.1", @@ -365,7 +365,7 @@ } }, "engines": { - "node": "20.11.1" + "node": "20.14.0" }, "build": { "appId": "org.whispersystems.signal-desktop", diff --git a/patches/nan+2.18.0.patch b/patches/nan+2.18.0.patch deleted file mode 100644 index 555aeb084..000000000 --- a/patches/nan+2.18.0.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff --git a/node_modules/nan/nan.h b/node_modules/nan/nan.h -index 2a68349..7576469 100644 ---- a/node_modules/nan/nan.h -+++ b/node_modules/nan/nan.h -@@ -2511,6 +2511,7 @@ inline void SetPrototypeMethod( - - //=== Accessors and Such ======================================================= - -+/* - NAN_DEPRECATED inline void SetAccessor( - v8::Local tpl - , v8::Local name -@@ -2557,6 +2558,7 @@ NAN_DEPRECATED inline void SetAccessor( - #endif - ); - } -+*/ - - inline void SetAccessor( - v8::Local tpl -@@ -2596,7 +2598,6 @@ inline void SetAccessor( - , getter_ - , setter_ - , obj -- , settings - , attribute - ); - } diff --git a/ts/scripts/test-electron.ts b/ts/scripts/test-electron.ts index 4bf0d56a3..81cb87a34 100644 --- a/ts/scripts/test-electron.ts +++ b/ts/scripts/test-electron.ts @@ -35,6 +35,8 @@ function launchElectron(attempt: number): string { NODE_ENV: 'test', TEST_QUIT_ON_COMPLETE: 'on', }, + // Since we run `.cmd` file on Windows - use shell + shell: process.platform === 'win32', encoding: 'utf8', }); return stdout;