From be50f52a3297fb8b17232bbcf90454a79b8d85be Mon Sep 17 00:00:00 2001 From: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com> Date: Thu, 11 Jul 2024 13:14:10 -0700 Subject: [PATCH] Use a fork of @electron/symbolicate-mac for speed --- package-lock.json | 108 +++++++++++-------------- package.json | 2 +- ts/scripts/symbolicate-crash-report.ts | 2 +- ts/scripts/symbolicate-mac.d.ts | 2 +- 4 files changed, 49 insertions(+), 65 deletions(-) diff --git a/package-lock.json b/package-lock.json index f5ab9a56b53..d9ca83124a1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -125,9 +125,9 @@ "@babel/preset-typescript": "7.23.0", "@electron/fuses": "1.5.0", "@electron/notarize": "2.1.0", - "@electron/symbolicate-mac": "2.1.0", "@formatjs/intl": "2.6.7", "@indutny/rezip-electron": "1.3.1", + "@indutny/symbolicate-mac": "2.3.0", "@mixer/parallel-prettier": "2.0.3", "@signalapp/mock-server": "6.6.0", "@storybook/addon-a11y": "8.1.11", @@ -3140,61 +3140,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@electron/symbolicate-mac": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@electron/symbolicate-mac/-/symbolicate-mac-2.1.0.tgz", - "integrity": "sha512-IOn78ATkPgtMSyK6tUToA4npOCMOnOLT4umhlEDPLpLMqNMeTR+2HlL/rHmTK4IlP5Pzd/GqqF2cQ4NtNRRV6Q==", - "dev": true, - "dependencies": { - "got": "^11.8.2", - "mkdirp": "^1.0.4", - "parse-breakpad": "^0.1.0", - "yargs": "^17.0.1" - }, - "bin": { - "electron-symbolicate-mac": "index.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@electron/symbolicate-mac/node_modules/got": { - "version": "11.8.6", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", - "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", - "dev": true, - "dependencies": { - "@sindresorhus/is": "^4.0.0", - "@szmarczak/http-timer": "^4.0.5", - "@types/cacheable-request": "^6.0.1", - "@types/responselike": "^1.0.0", - "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.2", - "decompress-response": "^6.0.0", - "http2-wrapper": "^1.0.0-beta.5.2", - "lowercase-keys": "^2.0.0", - "p-cancelable": "^2.0.0", - "responselike": "^2.0.0" - }, - "engines": { - "node": ">=10.19.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/got?sponsor=1" - } - }, - "node_modules/@electron/symbolicate-mac/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@electron/universal": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-1.5.1.tgz", @@ -4077,6 +4022,21 @@ "deprecated": "Use @eslint/object-schema instead", "dev": true }, + "node_modules/@indutny/breakpad": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@indutny/breakpad/-/breakpad-1.2.3.tgz", + "integrity": "sha512-64loyCp++8+nj4fVxiMeGe/J6yJJ4c1TYzH6OIOX9E5990Iw9cN5b0iGOc1IaFnu3wUWKP1OCbw38vDWVoIWcA==", + "dev": true, + "dependencies": { + "@indutny/breakpad-parser-wasm": "^1.0.3" + } + }, + "node_modules/@indutny/breakpad-parser-wasm": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@indutny/breakpad-parser-wasm/-/breakpad-parser-wasm-1.0.3.tgz", + "integrity": "sha512-hpgEfz5mI5OSu0XgD+kn1n/EsB1/i3c3GD+4AodrCRRdXEdoVmZMS3vA+1Yb+PFcMp29iNZtLkpfyT/zxVykYQ==", + "dev": true + }, "node_modules/@indutny/dicer": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/@indutny/dicer/-/dicer-0.3.2.tgz", @@ -4131,6 +4091,36 @@ "resolved": "https://registry.npmjs.org/@indutny/sneequals/-/sneequals-4.0.0.tgz", "integrity": "sha512-kQUBQtcm4aVqJil+KRfA7SycJqcWlFEa7MJTYyl4XAahHOPXnzgqvlzUPQOw1tRFlvnzxRpXNUpJxej2fdAPjg==" }, + "node_modules/@indutny/symbolicate-mac": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@indutny/symbolicate-mac/-/symbolicate-mac-2.3.0.tgz", + "integrity": "sha512-DhRqZVF5HiN5Gke7cEofMgzb44DZXX/MIrkb4MUyclt6Xb+Uq1yBXbIFMymi9iNafkFgT7jZr5q/+QyWlt2RTA==", + "dev": true, + "dependencies": { + "@indutny/breakpad": "^1.2.0", + "got": "^11.8.2", + "mkdirp": "^1.0.4", + "yargs": "^17.0.1" + }, + "bin": { + "electron-symbolicate-mac": "index.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@indutny/symbolicate-mac/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@indutny/yazl": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/@indutny/yazl/-/yazl-2.7.0.tgz", @@ -29000,12 +28990,6 @@ "node": ">=6" } }, - "node_modules/parse-breakpad": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/parse-breakpad/-/parse-breakpad-0.1.0.tgz", - "integrity": "sha512-xF9F9+LnMzPhXZSExrvyhzormvlR0Co9LJ9Un8SPDMiMNm3PqIwfYiB4UcqG50yc9g42H2Fndpx/5gfNqdgowQ==", - "dev": true - }, "node_modules/parse-diff": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/parse-diff/-/parse-diff-0.7.1.tgz", diff --git a/package.json b/package.json index 76877c18481..b21bb685c43 100644 --- a/package.json +++ b/package.json @@ -207,9 +207,9 @@ "@babel/preset-typescript": "7.23.0", "@electron/fuses": "1.5.0", "@electron/notarize": "2.1.0", - "@electron/symbolicate-mac": "2.1.0", "@formatjs/intl": "2.6.7", "@indutny/rezip-electron": "1.3.1", + "@indutny/symbolicate-mac": "2.3.0", "@mixer/parallel-prettier": "2.0.3", "@signalapp/mock-server": "6.6.0", "@storybook/addon-a11y": "8.1.11", diff --git a/ts/scripts/symbolicate-crash-report.ts b/ts/scripts/symbolicate-crash-report.ts index 1aa91258f11..dbed12cf527 100644 --- a/ts/scripts/symbolicate-crash-report.ts +++ b/ts/scripts/symbolicate-crash-report.ts @@ -6,7 +6,7 @@ import { readFile, writeFile, mkdtemp } from 'fs/promises'; import { gunzip as gunzipCb } from 'zlib'; import { join, basename } from 'path'; import { promisify } from 'util'; -import { symbolicate } from '@electron/symbolicate-mac'; +import { symbolicate } from '@indutny/symbolicate-mac'; import pMap from 'p-map'; const gunzip = promisify(gunzipCb); diff --git a/ts/scripts/symbolicate-mac.d.ts b/ts/scripts/symbolicate-mac.d.ts index 3e9a953aa45..726e6873d87 100644 --- a/ts/scripts/symbolicate-mac.d.ts +++ b/ts/scripts/symbolicate-mac.d.ts @@ -1,7 +1,7 @@ // Copyright 2024 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only -declare module '@electron/symbolicate-mac' { +declare module '@indutny/symbolicate-mac' { export function symbolicate(options: { file: string; force?: boolean;