From a714e8d3bb114bb47204d4371d0bff3fe0f0fc05 Mon Sep 17 00:00:00 2001 From: Jamey Huffnagle Date: Thu, 5 Dec 2024 12:04:51 -0500 Subject: [PATCH] chore(monorepo): Update Electron to v33.2.1 (#17010) Closes EXEC-1032 This PR continues the work started in #15894, cherry-picking several commits and completes updating Electron to 33.2.1. There are a couple dependency updates as well: node gets a big bump to 22.11.0,electron-rebuild bumps to 3.7.1, and electron-builder bumps to 25.1.8. This PR does not bump USB-related dependencies, since USB works as is (and if we're going to bump those dependencies, it would be nice to do them in an isolated PR). --- .eslintignore | 1 + .github/workflows/abr-testing-lint-test.yaml | 10 +- .github/workflows/api-test-lint-deploy.yaml | 18 +- .github/workflows/app-test-build-deploy.yaml | 24 +- .../components-test-build-deploy.yaml | 28 +- .github/workflows/docs-build.yaml | 6 +- .github/workflows/g-code-confirm-tests.yaml | 16 +- .../workflows/g-code-testing-lint-test.yaml | 6 +- .github/workflows/hardware-lint-test.yaml | 4 +- .../workflows/hardware-testing-protocols.yaml | 4 +- .github/workflows/hardware-testing.yaml | 4 +- .github/workflows/http-docs-build.yaml | 6 +- .github/workflows/js-check.yaml | 6 +- .github/workflows/ll-test-build-deploy.yaml | 32 +- ...s-ai-client-staging-continuous-deploy.yaml | 6 +- .../workflows/opentrons-ai-client-test.yaml | 6 +- .../opentrons-ai-production-deploy.yaml | 6 +- .github/workflows/pd-test-build-deploy.yaml | 24 +- .github/workflows/react-api-client-test.yaml | 6 +- .github/workflows/robot-server-lint-test.yaml | 6 +- .github/workflows/server-utils-lint-test.yaml | 12 +- .../shared-data-test-lint-deploy.yaml | 34 +- .github/workflows/step-generation-test.yaml | 6 +- .../workflows/system-server-lint-test.yaml | 12 +- .github/workflows/tag-releases.yaml | 6 +- .../workflows/test-edge-with-hypothesis.yaml | 44 +- .../workflows/update-server-lint-test.yaml | 12 +- .github/workflows/usb-bridge-lint-test.yaml | 12 +- .nvmrc | 2 +- DEV_SETUP.md | 6 +- app-shell-odd/electron-builder.config.js | 2 +- app-shell-odd/package.json | 3 +- app-shell/Makefile | 2 +- app-shell/electron-builder.config.js | 2 +- app-shell/package.json | 3 +- app-shell/src/__tests__/update.test.ts | 8 +- app-shell/src/preload.ts | 12 +- app-shell/src/update.ts | 10 +- app/src/index.tsx | 5 +- .../ChooseRobotToRunProtocolSlideout.test.tsx | 4 +- .../AddCustomLabwareSlideout.test.tsx | 5 + .../AddCustomLabwareSlideout/index.tsx | 6 +- .../ProtocolsLanding/ProtocolUploadInput.tsx | 33 +- .../__tests__/UploadInput.test.tsx | 27 +- .../Desktop/UpdateAppModal/index.tsx | 11 +- app/src/redux/shell/index.ts | 1 + app/src/redux/shell/types.ts | 13 +- app/src/redux/types.ts | 2 + package.json | 9 +- yarn.lock | 515 ++++++++++-------- 50 files changed, 570 insertions(+), 468 deletions(-) diff --git a/.eslintignore b/.eslintignore index 5d9406d522a..5535673df8f 100644 --- a/.eslintignore +++ b/.eslintignore @@ -12,6 +12,7 @@ **/CHANGELOG.md !api/release-notes.md !app-shell/build/release-notes.md +**/.yarn-cache/** # components library storybook-static diff --git a/.github/workflows/abr-testing-lint-test.yaml b/.github/workflows/abr-testing-lint-test.yaml index e103c61efdd..447597c2b89 100644 --- a/.github/workflows/abr-testing-lint-test.yaml +++ b/.github/workflows/abr-testing-lint-test.yaml @@ -36,11 +36,11 @@ jobs: runs-on: 'windows-latest' steps: - name: Checkout opentrons repo - uses: 'actions/checkout@v3' + uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: Setup Node - uses: 'actions/setup-node@v3' + uses: 'actions/setup-node@v4' with: node-version: '12' - name: Setup Python @@ -52,8 +52,6 @@ jobs: with: project: 'abr-testing' - name: lint - run: - make -C abr-testing lint + run: make -C abr-testing lint - name: test - run: - make -C abr-testing test + run: make -C abr-testing test diff --git a/.github/workflows/api-test-lint-deploy.yaml b/.github/workflows/api-test-lint-deploy.yaml index 5143c6e8021..6297cb7c747 100644 --- a/.github/workflows/api-test-lint-deploy.yaml +++ b/.github/workflows/api-test-lint-deploy.yaml @@ -51,12 +51,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' @@ -84,7 +84,7 @@ jobs: with-ot-hardware: 'true' runs-on: '${{ matrix.os }}' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -93,9 +93,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: ${{ matrix.python }} @@ -134,7 +134,7 @@ jobs: runs-on: 'ubuntu-22.04' if: github.event_name == 'push' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -143,9 +143,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.github/workflows/app-test-build-deploy.yaml b/.github/workflows/app-test-build-deploy.yaml index 0b5c1cbe35f..da43d601115 100644 --- a/.github/workflows/app-test-build-deploy.yaml +++ b/.github/workflows/app-test-build-deploy.yaml @@ -56,10 +56,10 @@ jobs: name: 'opentrons app frontend unit tests' timeout-minutes: 60 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -105,7 +105,7 @@ jobs: timeout-minutes: 60 runs-on: ${{ matrix.os }} steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -114,9 +114,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: actions/setup-python@v4 with: python-version: '3.10' @@ -261,7 +261,7 @@ jobs: echo "bucket=${{env._APP_DEPLOY_BUCKET_OT3}}" >> $GITHUB_OUTPUT echo "folder=${{env._APP_DEPLOY_FOLDER_OT3}}" >> $GITHUB_OUTPUT fi - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -270,9 +270,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: actions/setup-python@v4 with: python-version: '3.10' @@ -488,7 +488,7 @@ jobs: _ACCESS_URL: https://${{env._APP_DEPLOY_BUCKET_ROBOTSTACK}}/${{env._APP_DEPLOY_FOLDER_ROBOTSTACK}} - name: 'pull repo for scripts' - uses: 'actions/checkout@v3' + uses: 'actions/checkout@v4' with: path: ./monorepo # https://github.com/actions/checkout/issues/290 @@ -498,9 +498,9 @@ jobs: cd ./monorepo git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/components-test-build-deploy.yaml b/.github/workflows/components-test-build-deploy.yaml index 1cf0ebbb284..3eba5c64a4b 100644 --- a/.github/workflows/components-test-build-deploy.yaml +++ b/.github/workflows/components-test-build-deploy.yaml @@ -43,10 +43,10 @@ jobs: timeout-minutes: 30 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -79,10 +79,10 @@ jobs: if: github.event_name != 'pull_request' needs: ['js-unit-test'] steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -140,16 +140,16 @@ jobs: ['js-unit-test', 'build-components-storybook', 'determine-build-type'] if: needs.determine-build-type.outputs.type != 'none' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'set complex environment variables' id: 'set-vars' uses: actions/github-script@v6 @@ -180,16 +180,16 @@ jobs: needs: ['js-unit-test', 'determine-build-type'] if: needs.determine-build-type.outputs.type == 'publish' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' registry-url: 'https://registry.npmjs.org' - name: 'install udev for usb-detection' run: | @@ -210,9 +210,9 @@ jobs: VERSION_STRING=$(echo ${{ github.ref }} | sed 's/refs\/tags\/components@//') json -I -f ./components/package.json -e "this.version=\"$VERSION_STRING\"" json -I -f ./components/package.json -e "this.dependencies['@opentrons/shared-data']=\"$VERSION_STRING\"" - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' registry-url: 'https://registry.npmjs.org' - name: 'publish to npm registry' env: diff --git a/.github/workflows/docs-build.yaml b/.github/workflows/docs-build.yaml index 08b1c2b76cf..6a4f49f0d20 100644 --- a/.github/workflows/docs-build.yaml +++ b/.github/workflows/docs-build.yaml @@ -40,7 +40,7 @@ jobs: name: opentrons documentation build runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -49,9 +49,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v3' with: python-version: '3.10' diff --git a/.github/workflows/g-code-confirm-tests.yaml b/.github/workflows/g-code-confirm-tests.yaml index 146fa96b9a2..9c43bfe16d8 100644 --- a/.github/workflows/g-code-confirm-tests.yaml +++ b/.github/workflows/g-code-confirm-tests.yaml @@ -1,4 +1,4 @@ -name: "G-Code-Confirm" +name: 'G-Code-Confirm' on: # Run on any change to the api directory @@ -31,20 +31,14 @@ jobs: confirm-g-code: strategy: matrix: - command: [ - '2-modules', - 'swift-smoke', - 'swift-turbo', - 'omega', - 'fast' - ] + command: ['2-modules', 'swift-smoke', 'swift-turbo', 'omega', 'fast'] name: 'Confirm G-Code (${{ matrix.command }})' runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: node-version: '12' - uses: 'actions/setup-python@v3' @@ -54,7 +48,7 @@ jobs: with: project: 'g-code-testing' - - name: "Verify no missing comparison files" + - name: 'Verify no missing comparison files' run: make -C g-code-testing check-for-missing-comparison-files - name: 'Run & Compare to comparison files' diff --git a/.github/workflows/g-code-testing-lint-test.yaml b/.github/workflows/g-code-testing-lint-test.yaml index e174bc7ac52..9da53b78182 100644 --- a/.github/workflows/g-code-testing-lint-test.yaml +++ b/.github/workflows/g-code-testing-lint-test.yaml @@ -42,7 +42,7 @@ jobs: name: 'g-code-testing package linting and tests' runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: 'install udev' @@ -50,9 +50,9 @@ jobs: # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list sudo apt-get update && sudo apt-get install libudev-dev - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'set complex environment variables' id: 'set-vars' uses: actions/github-script@v6 diff --git a/.github/workflows/hardware-lint-test.yaml b/.github/workflows/hardware-lint-test.yaml index f5e701ea883..8714a40d250 100644 --- a/.github/workflows/hardware-lint-test.yaml +++ b/.github/workflows/hardware-lint-test.yaml @@ -44,11 +44,11 @@ jobs: runs-on: 'ubuntu-20.04' steps: - name: Checkout opentrons repo - uses: 'actions/checkout@v3' + uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: Setup Node - uses: 'actions/setup-node@v3' + uses: 'actions/setup-node@v4' with: node-version: '12' diff --git a/.github/workflows/hardware-testing-protocols.yaml b/.github/workflows/hardware-testing-protocols.yaml index ee59d2dc25c..1573c69380a 100644 --- a/.github/workflows/hardware-testing-protocols.yaml +++ b/.github/workflows/hardware-testing-protocols.yaml @@ -38,12 +38,12 @@ jobs: runs-on: 'ubuntu-20.04' steps: - name: Checkout opentrons repo - uses: 'actions/checkout@v3' + uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: Setup Node - uses: 'actions/setup-node@v3' + uses: 'actions/setup-node@v4' with: node-version: '12' diff --git a/.github/workflows/hardware-testing.yaml b/.github/workflows/hardware-testing.yaml index bb738b13e4b..116ca872c85 100644 --- a/.github/workflows/hardware-testing.yaml +++ b/.github/workflows/hardware-testing.yaml @@ -43,12 +43,12 @@ jobs: runs-on: 'ubuntu-20.04' steps: - name: Checkout opentrons repo - uses: 'actions/checkout@v3' + uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: Setup Node - uses: 'actions/setup-node@v3' + uses: 'actions/setup-node@v4' with: node-version: '12' diff --git a/.github/workflows/http-docs-build.yaml b/.github/workflows/http-docs-build.yaml index 6294eeb2172..f2c21368d5e 100644 --- a/.github/workflows/http-docs-build.yaml +++ b/.github/workflows/http-docs-build.yaml @@ -40,7 +40,7 @@ jobs: name: HTTP API reference build runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -52,9 +52,9 @@ jobs: - uses: 'actions/setup-python@v3' with: python-version: '3.10' - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: './.github/actions/python/setup' with: project: 'robot-server' diff --git a/.github/workflows/js-check.yaml b/.github/workflows/js-check.yaml index 139d3b618ad..807d4a2570c 100644 --- a/.github/workflows/js-check.yaml +++ b/.github/workflows/js-check.yaml @@ -42,10 +42,10 @@ jobs: runs-on: 'ubuntu-22.04' timeout-minutes: 20 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'set complex environment variables' id: 'set-vars' uses: actions/github-script@v6 diff --git a/.github/workflows/ll-test-build-deploy.yaml b/.github/workflows/ll-test-build-deploy.yaml index 140537593e2..e00e9b9cab9 100644 --- a/.github/workflows/ll-test-build-deploy.yaml +++ b/.github/workflows/ll-test-build-deploy.yaml @@ -40,12 +40,12 @@ jobs: js-unit-test: name: 'labware library unit tests' timeout-minutes: 20 - runs-on: 'ubuntu-20.04' + runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') @@ -83,18 +83,18 @@ jobs: name: 'labware library e2e tests' needs: ['js-unit-test'] timeout-minutes: 30 - runs-on: 'ubuntu-20.04' + runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install libudev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -123,10 +123,10 @@ jobs: name: 'build labware library artifact' needs: ['js-unit-test'] timeout-minutes: 30 - runs-on: 'ubuntu-20.04' + runs-on: 'ubuntu-22.04' if: github.event_name != 'pull_request' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -135,9 +135,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install libudev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -170,20 +170,20 @@ jobs: path: labware-library/dist deploy-ll: name: 'deploy LL artifact to S3' - runs-on: 'ubuntu-20.04' + runs-on: 'ubuntu-22.04' needs: ['js-unit-test', 'e2e-test', 'build-ll'] if: github.event_name != 'pull_request' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/opentrons-ai-client-staging-continuous-deploy.yaml b/.github/workflows/opentrons-ai-client-staging-continuous-deploy.yaml index 7a89bfa02dd..88c7c70d3ec 100644 --- a/.github/workflows/opentrons-ai-client-staging-continuous-deploy.yaml +++ b/.github/workflows/opentrons-ai-client-staging-continuous-deploy.yaml @@ -23,10 +23,10 @@ jobs: name: 'OpentronsAI client edge continuous deployment to staging' timeout-minutes: 10 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/opentrons-ai-client-test.yaml b/.github/workflows/opentrons-ai-client-test.yaml index 2c5cc6cfc64..0a78cf73da3 100644 --- a/.github/workflows/opentrons-ai-client-test.yaml +++ b/.github/workflows/opentrons-ai-client-test.yaml @@ -39,10 +39,10 @@ jobs: name: 'opentrons ai frontend unit tests' timeout-minutes: 60 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/opentrons-ai-production-deploy.yaml b/.github/workflows/opentrons-ai-production-deploy.yaml index 2327b48ecad..1850400bbd0 100644 --- a/.github/workflows/opentrons-ai-production-deploy.yaml +++ b/.github/workflows/opentrons-ai-production-deploy.yaml @@ -23,10 +23,10 @@ jobs: name: 'OpentronsAI client prod deploy' timeout-minutes: 10 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/pd-test-build-deploy.yaml b/.github/workflows/pd-test-build-deploy.yaml index 306a475aacc..ce28d79e9a5 100644 --- a/.github/workflows/pd-test-build-deploy.yaml +++ b/.github/workflows/pd-test-build-deploy.yaml @@ -42,16 +42,16 @@ jobs: runs-on: 'ubuntu-22.04' timeout-minutes: 30 steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -88,7 +88,7 @@ jobs: os: ['ubuntu-22.04'] runs-on: '${{ matrix.os }}' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -97,9 +97,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' if: startsWith(matrix.os, 'ubuntu') run: | @@ -128,7 +128,7 @@ jobs: runs-on: 'ubuntu-22.04' if: github.event_name != 'pull_request' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -137,9 +137,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -174,16 +174,16 @@ jobs: needs: ['js-unit-test', 'build-pd'] if: github.event_name != 'pull_request' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/react-api-client-test.yaml b/.github/workflows/react-api-client-test.yaml index 2bccadae770..8a8759f12e1 100644 --- a/.github/workflows/react-api-client-test.yaml +++ b/.github/workflows/react-api-client-test.yaml @@ -36,10 +36,10 @@ jobs: timeout-minutes: 30 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install libudev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/robot-server-lint-test.yaml b/.github/workflows/robot-server-lint-test.yaml index 96d1969121b..6735ab36136 100644 --- a/.github/workflows/robot-server-lint-test.yaml +++ b/.github/workflows/robot-server-lint-test.yaml @@ -56,12 +56,12 @@ jobs: matrix: with-ot-hardware: ['true', 'false'] steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.github/workflows/server-utils-lint-test.yaml b/.github/workflows/server-utils-lint-test.yaml index 240d9e0bd25..9c8f37b6c79 100644 --- a/.github/workflows/server-utils-lint-test.yaml +++ b/.github/workflows/server-utils-lint-test.yaml @@ -41,12 +41,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' @@ -62,12 +62,12 @@ jobs: needs: [lint] runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.github/workflows/shared-data-test-lint-deploy.yaml b/.github/workflows/shared-data-test-lint-deploy.yaml index 39cc4cd30e4..c5858d5da0e 100644 --- a/.github/workflows/shared-data-test-lint-deploy.yaml +++ b/.github/workflows/shared-data-test-lint-deploy.yaml @@ -46,12 +46,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v3' with: python-version: '3.10' @@ -75,7 +75,7 @@ jobs: runs-on: '${{ matrix.os }}' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - name: 'install udev for usb-detection' @@ -86,7 +86,7 @@ jobs: sudo apt-get update && sudo apt-get install libudev-dev - uses: 'actions/setup-node@v1' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: ${{ matrix.python }} @@ -115,10 +115,10 @@ jobs: runs-on: 'ubuntu-22.04' timeout-minutes: 30 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -152,7 +152,7 @@ jobs: runs-on: 'ubuntu-22.04' if: github.event_name == 'push' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 # https://github.com/actions/checkout/issues/290 @@ -161,9 +161,9 @@ jobs: run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved @@ -223,16 +223,16 @@ jobs: needs: ['js-test', 'publish-switch'] if: needs.publish-switch.outputs.should_publish == 'true' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' # https://github.com/actions/checkout/issues/290 - name: 'Fix actions/checkout odd handling of tags' if: startsWith(github.ref, 'refs/tags') run: | git fetch -f origin ${{ github.ref }}:${{ github.ref }} git checkout ${{ github.ref }} - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' registry-url: 'https://registry.npmjs.org' - name: 'install udev for usb-detection' run: | @@ -252,7 +252,7 @@ jobs: run: | npm config set cache ./.npm-cache yarn config set cache-folder ./.yarn-cache - make setup-js + make setup-js - name: 'build typescript' run: make build-ts - name: 'build library' @@ -265,9 +265,9 @@ jobs: VERSION_STRING=$(echo ${{ github.ref }} | sed -E 's/refs\/tags\/(components|shared-data)@//') json -I -f ./shared-data/package.json -e "this.version=\"$VERSION_STRING\"" cd ./shared-data - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' registry-url: 'https://registry.npmjs.org' - name: 'publish to npm registry' env: diff --git a/.github/workflows/step-generation-test.yaml b/.github/workflows/step-generation-test.yaml index 7ac65f3997e..ac435cf999d 100644 --- a/.github/workflows/step-generation-test.yaml +++ b/.github/workflows/step-generation-test.yaml @@ -35,10 +35,10 @@ jobs: runs-on: 'ubuntu-22.04' timeout-minutes: 30 steps: - - uses: 'actions/checkout@v3' - - uses: 'actions/setup-node@v3' + - uses: 'actions/checkout@v4' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'install udev for usb-detection' run: | # WORKAROUND: Remove microsoft debian repo due to https://github.com/microsoft/linux-package-repositories/issues/130. Remove line below after it is resolved diff --git a/.github/workflows/system-server-lint-test.yaml b/.github/workflows/system-server-lint-test.yaml index 720ca905bd7..ffd526c6834 100644 --- a/.github/workflows/system-server-lint-test.yaml +++ b/.github/workflows/system-server-lint-test.yaml @@ -43,12 +43,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' @@ -64,12 +64,12 @@ jobs: needs: [lint] runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.github/workflows/tag-releases.yaml b/.github/workflows/tag-releases.yaml index 864f1e45b36..1f8c3ee153a 100644 --- a/.github/workflows/tag-releases.yaml +++ b/.github/workflows/tag-releases.yaml @@ -19,12 +19,12 @@ jobs: # git fetch origin ${{ github.ref_name }}:${{ github.ref_name }} # git checkout ${{ github.ref_name }} # This would pull history for only the tag in question. - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - name: 'cache yarn cache' uses: actions/cache@v3 with: diff --git a/.github/workflows/test-edge-with-hypothesis.yaml b/.github/workflows/test-edge-with-hypothesis.yaml index 15e452dc33a..596a5339d45 100644 --- a/.github/workflows/test-edge-with-hypothesis.yaml +++ b/.github/workflows/test-edge-with-hypothesis.yaml @@ -2,8 +2,8 @@ name: 'Testing Edge with Hypothesis' on: schedule: - - cron: '45 22 * * 1-5' - + - cron: '45 22 * * 1-5' + workflow_dispatch: concurrency: @@ -20,23 +20,23 @@ jobs: timeout-minutes: 120 runs-on: 'ubuntu-latest' steps: - - name: 'Checkout opentrons repo' - uses: 'actions/checkout@v3' - with: - ref: 'edge' - fetch-depth: 0 - - - name: 'Setup Python' - uses: 'actions/setup-python@v5' - with: - python-version: '3.10' - cache: 'pipenv' - cache-dependency-path: 'test-data-generation/Pipfile.lock' - - - name: 'Install Python deps' - uses: './.github/actions/python/setup' - with: - project: 'test-data-generation' - - - name: 'Run Hypothesis tests' - run: 'make -C test-data-generation test' + - name: 'Checkout opentrons repo' + uses: 'actions/checkout@v4' + with: + ref: 'edge' + fetch-depth: 0 + + - name: 'Setup Python' + uses: 'actions/setup-python@v5' + with: + python-version: '3.10' + cache: 'pipenv' + cache-dependency-path: 'test-data-generation/Pipfile.lock' + + - name: 'Install Python deps' + uses: './.github/actions/python/setup' + with: + project: 'test-data-generation' + + - name: 'Run Hypothesis tests' + run: 'make -C test-data-generation test' diff --git a/.github/workflows/update-server-lint-test.yaml b/.github/workflows/update-server-lint-test.yaml index b4d1435838f..1d3164a63cf 100644 --- a/.github/workflows/update-server-lint-test.yaml +++ b/.github/workflows/update-server-lint-test.yaml @@ -41,12 +41,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' @@ -62,12 +62,12 @@ jobs: needs: [lint] runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.github/workflows/usb-bridge-lint-test.yaml b/.github/workflows/usb-bridge-lint-test.yaml index 2888291871a..bfe11aed61b 100644 --- a/.github/workflows/usb-bridge-lint-test.yaml +++ b/.github/workflows/usb-bridge-lint-test.yaml @@ -41,12 +41,12 @@ jobs: timeout-minutes: 10 runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' @@ -62,12 +62,12 @@ jobs: needs: [lint] runs-on: 'ubuntu-22.04' steps: - - uses: 'actions/checkout@v3' + - uses: 'actions/checkout@v4' with: fetch-depth: 0 - - uses: 'actions/setup-node@v3' + - uses: 'actions/setup-node@v4' with: - node-version: '18.19.0' + node-version: '22.11.0' - uses: 'actions/setup-python@v4' with: python-version: '3.10' diff --git a/.nvmrc b/.nvmrc index 3c032078a4a..fdb2eaaff0c 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -18 +22.11.0 \ No newline at end of file diff --git a/DEV_SETUP.md b/DEV_SETUP.md index 238f2c7fda3..a334b047745 100644 --- a/DEV_SETUP.md +++ b/DEV_SETUP.md @@ -13,7 +13,7 @@ You will need the following tools installed to develop on the Opentrons platform - curl - ssh - Python v3.10 -- Node.js v18 +- Node.js v22.11.0 ### macOS @@ -85,7 +85,7 @@ nvs --version Now we can use `nvs` to install the currently required Node.js version set in `.nvmrc`. The `auto` command selects the correct version of Node.js any time we're in the `opentrons` project directory. Without `auto`, we would have to manually run `use` or `install` each time we work on the project. ```shell -nvs add 18 +nvs add 22 nvs auto on ``` @@ -202,7 +202,7 @@ Once you are inside the repository for the first time, you should do two things: 3. Run `python --version` to confirm your chosen version. If you get the incorrect version and you're using an Apple silicon Mac, try running `eval "$(pyenv init --path)"` and then `pyenv local 3.10.13`. Then check `python --version` again. ```shell -# confirm Node v18 +# confirm Node v22.11.0 or greater node --version # set Python version, and confirm diff --git a/app-shell-odd/electron-builder.config.js b/app-shell-odd/electron-builder.config.js index d5cd4ac7eea..10faa01b3b0 100644 --- a/app-shell-odd/electron-builder.config.js +++ b/app-shell-odd/electron-builder.config.js @@ -2,7 +2,7 @@ module.exports = { appId: 'com.opentrons.odd', - electronVersion: '27.0.0', + electronVersion: '33.2.1', npmRebuild: false, files: [ '**/*', diff --git a/app-shell-odd/package.json b/app-shell-odd/package.json index 253b41ca895..9835b30df79 100644 --- a/app-shell-odd/package.json +++ b/app-shell-odd/package.json @@ -8,7 +8,7 @@ "types": "lib/main.d.ts", "scripts": { "start": "make dev", - "rebuild": "electron-rebuild" + "rebuild": "electron-rebuild --force-abi=3.71.0" }, "repository": { "type": "git", @@ -42,7 +42,6 @@ "dateformat": "3.0.3", "electron-devtools-installer": "3.2.0", "electron-store": "5.1.1", - "electron-updater": "4.1.2", "execa": "4.0.0", "form-data": "2.5.0", "fs-extra": "10.0.0", diff --git a/app-shell/Makefile b/app-shell/Makefile index 74e4e4b1912..ec54213bf69 100644 --- a/app-shell/Makefile +++ b/app-shell/Makefile @@ -59,7 +59,7 @@ no_python_bundle ?= builder := yarn electron-builder \ --config electron-builder.config.js \ - --config.electronVersion=27.0.0 \ + --config.electronVersion=33.2.1 \ --publish never diff --git a/app-shell/electron-builder.config.js b/app-shell/electron-builder.config.js index 1b048915255..decac1f66b9 100644 --- a/app-shell/electron-builder.config.js +++ b/app-shell/electron-builder.config.js @@ -25,7 +25,7 @@ const publishConfig = module.exports = async () => ({ appId: project === 'robot-stack' ? 'com.opentrons.app' : 'com.opentrons.appot3', - electronVersion: '27.0.0', + electronVersion: '33.2.1', npmRebuild: false, releaseInfo: { releaseNotesFile: diff --git a/app-shell/package.json b/app-shell/package.json index e94f1f269e2..8c474d7247c 100644 --- a/app-shell/package.json +++ b/app-shell/package.json @@ -8,7 +8,7 @@ "types": "lib/main.d.ts", "scripts": { "start": "make dev", - "rebuild": "electron-rebuild" + "rebuild": "electron-rebuild --force-abi=3.71.0" }, "repository": { "type": "git", @@ -50,7 +50,6 @@ "electron-localshortcut": "3.2.1", "electron-devtools-installer": "3.2.0", "electron-store": "5.1.1", - "electron-updater": "4.1.2", "execa": "4.0.0", "form-data": "2.5.0", "fs-extra": "10.0.0", diff --git a/app-shell/src/__tests__/update.test.ts b/app-shell/src/__tests__/update.test.ts index 19d22e65b8f..3c0afe3e514 100644 --- a/app-shell/src/__tests__/update.test.ts +++ b/app-shell/src/__tests__/update.test.ts @@ -38,7 +38,7 @@ describe('update', () => { vi.mocked(ElectronUpdater.autoUpdater).emit('update-available', { version: '1.0.0', - }) + } as any) expect(dispatch).toHaveBeenCalledWith({ type: 'shell:CHECK_UPDATE_RESULT', @@ -50,7 +50,7 @@ describe('update', () => { handleAction({ type: 'shell:CHECK_UPDATE', meta: { shell: true } }) vi.mocked(ElectronUpdater.autoUpdater).emit('update-not-available', { version: '1.0.0', - }) + } as any) expect(dispatch).toHaveBeenCalledWith({ type: 'shell:CHECK_UPDATE_RESULT', @@ -82,7 +82,7 @@ describe('update', () => { vi.mocked(ElectronUpdater.autoUpdater).downloadUpdate ).toHaveBeenCalledTimes(1) - const progress = { + const progress: any = { percent: 20, } @@ -97,7 +97,7 @@ describe('update', () => { vi.mocked(ElectronUpdater.autoUpdater).emit('update-downloaded', { version: '1.0.0', - }) + } as any) expect(dispatch).toHaveBeenCalledWith({ type: 'shell:DOWNLOAD_UPDATE_RESULT', diff --git a/app-shell/src/preload.ts b/app-shell/src/preload.ts index cf1f4ef7bef..16ef6b7aa30 100644 --- a/app-shell/src/preload.ts +++ b/app-shell/src/preload.ts @@ -1,7 +1,15 @@ // preload script for renderer process // defines subset of Electron API that renderer process is allowed to access // for security reasons -import { ipcRenderer } from 'electron' +import { ipcRenderer, webUtils } from 'electron' + +// The renderer process is not permitted the file path for any type "file" input +// post Electron v32. The correct way of doing this involves the context bridge, +// see comments in Electron settings. +// See https://www.electronjs.org/docs/latest/breaking-changes#removed-filepath +const getFilePathFrom = (file: File): Promise => { + return Promise.resolve(webUtils.getPathForFile(file)) +} // @ts-expect-error can't get TS to recognize global.d.ts -global.APP_SHELL_REMOTE = { ipcRenderer } +global.APP_SHELL_REMOTE = { ipcRenderer, getFilePathFrom } diff --git a/app-shell/src/update.ts b/app-shell/src/update.ts index 5742904ae8b..5b926a17c71 100644 --- a/app-shell/src/update.ts +++ b/app-shell/src/update.ts @@ -11,6 +11,7 @@ const autoUpdater = updater.autoUpdater autoUpdater.logger = createLogger('update') autoUpdater.autoDownload = false +autoUpdater.forceDevUpdateConfig = true export const CURRENT_VERSION: string = autoUpdater.currentVersion.version @@ -77,16 +78,9 @@ interface ProgressInfo { percent: number bytesPerSecond: number } -interface DownloadingPayload { - progress: ProgressInfo - bytesPerSecond: number - percent: number - total: number - transferred: number -} function downloadUpdate(dispatch: Dispatch): void { - const onDownloading = (payload: DownloadingPayload): void => { + const onDownloading = (payload: ProgressInfo): void => { dispatch({ type: 'shell:DOWNLOAD_PERCENTAGE', payload }) } const onDownloaded = (): void => { diff --git a/app/src/index.tsx b/app/src/index.tsx index a668270ac17..cdb9a3c067d 100644 --- a/app/src/index.tsx +++ b/app/src/index.tsx @@ -6,6 +6,7 @@ import { HashRouter } from 'react-router-dom' import { ApiClientProvider } from '@opentrons/react-api-client' +import { App } from './App' import { createLogger } from './logger' import { uiInitialized } from './redux/shell' @@ -16,8 +17,10 @@ import '../src/atoms/SoftwareKeyboard/FullKeyboard/index.css' import '../src/atoms/SoftwareKeyboard/IndividualKey/index.css' import '../src/atoms/SoftwareKeyboard/NumericalKeyboard/index.css' +// export public types so they can be accessed by external deps +export * from './redux/types' + // component tree -import { App } from './App' const log = createLogger(new URL('', import.meta.url).pathname) diff --git a/app/src/organisms/Desktop/ChooseRobotToRunProtocolSlideout/__tests__/ChooseRobotToRunProtocolSlideout.test.tsx b/app/src/organisms/Desktop/ChooseRobotToRunProtocolSlideout/__tests__/ChooseRobotToRunProtocolSlideout.test.tsx index 5c7e858fb38..2bab265eb52 100644 --- a/app/src/organisms/Desktop/ChooseRobotToRunProtocolSlideout/__tests__/ChooseRobotToRunProtocolSlideout.test.tsx +++ b/app/src/organisms/Desktop/ChooseRobotToRunProtocolSlideout/__tests__/ChooseRobotToRunProtocolSlideout.test.tsx @@ -436,9 +436,7 @@ describe('ChooseRobotToRunProtocolSlideout', () => { fireEvent.click(proceedButton) const confirm = screen.getByRole('button', { name: 'Confirm values' }) fireEvent.pointerEnter(confirm) - await waitFor(() => - screen.findByText('Add the required CSV file to continue.') - ) + await screen.findByText('Add the required CSV file to continue.') }) }) diff --git a/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/__tests__/AddCustomLabwareSlideout.test.tsx b/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/__tests__/AddCustomLabwareSlideout.test.tsx index 977f44f2cce..1a4fef0be5c 100644 --- a/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/__tests__/AddCustomLabwareSlideout.test.tsx +++ b/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/__tests__/AddCustomLabwareSlideout.test.tsx @@ -13,6 +13,11 @@ import { AddCustomLabwareSlideout } from '..' vi.mock('/app/redux/custom-labware') vi.mock('/app/local-resources/labware') vi.mock('/app/redux/analytics') +vi.mock('/app/redux/shell/remote', () => ({ + remote: { + getFilePathFrom: vi.fn(), + }, +})) let mockTrackEvent: any diff --git a/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/index.tsx b/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/index.tsx index 1ded9827380..448a97c4b79 100644 --- a/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/index.tsx +++ b/app/src/organisms/Desktop/Labware/AddCustomLabwareSlideout/index.tsx @@ -19,6 +19,8 @@ import { ANALYTICS_ADD_CUSTOM_LABWARE, } from '/app/redux/analytics' import { UploadInput } from '/app/molecules/UploadInput' +import { remote } from '/app/redux/shell/remote' + import type { Dispatch } from '/app/redux/types' export interface AddCustomLabwareSlideoutProps { @@ -46,7 +48,9 @@ export function AddCustomLabwareSlideout( > { - dispatch(addCustomLabwareFile(file.path)) + void remote.getFilePathFrom(file).then(filePath => { + dispatch(addCustomLabwareFile(filePath)) + }) }} onClick={() => { dispatch(addCustomLabware()) diff --git a/app/src/organisms/Desktop/ProtocolsLanding/ProtocolUploadInput.tsx b/app/src/organisms/Desktop/ProtocolsLanding/ProtocolUploadInput.tsx index 35491c61d2d..17313bd567f 100644 --- a/app/src/organisms/Desktop/ProtocolsLanding/ProtocolUploadInput.tsx +++ b/app/src/organisms/Desktop/ProtocolsLanding/ProtocolUploadInput.tsx @@ -18,6 +18,7 @@ import { } from '/app/redux/analytics' import { useLogger } from '/app/logger' import { useToaster } from '/app/organisms/ToasterOven' +import { remote } from '/app/redux/shell/remote' import type { Dispatch } from '/app/redux/types' @@ -38,21 +39,23 @@ export function ProtocolUploadInput( const trackEvent = useTrackEvent() const { makeToast } = useToaster() - const handleUpload = (file: File): void => { - if (file.path === null) { - logger.warn('Failed to upload file, path not found') - } - if (isValidProtocolFileName(file.name)) { - dispatch(addProtocol(file.path)) - } else { - makeToast(t('incompatible_file_type') as string, ERROR_TOAST, { - closeButton: true, + const handleUpload = (file: File): Promise => { + return remote.getFilePathFrom(file).then(filePath => { + if (filePath == null) { + logger.warn('Failed to upload file, path not found') + } + if (isValidProtocolFileName(file.name)) { + dispatch(addProtocol(filePath)) + } else { + makeToast(t('incompatible_file_type') as string, ERROR_TOAST, { + closeButton: true, + }) + } + props.onUpload?.() + trackEvent({ + name: ANALYTICS_IMPORT_PROTOCOL_TO_APP, + properties: { protocolFileName: file.name }, }) - } - props.onUpload?.() - trackEvent({ - name: ANALYTICS_IMPORT_PROTOCOL_TO_APP, - properties: { protocolFileName: file.name }, }) } @@ -64,7 +67,7 @@ export function ProtocolUploadInput( > { - handleUpload(file) + void handleUpload(file) }} uploadText={t('valid_file_types')} dragAndDropText={ diff --git a/app/src/organisms/Desktop/ProtocolsLanding/__tests__/UploadInput.test.tsx b/app/src/organisms/Desktop/ProtocolsLanding/__tests__/UploadInput.test.tsx index e3b8a8f4cdb..f03aaf861e7 100644 --- a/app/src/organisms/Desktop/ProtocolsLanding/__tests__/UploadInput.test.tsx +++ b/app/src/organisms/Desktop/ProtocolsLanding/__tests__/UploadInput.test.tsx @@ -8,10 +8,16 @@ import { ANALYTICS_IMPORT_PROTOCOL_TO_APP, } from '/app/redux/analytics' import { ProtocolUploadInput } from '../ProtocolUploadInput' +import { remote } from '/app/redux/shell/remote' import type { Mock } from 'vitest' vi.mock('/app/redux/analytics') +vi.mock('/app/redux/shell/remote', () => ({ + remote: { + getFilePathFrom: vi.fn(), + }, +})) describe('ProtocolUploadInput', () => { let onUpload: Mock @@ -31,6 +37,7 @@ describe('ProtocolUploadInput', () => { onUpload = vi.fn() trackEvent = vi.fn() vi.mocked(useTrackEvent).mockReturnValue(trackEvent) + vi.mocked(remote.getFilePathFrom).mockResolvedValue('mockFileName') }) afterEach(() => { vi.resetAllMocks() @@ -56,16 +63,24 @@ describe('ProtocolUploadInput', () => { fireEvent.click(button) expect(input.click).toHaveBeenCalled() }) - it('calls onUpload callback on choose file and trigger analytics event', () => { + it('calls onUpload callback on choose file and trigger analytics event', async () => { render() const input = screen.getByTestId('file_input') + + const mockFile = new File(['mockContent'], 'mockFileName', { + type: 'text/plain', + }) + fireEvent.change(input, { - target: { files: [{ path: 'dummyFile', name: 'dummyName' }] }, + target: { files: [mockFile] }, }) - expect(onUpload).toHaveBeenCalled() - expect(trackEvent).toHaveBeenCalledWith({ - name: ANALYTICS_IMPORT_PROTOCOL_TO_APP, - properties: { protocolFileName: 'dummyName' }, + + await vi.waitFor(() => { + expect(onUpload).toHaveBeenCalled() + expect(trackEvent).toHaveBeenCalledWith({ + name: ANALYTICS_IMPORT_PROTOCOL_TO_APP, + properties: { protocolFileName: 'mockFileName' }, + }) }) }) }) diff --git a/app/src/organisms/Desktop/UpdateAppModal/index.tsx b/app/src/organisms/Desktop/UpdateAppModal/index.tsx index 450824c27f5..99a54ba0dc7 100644 --- a/app/src/organisms/Desktop/UpdateAppModal/index.tsx +++ b/app/src/organisms/Desktop/UpdateAppModal/index.tsx @@ -93,7 +93,14 @@ export function UpdateAppModal(props: UpdateAppModalProps): JSX.Element { error, info: updateInfo, } = updateState - const releaseNotes = updateInfo?.releaseNotes + let releaseNotesText = updateInfo?.releaseNotes + if (Array.isArray(releaseNotesText)) { + // it is unclear to me why/how electron-updater would ever expose + // release notes this way, but this should never happen... + // this string representation should always be returned + releaseNotesText = releaseNotesText[0].note + } + const { t } = useTranslation(['app_settings', 'branded']) const navigate = useNavigate() const { removeActiveAppUpdateToast } = useRemoveActiveAppUpdateToast() @@ -192,7 +199,7 @@ export function UpdateAppModal(props: UpdateAppModalProps): JSX.Element { {t('branded:update_requires_restarting_app')} - + ) : null} diff --git a/app/src/redux/shell/index.ts b/app/src/redux/shell/index.ts index d4f88d9a8c9..06f4199f081 100644 --- a/app/src/redux/shell/index.ts +++ b/app/src/redux/shell/index.ts @@ -5,5 +5,6 @@ export * from './selectors' export * from './update' export * from './is-ready/actions' export * from './is-ready/selectors' +export * from './types' export const CURRENT_VERSION: string = _PKG_VERSION_ diff --git a/app/src/redux/shell/types.ts b/app/src/redux/shell/types.ts index a3f887b4108..ca20ddab53e 100644 --- a/app/src/redux/shell/types.ts +++ b/app/src/redux/shell/types.ts @@ -1,4 +1,6 @@ import type { IpcMainEvent } from 'electron' +import type { UpdateFileInfo } from 'electron-updater' +import type { ReleaseNoteInfo } from 'builder-util-runtime' import type { Error } from '../types' import type { RobotSystemAction } from './is-ready/types' @@ -9,6 +11,8 @@ export interface Remote { on: (channel: string, listener: IpcListener) => void off: (channel: string, listener: IpcListener) => void } + /* The renderer process isn't allowed the file path for security reasons. */ + getFilePathFrom: (file: File) => Promise } export type IpcListener = ( @@ -31,16 +35,11 @@ export type NotifyBrokerResponses = NotifyRefetchData | NotifyUnsubscribeData export type NotifyNetworkError = 'ECONNFAILED' | 'ECONNREFUSED' export type NotifyResponseData = NotifyBrokerResponses | NotifyNetworkError -interface File { - sha512: string - url: string - [key: string]: unknown -} export interface UpdateInfo { version: string - files: File[] + files: UpdateFileInfo[] releaseDate?: string - releaseNotes?: string + releaseNotes?: string | null | ReleaseNoteInfo[] } export interface ShellUpdateState { diff --git a/app/src/redux/types.ts b/app/src/redux/types.ts index d3f502cdc40..c87c2969e6b 100644 --- a/app/src/redux/types.ts +++ b/app/src/redux/types.ts @@ -119,3 +119,5 @@ export type Epic = ( ) => Observable export type Error = Partial<{ name: string; message: string }> + +export * from './shell/types' diff --git a/package.json b/package.json index 42d21bfc8e9..f439433535a 100755 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ }, "packageManager": "yarn@1.22.19", "engines": { - "node": "^18.19.0" + "node": ">=22.11.0" }, "resolutions": { "@storybook/react-docgen-typescript-plugin": "1.0.6--canary.9.cd77847.0" @@ -39,7 +39,7 @@ "@aws-sdk/client-dynamodb": "^3.582.0", "@aws-sdk/credential-provider-ini": "^3.582.0", "@cypress/webpack-preprocessor": "^5.1.2", - "@electron/rebuild": "3.2.10", + "@electron/rebuild": "3.7.1", "@octokit/rest": "^19.0.5", "@rollup/plugin-alias": "^3.1.2", "@rollup/plugin-babel": "^5.3.0", @@ -84,8 +84,9 @@ "cz-conventional-changelog": "2.1.0", "decompress": "4.2.1", "download": "8.0.0", - "electron": "27.0.0", - "electron-builder": "24.0.0", + "electron": "33.2.1", + "electron-builder": "25.1.8", + "electron-updater": "6.3.9", "eslint": "^8.56.0", "eslint-config-prettier": "^8.1.0", "eslint-config-standard": "^16.0.2", diff --git a/yarn.lock b/yarn.lock index 22c961d6704..c52814a8c13 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-4.0.2.tgz#6abbdc22f33cab742053777a26db2e25ca527179" integrity sha512-XtGk+IF57pr852UK1AhQJXqmm1WmSgS5uISL+LPs0z/iAxXouMvdlLJrHPeukP6gd7yR2rDTMSMkHNODgwIq7A== -"7zip-bin@~5.1.1": - version "5.1.1" - resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.1.1.tgz#9274ec7460652f9c632c59addf24efb1684ef876" - integrity sha512-sAP4LldeWNz0lNzmTird3uWfFDWWTeg6V/MsmyyLR9X1idwKBWIgt/ZvinqQldJm3LecKEs1emkbquO6PCiLVQ== +"7zip-bin@~5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-5.2.0.tgz#7a03314684dd6572b7dfa89e68ce31d60286854d" + integrity sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A== "@aashutoshrathi/word-wrap@^1.2.3": version "1.2.6" @@ -2187,10 +2187,10 @@ resolved "https://registry.yarnpkg.com/@ebay/nice-modal-react/-/nice-modal-react-1.2.13.tgz#7e8229fe3a48a11f27cd7f5e21190d82d6f609ce" integrity sha512-jx8xIWe/Up4tpNuM02M+rbnLoxdngTGk3Y8LjJsLGXXcSoKd/+eZStZcAlIO/jwxyz/bhPZnpqPJZWAmhOofuA== -"@electron/asar@^3.2.1": - version "3.2.9" - resolved "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.9.tgz#7b3a1fd677b485629f334dd80ced8c85353ba7e7" - integrity sha512-Vu2P3X2gcZ3MY9W7yH72X9+AMXwUQZEJBrsPIbX0JsdllLtoh62/Q8Wg370/DawIEVKOyfD6KtTLo645ezqxUA== +"@electron/asar@^3.2.7": + version "3.2.17" + resolved "https://registry.yarnpkg.com/@electron/asar/-/asar-3.2.17.tgz#91d28087aad80d1a1c8cc4e667c6476edf50f949" + integrity sha512-OcWImUI686w8LkghQj9R2ynZ2ME693Ek6L1SiaAgqGKzBaTIZw3fHDqN82Rcl+EU1Gm9EgkJ5KLIY/q5DCRbbA== dependencies: commander "^5.0.0" glob "^7.1.6" @@ -2211,18 +2211,34 @@ optionalDependencies: global-agent "^3.0.0" -"@electron/notarize@^1.2.3": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@electron/notarize/-/notarize-1.2.4.tgz#a7d38773f4cad40df111a5edc64037e5d768ea1e" - integrity sha512-W5GQhJEosFNafewnS28d3bpQ37/s91CDWqxVchHfmv2dQSTWpOzNlUVQwYzC1ay5bChRV/A9BTL68yj0Pa+TSg== +"@electron/node-gyp@https://github.com/electron/node-gyp#06b29aafb7708acef8b3669835c8a7857ebc92d2": + version "10.2.0-electron.1" + resolved "https://github.com/electron/node-gyp#06b29aafb7708acef8b3669835c8a7857ebc92d2" + dependencies: + env-paths "^2.2.0" + exponential-backoff "^3.1.1" + glob "^8.1.0" + graceful-fs "^4.2.6" + make-fetch-happen "^10.2.1" + nopt "^6.0.0" + proc-log "^2.0.1" + semver "^7.3.5" + tar "^6.2.1" + which "^2.0.2" + +"@electron/notarize@2.5.0": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@electron/notarize/-/notarize-2.5.0.tgz#d4d25356adfa29df4a76bd64a8bd347237cd251e" + integrity sha512-jNT8nwH1f9X5GEITXaQ8IF/KdskvIkOFfB2CvwumsveVidzpSc+mvhhTMdAGSYF3O+Nq49lJ7y+ssODRXu06+A== dependencies: debug "^4.1.1" fs-extra "^9.0.1" + promise-retry "^2.0.1" -"@electron/osx-sign@^1.0.4": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@electron/osx-sign/-/osx-sign-1.2.0.tgz#d1c83cac03e52f210858594eb011142a1ad0ae70" - integrity sha512-kOA3bAeDXFMj2JHj0R2fk/IT92qpu3tZHwM4l/PdksAuy7eA3/23QktCiAoQICwPdtxCYdt9ZLimKvnNyUpdSQ== +"@electron/osx-sign@1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@electron/osx-sign/-/osx-sign-1.3.1.tgz#faf7eeca7ca004a6be541dc4cf7a1bd59ec59b1c" + integrity sha512-BAfviURMHpmb1Yb50YbCxnOY0wfwaLXH5KJ4+80zS0gUkzDX3ec23naTlEqKsN+PwYn+a1cCzM7BJ4Wcd3sGzw== dependencies: compare-version "^0.1.2" debug "^4.3.4" @@ -2231,10 +2247,10 @@ minimist "^1.2.6" plist "^3.0.5" -"@electron/rebuild@3.2.10": - version "3.2.10" - resolved "https://registry.yarnpkg.com/@electron/rebuild/-/rebuild-3.2.10.tgz#adc9443179709d4e4b93a68fac6a08b9a3b9e5e6" - integrity sha512-SUBM6Mwi3yZaDFQjZzfGKpYTtOp9m60glounwX6tfGeVc/ZOl4jbquktUcyy7gYSLDWFLtKkftkY2xgMJZLQgg== +"@electron/rebuild@3.6.1": + version "3.6.1" + resolved "https://registry.yarnpkg.com/@electron/rebuild/-/rebuild-3.6.1.tgz#59e8e36c3f6e6b94a699425dfb61f0394c3dd4df" + integrity sha512-f6596ZHpEq/YskUd8emYvOUne89ij8mQgjYFA5ru25QwbrRO+t1SImofdDv7kKOuWCmVOuU5tvfkbgGxIl3E/w== dependencies: "@malept/cross-spawn-promise" "^2.0.0" chalk "^4.0.0" @@ -2242,20 +2258,21 @@ detect-libc "^2.0.1" fs-extra "^10.0.0" got "^11.7.0" - lzma-native "^8.0.5" - node-abi "^3.0.0" - node-api-version "^0.1.4" + node-abi "^3.45.0" + node-api-version "^0.2.0" node-gyp "^9.0.0" ora "^5.1.0" + read-binary-file-arch "^1.0.6" semver "^7.3.5" tar "^6.0.5" yargs "^17.0.1" -"@electron/rebuild@^3.2.10": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@electron/rebuild/-/rebuild-3.6.0.tgz#60211375a5f8541a71eb07dd2f97354ad0b2b96f" - integrity sha512-zF4x3QupRU3uNGaP5X1wjpmcjfw1H87kyqZ00Tc3HvriV+4gmOGuvQjGNkrJuXdsApssdNyVwLsy+TaeTGGcVw== +"@electron/rebuild@3.7.1": + version "3.7.1" + resolved "https://registry.yarnpkg.com/@electron/rebuild/-/rebuild-3.7.1.tgz#27ed124f7f1dbed92b222aabe68c0e4a3e6c5cea" + integrity sha512-sKGD+xav4Gh25+LcLY0rjIwcCFTw+f/HU1pB48UVbwxXXRGaXEqIH0AaYKN46dgd/7+6kuiDXzoyAEvx1zCsdw== dependencies: + "@electron/node-gyp" "https://github.com/electron/node-gyp#06b29aafb7708acef8b3669835c8a7857ebc92d2" "@malept/cross-spawn-promise" "^2.0.0" chalk "^4.0.0" debug "^4.1.1" @@ -2264,25 +2281,24 @@ got "^11.7.0" node-abi "^3.45.0" node-api-version "^0.2.0" - node-gyp "^9.0.0" ora "^5.1.0" read-binary-file-arch "^1.0.6" semver "^7.3.5" tar "^6.0.5" yargs "^17.0.1" -"@electron/universal@1.3.4": - version "1.3.4" - resolved "https://registry.yarnpkg.com/@electron/universal/-/universal-1.3.4.tgz#bccd94b635d7c85eeed5eabba457eb4ed2be2777" - integrity sha512-BdhBgm2ZBnYyYRLRgOjM5VHkyFItsbggJ0MHycOjKWdFGYwK97ZFXH54dTvUWEfha81vfvwr5On6XBjt99uDcg== +"@electron/universal@2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@electron/universal/-/universal-2.0.1.tgz#7b070ab355e02957388f3dbd68e2c3cd08c448ae" + integrity sha512-fKpv9kg4SPmt+hY7SVBnIYULE9QJl8L3sCfcBsnqbJwwBwAeTLokJ9TRt9y7bK0JAzIW2y78TVVjvnQEms/yyA== dependencies: - "@electron/asar" "^3.2.1" - "@malept/cross-spawn-promise" "^1.1.0" + "@electron/asar" "^3.2.7" + "@malept/cross-spawn-promise" "^2.0.0" debug "^4.3.1" - dir-compare "^3.0.0" - fs-extra "^9.0.1" - minimatch "^3.0.4" - plist "^3.0.4" + dir-compare "^4.2.0" + fs-extra "^11.1.1" + minimatch "^9.0.3" + plist "^3.1.0" "@emotion/babel-plugin@^11.11.0": version "11.11.0" @@ -3146,13 +3162,6 @@ resolved "https://registry.yarnpkg.com/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz#8ace5259254426ccef57f3175bc64ed7095ed919" integrity sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw== -"@malept/cross-spawn-promise@^1.1.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz#504af200af6b98e198bce768bc1730c6936ae01d" - integrity sha512-RTBGWL5FWQcg9orDOCcp4LvItNzUPcyEU9bwaeJX0rJ1IQxzucC48Y0/sQLp/g6t99IQgAlGIaesJS+gTn7tVQ== - dependencies: - cross-spawn "^7.0.1" - "@malept/cross-spawn-promise@^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz#d0772de1aa680a0bfb9ba2f32b4c828c7857cb9d" @@ -5621,13 +5630,20 @@ dependencies: undici-types "~5.26.4" -"@types/node@^18.0.0", "@types/node@^18.11.18": +"@types/node@^18.0.0": version "18.19.31" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.31.tgz#b7d4a00f7cb826b60a543cebdbda5d189aaecdcd" integrity sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA== dependencies: undici-types "~5.26.4" +"@types/node@^20.9.0": + version "20.17.9" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.17.9.tgz#5f141d4b7ee125cdee5faefe28de095398865bab" + integrity sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw== + dependencies: + undici-types "~6.19.2" + "@types/normalize-package-data@^2.4.0": version "2.4.4" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" @@ -5782,11 +5798,6 @@ resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.23.0.tgz#0a6655b3e2708eaabca00b7372fafd7a792a7b09" integrity sha512-YIoDCTH3Af6XM5VuwGG/QL/CJqga1Zm3NkU3HZ4ZHK2fRMPYP1VczsTUqtsf43PH/iJNVlPHAo2oWX7BSdB2Hw== -"@types/semver@^6.0.1": - version "6.2.7" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-6.2.7.tgz#473fb8d63ea04f7511c699fb9b96830c51e8a53d" - integrity sha512-blctEWbzUFzQx799RZjzzIdBJOXmE37YYEyDtKkx5Dg+V7o/zyyAxLPiI98A2jdTtDgxZleMdfV+7p8WbRJ1OQ== - "@types/semver@^7.3.12", "@types/semver@^7.3.4", "@types/semver@^7.3.6", "@types/semver@^7.5.0": version "7.5.8" resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.8.tgz#8268a8c57a3e4abd25c165ecd36237db7948a55e" @@ -5904,7 +5915,7 @@ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== -"@types/yargs@17.0.32", "@types/yargs@^17.0.16", "@types/yargs@^17.0.8": +"@types/yargs@17.0.32", "@types/yargs@^17.0.8": version "17.0.32" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.32.tgz#030774723a2f7faafebf645f4e5a48371dca6229" integrity sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog== @@ -6467,6 +6478,13 @@ agent-base@^4.3.0: dependencies: es6-promisify "^5.0.0" +agent-base@^7.0.2, agent-base@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" + integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== + dependencies: + debug "^4.3.4" + agentkeepalive@^4.2.1: version "4.5.0" resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" @@ -6609,40 +6627,44 @@ app-builder-bin@2.0.0: resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-2.0.0.tgz#bda985bee14370b254841a9982753b8f383415c5" integrity sha512-JUJ1Wiaig1589MxF110HHh5I5v9hn2Qu4ZeleNwSZHfD1S2LrCxm4H+q7Snr/rWlWdEChFoWM2lj11Cdl4LP0Q== -app-builder-bin@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-4.0.0.tgz#1df8e654bd1395e4a319d82545c98667d7eed2f0" - integrity sha512-xwdG0FJPQMe0M0UA4Tz0zEB8rBJTRA5a476ZawAqiBkMv16GRK5xpXThOjMaEOFnZ6zabejjG4J3da0SXG63KA== +app-builder-bin@5.0.0-alpha.10: + version "5.0.0-alpha.10" + resolved "https://registry.yarnpkg.com/app-builder-bin/-/app-builder-bin-5.0.0-alpha.10.tgz#cf12e593b6b847fb9d04027fa755c6c6610d778b" + integrity sha512-Ev4jj3D7Bo+O0GPD2NMvJl+PGiBAfS7pUGawntBNpCbxtpncfUixqFj9z9Jme7V7s3LBGqsWZZP54fxBX3JKJw== -app-builder-lib@24.0.0: - version "24.0.0" - resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-24.0.0.tgz#1f04a05abe225290caf2216110f9e266cf7372c4" - integrity sha512-S9wBoyXz2aQ7N3nV/SQS8Cg72NyhsIYGu0xm0w8iW+CWHkIOqQrwVd/cyV1iSYt6QntLGvS54j4SpW9OIkUqPw== +app-builder-lib@25.1.8: + version "25.1.8" + resolved "https://registry.yarnpkg.com/app-builder-lib/-/app-builder-lib-25.1.8.tgz#ae376039c5f269c7d562af494a087e5bc6310f1b" + integrity sha512-pCqe7dfsQFBABC1jeKZXQWhGcCPF3rPCXDdfqVKjIeWBcXzyC1iOWZdfFhGl+S9MyE/k//DFmC6FzuGAUudNDg== dependencies: - "7zip-bin" "~5.1.1" "@develar/schema-utils" "~2.6.5" - "@electron/notarize" "^1.2.3" - "@electron/osx-sign" "^1.0.4" - "@electron/rebuild" "^3.2.10" - "@electron/universal" "1.3.4" + "@electron/notarize" "2.5.0" + "@electron/osx-sign" "1.3.1" + "@electron/rebuild" "3.6.1" + "@electron/universal" "2.0.1" "@malept/flatpak-bundler" "^0.4.0" + "@types/fs-extra" "9.0.13" async-exit-hook "^2.0.1" bluebird-lst "^1.0.9" - builder-util "24.0.0" - builder-util-runtime "9.2.0" + builder-util "25.1.7" + builder-util-runtime "9.2.10" chromium-pickle-js "^0.2.0" + config-file-ts "0.2.8-rc1" debug "^4.3.4" + dotenv "^16.4.5" + dotenv-expand "^11.0.6" ejs "^3.1.8" - electron-publish "24.0.0" + electron-publish "25.1.7" form-data "^4.0.0" fs-extra "^10.1.0" hosted-git-info "^4.1.0" is-ci "^3.0.0" isbinaryfile "^5.0.0" js-yaml "^4.1.0" + json5 "^2.2.3" lazy-val "^1.0.5" - minimatch "^5.1.1" - read-config-file "6.3.2" + minimatch "^10.0.0" + resedit "^1.7.0" sanitize-filename "^1.6.3" semver "^7.3.8" tar "^6.1.12" @@ -7598,11 +7620,6 @@ buffer-crc32@~0.2.3: resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== -buffer-equal@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-1.0.1.tgz#2f7651be5b1b3f057fcd6e7ee16cf34767077d90" - integrity sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg== - buffer-fill@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" @@ -7648,18 +7665,10 @@ buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -builder-util-runtime@8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-8.3.0.tgz#f5fac9139af6facf42a21fbe4d3aebed88fda33e" - integrity sha512-CSOdsYqf4RXIHh1HANPbrZHlZ9JQJXSuDDloblZPcWQVN62inyYoTQuSmY3KrgefME2Sv3Kn2MxHvbGQHRf8Iw== - dependencies: - debug "^4.1.1" - sax "^1.2.4" - -builder-util-runtime@9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.2.0.tgz#64e7764f0a3b8bcba520efbd5f64e7926815b148" - integrity sha512-6S0FLP5n57MgSVEypgjq5veUMd8C8NKt/IgRRXyYXYnhRG9AxxAB4/uULQhDG4JbAoeb5ahOTPC1jAxT0l2ylQ== +builder-util-runtime@9.2.10: + version "9.2.10" + resolved "https://registry.yarnpkg.com/builder-util-runtime/-/builder-util-runtime-9.2.10.tgz#a0f7d9e214158402e78b74a745c8d9f870c604bc" + integrity sha512-6p/gfG1RJSQeIbz8TK5aPNkoztgY1q5TgmGFMAXcY8itsGW6Y2ld1ALsZ5UJn8rog7hKF3zHx5iQbNQ8uLcRlw== dependencies: debug "^4.3.4" sax "^1.2.4" @@ -7674,23 +7683,22 @@ builder-util-runtime@^4.4.0, builder-util-runtime@^4.4.1: fs-extra-p "^4.6.1" sax "^1.2.4" -builder-util@24.0.0: - version "24.0.0" - resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-24.0.0.tgz#db1f43bce6fbe34b706e50bbc8ab6903b843b068" - integrity sha512-7UzkO1Uanui9Eyo6X4lM2UjEz6qA7sbZ7bPNsxhIi51nZ95o4EsQxIqIZgQlwM3cPSZba5pnu8oBThsAQVAhEg== +builder-util@25.1.7: + version "25.1.7" + resolved "https://registry.yarnpkg.com/builder-util/-/builder-util-25.1.7.tgz#a07b404f0cb1a635aa165902be65297d58932ff8" + integrity sha512-7jPjzBwEGRbwNcep0gGNpLXG9P94VA3CPAZQCzxkFXiV2GMQKlziMbY//rXPI7WKfhsvGgFXjTcXdBEwgXw9ww== dependencies: - "7zip-bin" "~5.1.1" + "7zip-bin" "~5.2.0" "@types/debug" "^4.1.6" - "@types/fs-extra" "^9.0.11" - app-builder-bin "4.0.0" + app-builder-bin "5.0.0-alpha.10" bluebird-lst "^1.0.9" - builder-util-runtime "9.2.0" + builder-util-runtime "9.2.10" chalk "^4.1.2" cross-spawn "^7.0.3" debug "^4.3.4" fs-extra "^10.1.0" - http-proxy-agent "^5.0.0" - https-proxy-agent "^5.0.1" + http-proxy-agent "^7.0.0" + https-proxy-agent "^7.0.0" is-ci "^3.0.0" js-yaml "^4.1.0" source-map-support "^0.5.19" @@ -8571,13 +8579,13 @@ confbox@^0.1.7: resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.7.tgz#ccfc0a2bcae36a84838e83a3b7f770fb17d6c579" integrity sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA== -config-file-ts@^0.2.4: - version "0.2.6" - resolved "https://registry.yarnpkg.com/config-file-ts/-/config-file-ts-0.2.6.tgz#b424ff74612fb37f626d6528f08f92ddf5d22027" - integrity sha512-6boGVaglwblBgJqGyxm4+xCmEGcWgnWHSWHY5jad58awQhB6gftq0G8HbzU39YqCIYHMLAiL1yjwiZ36m/CL8w== +config-file-ts@0.2.8-rc1: + version "0.2.8-rc1" + resolved "https://registry.yarnpkg.com/config-file-ts/-/config-file-ts-0.2.8-rc1.tgz#fb7fc6ccb2e313f69dbeb78f1db0b00038049de0" + integrity sha512-GtNECbVI82bT4RiDIzBSVuTKoSHufnU7Ce7/42bkWZJZFLjmDF2WBpVsvRkhKCfKBnTBb3qZrBwPpFBU/Myvhg== dependencies: - glob "^10.3.10" - typescript "^5.3.3" + glob "^10.3.12" + typescript "^5.4.3" connect-history-api-fallback@^1.6.0: version "1.6.0" @@ -9914,13 +9922,13 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-compare@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/dir-compare/-/dir-compare-3.3.0.tgz#2c749f973b5c4b5d087f11edaae730db31788416" - integrity sha512-J7/et3WlGUCxjdnD3HAAzQ6nsnc0WL6DD7WcwJb7c39iH1+AWfg+9OqzJNaI6PkBwBvm1mhZNL9iY/nRiZXlPg== +dir-compare@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dir-compare/-/dir-compare-4.2.0.tgz#d1d4999c14fbf55281071fdae4293b3b9ce86f19" + integrity sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ== dependencies: - buffer-equal "^1.0.0" - minimatch "^3.0.4" + minimatch "^3.0.5" + p-limit "^3.1.0 " dir-glob@^2.2.2: version "2.2.2" @@ -9936,14 +9944,14 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dmg-builder@24.0.0: - version "24.0.0" - resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-24.0.0.tgz#44832b7dd4bca46370c72c5571587c0c8f3e9b8b" - integrity sha512-/SWd0gYfn/ddx7mmBeAymOsslyyTNIO0ZFPKMlKcaBELziMqgrc3SX5qEwfPOh2942VgEQZyWzR9FhE+Y9bo6Q== +dmg-builder@25.1.8: + version "25.1.8" + resolved "https://registry.yarnpkg.com/dmg-builder/-/dmg-builder-25.1.8.tgz#41f3b725edd896156e891016a44129e1bd580430" + integrity sha512-NoXo6Liy2heSklTI5OIZbCgXC1RzrDQsZkeEwXhdOro3FT1VBOvbubvscdPnjVuQ4AMwwv61oaH96AbiYg9EnQ== dependencies: - app-builder-lib "24.0.0" - builder-util "24.0.0" - builder-util-runtime "9.2.0" + app-builder-lib "25.1.8" + builder-util "25.1.7" + builder-util-runtime "9.2.10" fs-extra "^10.1.0" iconv-lite "^0.6.2" js-yaml "^4.1.0" @@ -10138,21 +10146,18 @@ dotenv-expand@^10.0.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-10.0.0.tgz#12605d00fb0af6d0a592e6558585784032e4ef37" integrity sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A== -dotenv-expand@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" - integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== +dotenv-expand@^11.0.6: + version "11.0.7" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-11.0.7.tgz#af695aea007d6fdc84c86cd8d0ad7beb40a0bd08" + integrity sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA== + dependencies: + dotenv "^16.4.5" -dotenv@^16.0.0: +dotenv@^16.0.0, dotenv@^16.4.5: version "16.4.5" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.5.tgz#cdd3b3b604cb327e286b4762e13502f717cb099f" integrity sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg== -dotenv@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz#dacc20160935a37dea6364aa1bef819fb9b6ab05" - integrity sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg== - download@8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/download/-/download-8.0.0.tgz#afc0b309730811731aae9f5371c9f46be73e51b1" @@ -10230,22 +10235,20 @@ ejs@^3.1.8: dependencies: jake "^10.8.5" -electron-builder@24.0.0: - version "24.0.0" - resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-24.0.0.tgz#9d04c1de80c2576899a16e8450b571092171b9ea" - integrity sha512-31GXEEi02c0/lJwfs6cX0tQlyFEQOi9ZCCQ5GFyazdhnTlGGxYvVTTQogAG9LPxUGOzRNZiUvhai5KXmMp3a0g== +electron-builder@25.1.8: + version "25.1.8" + resolved "https://registry.yarnpkg.com/electron-builder/-/electron-builder-25.1.8.tgz#b0e310f1600787610bb84c3f39bc7aadb2548486" + integrity sha512-poRgAtUHHOnlzZnc9PK4nzG53xh74wj2Jy7jkTrqZ0MWPoHGh1M2+C//hGeYdA+4K8w4yiVCNYoLXF7ySj2Wig== dependencies: - "@types/yargs" "^17.0.16" - app-builder-lib "24.0.0" - builder-util "24.0.0" - builder-util-runtime "9.2.0" + app-builder-lib "25.1.8" + builder-util "25.1.7" + builder-util-runtime "9.2.10" chalk "^4.1.2" - dmg-builder "24.0.0" + dmg-builder "25.1.8" fs-extra "^10.1.0" is-ci "^3.0.0" lazy-val "^1.0.5" - read-config-file "6.3.2" - simple-update-notifier "^1.1.0" + simple-update-notifier "2.0.0" yargs "^17.6.2" electron-context-menu@3.6.1: @@ -10317,14 +10320,14 @@ electron-notarize@^1.2.1: debug "^4.1.1" fs-extra "^9.0.1" -electron-publish@24.0.0: - version "24.0.0" - resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-24.0.0.tgz#c3ea5a00ec0d62e9c0348b707fdfa347045bb359" - integrity sha512-XY99MVdMXfseO3oBPQ5jdT68DFcUd4eudonbVvqrCBj9qur0w/L80M/fBMmXulokTiwI4L8tIJzcswKE6W0ibA== +electron-publish@25.1.7: + version "25.1.7" + resolved "https://registry.yarnpkg.com/electron-publish/-/electron-publish-25.1.7.tgz#14e50c2a3fafdc1c454eadbbc47ead89a48bb554" + integrity sha512-+jbTkR9m39eDBMP4gfbqglDd6UvBC7RLh5Y0MhFSsc6UkGHj9Vj9TWobxevHYMMqmoujL11ZLjfPpMX+Pt6YEg== dependencies: "@types/fs-extra" "^9.0.11" - builder-util "24.0.0" - builder-util-runtime "9.2.0" + builder-util "25.1.7" + builder-util-runtime "9.2.10" chalk "^4.1.2" fs-extra "^10.1.0" lazy-val "^1.0.5" @@ -10368,27 +10371,27 @@ electron-to-chromium@^1.4.668: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.746.tgz#787213e75f6c7bccb55dfe8b68170555c548d093" integrity sha512-jeWaIta2rIG2FzHaYIhSuVWqC6KJYo7oSBX4Jv7g+aVujKztfvdpf+n6MGwZdC5hQXbax4nntykLH2juIQrfPg== -electron-updater@4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-4.1.2.tgz#46a6e62cc8d0c7d935db7aff83207da2a21ff788" - integrity sha512-4Sk8IW0LfOilDz+WAB/gEDmX7+FUFRbKHGN1zGjehPilnd6H9cmjgBHK6Xzq/FLq/uOHGJ6GX/9tsF+jr7CvnA== +electron-updater@6.3.9: + version "6.3.9" + resolved "https://registry.yarnpkg.com/electron-updater/-/electron-updater-6.3.9.tgz#e1e7f155624c58e6f3760f376c3a584028165ec4" + integrity sha512-2PJNONi+iBidkoC5D1nzT9XqsE8Q1X28Fn6xRQhO3YX8qRRyJ3mkV4F1aQsuRnYPqq6Hw+E51y27W75WgDoofw== dependencies: - "@types/semver" "^6.0.1" - builder-util-runtime "8.3.0" - fs-extra "^8.1.0" - js-yaml "^3.13.1" - lazy-val "^1.0.4" + builder-util-runtime "9.2.10" + fs-extra "^10.1.0" + js-yaml "^4.1.0" + lazy-val "^1.0.5" + lodash.escaperegexp "^4.1.2" lodash.isequal "^4.5.0" - pako "^1.0.10" - semver "^6.2.0" + semver "^7.6.3" + tiny-typed-emitter "^2.1.0" -electron@27.0.0: - version "27.0.0" - resolved "https://registry.yarnpkg.com/electron/-/electron-27.0.0.tgz#bb6c45881e531b2ec1c7cc46c47aba773f38ee14" - integrity sha512-mr3Zoy82l8XKK/TgguE5FeNeHZ9KHXIGIpUMjbjZWIREfAv+X2Q3vdX6RG0Pmi1K23AFAxANXQezIHBA2Eypwg== +electron@33.2.1: + version "33.2.1" + resolved "https://registry.yarnpkg.com/electron/-/electron-33.2.1.tgz#d0d7bba7a7abf4f14881d0a6e03c498b301a2d5f" + integrity sha512-SG/nmSsK9Qg1p6wAW+ZfqU+AV8cmXMTIklUL18NnOKfZLlum4ZsDoVdmmmlL39ZmeCaq27dr7CgslRPahfoVJg== dependencies: "@electron/get" "^2.0.0" - "@types/node" "^18.11.18" + "@types/node" "^20.9.0" extract-zip "^2.0.1" elliptic@^6.5.3, elliptic@^6.5.5: @@ -12045,7 +12048,7 @@ fs-extra@^10.0.0, fs-extra@^10.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^11.1.0: +fs-extra@^11.1.0, fs-extra@^11.1.1: version "11.2.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.2.0.tgz#e70e17dfad64232287d01929399e0ea7c86b0e5b" integrity sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw== @@ -12401,7 +12404,7 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^10.0.0, glob@^10.3.10: +glob@^10.0.0: version "10.3.12" resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" integrity sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg== @@ -12412,6 +12415,18 @@ glob@^10.0.0, glob@^10.3.10: minipass "^7.0.4" path-scurry "^1.10.2" +glob@^10.3.12: + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + glob@^7.0.0, glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.2.0: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -12424,7 +12439,7 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, gl once "^1.3.0" path-is-absolute "^1.0.0" -glob@^8.0.1: +glob@^8.0.1, glob@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== @@ -13169,6 +13184,14 @@ http-proxy-agent@^5.0.0: agent-base "6" debug "4" +http-proxy-agent@^7.0.0: + version "7.0.2" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" + integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== + dependencies: + agent-base "^7.1.0" + debug "^4.3.4" + http-proxy-middleware@0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz#183c7dc4aa1479150306498c210cdaf96080a43a" @@ -13235,7 +13258,7 @@ https-proxy-agent@^4.0.0: agent-base "5" debug "4" -https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: +https-proxy-agent@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== @@ -13243,6 +13266,14 @@ https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: agent-base "6" debug "4" +https-proxy-agent@^7.0.0: + version "7.0.5" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz#9e8b5013873299e11fab6fd548405da2d6c602b2" + integrity sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw== + dependencies: + agent-base "^7.0.2" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -14263,6 +14294,15 @@ jackspeak@^2.3.6: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jake@^10.8.5: version "10.8.7" resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.7.tgz#63a32821177940c33f356e0ba44ff9d34e1c7d8f" @@ -14512,7 +14552,7 @@ json5@^1.0.1, json5@^1.0.2: dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.2.0, json5@^2.2.3: +json5@^2.1.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -14683,7 +14723,7 @@ lazy-universal-dotenv@^4.0.0: dotenv "^16.0.0" dotenv-expand "^10.0.0" -lazy-val@^1.0.3, lazy-val@^1.0.4, lazy-val@^1.0.5: +lazy-val@^1.0.3, lazy-val@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/lazy-val/-/lazy-val-1.0.5.tgz#6cf3b9f5bc31cee7ee3e369c0832b7583dcd923d" integrity sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q== @@ -14834,6 +14874,11 @@ lodash.debounce@^4.0.8: resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== +lodash.escaperegexp@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347" + integrity sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw== + lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" @@ -15027,15 +15072,6 @@ lz-string@^1.5.0: resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== -lzma-native@^8.0.5: - version "8.0.6" - resolved "https://registry.yarnpkg.com/lzma-native/-/lzma-native-8.0.6.tgz#3ea456209d643bafd9b5d911781bdf0b396b2665" - integrity sha512-09xfg67mkL2Lz20PrrDeNYZxzeW7ADtpYFbwSQh9U8+76RIzx5QsJBMy8qikv3hbUPfpy6hqwxt6FcGK81g9AA== - dependencies: - node-addon-api "^3.1.0" - node-gyp-build "^4.2.1" - readable-stream "^3.6.0" - madge@^3.6.0: version "3.12.0" resolved "https://registry.yarnpkg.com/madge/-/madge-3.12.0.tgz#727c1ebb268150d52e6d0c3ccd382b4c7bd0bf19" @@ -15123,7 +15159,7 @@ make-dir@^4.0.0: dependencies: semver "^7.5.3" -make-fetch-happen@^10.0.3: +make-fetch-happen@^10.0.3, make-fetch-happen@^10.2.1: version "10.2.1" resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz#f5e3835c5e9817b617f2770870d9492d28678164" integrity sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w== @@ -15814,6 +15850,13 @@ minimatch@9.0.3: dependencies: brace-expansion "^2.0.1" +minimatch@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.1.tgz#ce0521856b453c86e25f2c4c0d03e6ff7ddc440b" + integrity sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ== + dependencies: + brace-expansion "^2.0.1" + minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -15821,7 +15864,7 @@ minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatc dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1, minimatch@^5.1.1: +minimatch@^5.0.1: version "5.1.6" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== @@ -15835,6 +15878,13 @@ minimatch@^9.0, minimatch@^9.0.1: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.3, minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist-options@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -15918,6 +15968,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== +minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -16205,7 +16260,7 @@ no-case@^2.2.0: dependencies: lower-case "^1.1.1" -node-abi@^3.0.0, node-abi@^3.45.0: +node-abi@^3.45.0: version "3.60.0" resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.60.0.tgz#a325b13b3c401c2230202897559fbf0b5f9a90ac" integrity sha512-zcGgwoXbzw9NczqbGzAWL/ToDYAxv1V8gL1D67ClbdkIfeeDBbY0GelZtC25ayLvVjr2q2cloHeQV1R0QAWqRQ== @@ -16217,11 +16272,6 @@ node-addon-api@^1.6.3: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg== -node-addon-api@^3.1.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" - integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== - node-addon-api@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" @@ -16232,13 +16282,6 @@ node-addon-api@^7.0.0: resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.0.tgz#71f609369379c08e251c558527a107107b5e0fdb" integrity sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g== -node-api-version@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/node-api-version/-/node-api-version-0.1.4.tgz#1ed46a485e462d55d66b5aa1fe2821720dedf080" - integrity sha512-KGXihXdUChwJAOHO53bv9/vXcLmdUsZ6jIptbvYvkpKfth+r7jw44JkVxQFA3kX5nQjzjmGu1uAu/xNNLNlI5g== - dependencies: - semver "^7.3.5" - node-api-version@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/node-api-version/-/node-api-version-0.2.0.tgz#5177441da2b1046a4d4547ab9e0972eed7b1ac1d" @@ -16285,7 +16328,7 @@ node-forge@^0.10.0: resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.10.0.tgz#32dea2afb3e9926f02ee5ce8794902691a676bf3" integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA== -node-gyp-build@^4.2.1, node-gyp-build@^4.3.0, node-gyp-build@^4.5.0: +node-gyp-build@^4.3.0, node-gyp-build@^4.5.0: version "4.8.0" resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.0.tgz#3fee9c1731df4581a3f9ead74664369ff00d26dd" integrity sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og== @@ -16814,7 +16857,7 @@ p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.3.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2: +p-limit@^3.0.2, "p-limit@^3.1.0 ": version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -16899,16 +16942,21 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -pako@^1.0.10, pako@~1.0.2, pako@~1.0.5: - version "1.0.11" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== pako@~0.2.0: version "0.2.9" resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" integrity sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA== +pako@~1.0.2, pako@~1.0.5: + version "1.0.11" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== + parallel-transform@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" @@ -17097,6 +17145,14 @@ path-scurry@^1.10.2: lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" @@ -17149,6 +17205,11 @@ pbkdf2@^3.0.3, pbkdf2@^3.1.2: safe-buffer "^5.0.1" sha.js "^2.4.8" +pe-library@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/pe-library/-/pe-library-0.4.1.tgz#e269be0340dcb13aa6949d743da7d658c3e2fbea" + integrity sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw== + peek-stream@^1.1.0: version "1.1.3" resolved "https://registry.yarnpkg.com/peek-stream/-/peek-stream-1.1.3.tgz#3b35d84b7ccbbd262fff31dc10da56856ead6d67" @@ -17252,7 +17313,7 @@ pkg-up@^3.0.1: dependencies: find-up "^3.0.0" -plist@^3.0.4, plist@^3.0.5: +plist@^3.0.4, plist@^3.0.5, plist@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/plist/-/plist-3.1.0.tgz#797a516a93e62f5bde55e0b9cc9c967f860893c9" integrity sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ== @@ -18112,6 +18173,11 @@ pretty-ms@^7.0.0: dependencies: parse-ms "^2.1.0" +proc-log@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/proc-log/-/proc-log-2.0.1.tgz#8f3f69a1f608de27878f91f5c688b225391cb685" + integrity sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw== + process-nextick-args@^2.0.1, process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -18778,18 +18844,6 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" -read-config-file@6.3.2: - version "6.3.2" - resolved "https://registry.yarnpkg.com/read-config-file/-/read-config-file-6.3.2.tgz#556891aa6ffabced916ed57457cb192e61880411" - integrity sha512-M80lpCjnE6Wt6zb98DoW8WHR09nzMSpu8XHtPkiTHrJ5Az9CybfeQhTJ8D7saeBHpGhLPIVyA8lcL6ZmdKwY6Q== - dependencies: - config-file-ts "^0.2.4" - dotenv "^9.0.2" - dotenv-expand "^5.1.0" - js-yaml "^4.1.0" - json5 "^2.2.0" - lazy-val "^1.0.4" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" @@ -19332,6 +19386,13 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== +resedit@^1.7.0: + version "1.7.2" + resolved "https://registry.yarnpkg.com/resedit/-/resedit-1.7.2.tgz#b1041170b99811710c13f949c7d225871de4cc78" + integrity sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA== + dependencies: + pe-library "^0.4.1" + reselect@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.0.0.tgz#f2529830e5d3d0e021408b246a206ef4ea4437f7" @@ -19775,10 +19836,10 @@ semver@^7.0.0, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semve dependencies: lru-cache "^6.0.0" -semver@~7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== +semver@^7.6.3: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== send@0.16.2: version "0.16.2" @@ -20054,12 +20115,12 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" -simple-update-notifier@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82" - integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== +simple-update-notifier@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz#d70b92bdab7d6d90dfd73931195a30b6e3d7cebb" + integrity sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w== dependencies: - semver "~7.0.0" + semver "^7.5.3" sisteransi@^1.0.5: version "1.0.5" @@ -21058,7 +21119,7 @@ tar-stream@^2.1.4: inherits "^2.0.3" readable-stream "^3.1.1" -tar@^6.0.5, tar@^6.1.11, tar@^6.1.12, tar@^6.1.2, tar@^6.2.0: +tar@^6.0.5, tar@^6.1.11, tar@^6.1.12, tar@^6.1.2, tar@^6.2.0, tar@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== @@ -21243,6 +21304,11 @@ tiny-invariant@^1.3.1, tiny-invariant@^1.3.3: resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== +tiny-typed-emitter@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz#b3b027fdd389ff81a152c8e847ee2f5be9fad7b5" + integrity sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA== + tiny-warning@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" @@ -21651,10 +21717,10 @@ typescript@^3.0.3, typescript@^3.8.3, typescript@^3.9.5, typescript@^3.9.7: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== -typescript@^5.3.3: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== +typescript@^5.4.3: + version "5.7.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.7.2.tgz#3169cf8c4c8a828cde53ba9ecb3d2b1d5dd67be6" + integrity sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg== ua-parser-js@^0.7.23, ua-parser-js@^0.7.30: version "0.7.37" @@ -21702,6 +21768,11 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +undici-types@~6.19.2: + version "6.19.8" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" + integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== + unherit@^1.0.4: version "1.1.3" resolved "https://registry.yarnpkg.com/unherit/-/unherit-1.1.3.tgz#6c9b503f2b41b262330c80e91c8614abdaa69c22"