Skip to content

feat: upgrade electron to 41 and nodejs to 24 COMPASS-9852#7950

Draft
nbbeeken wants to merge 7 commits intomainfrom
COMPASS-9852-upgrade
Draft

feat: upgrade electron to 41 and nodejs to 24 COMPASS-9852#7950
nbbeeken wants to merge 7 commits intomainfrom
COMPASS-9852-upgrade

Conversation

@nbbeeken
Copy link
Copy Markdown
Collaborator

@nbbeeken nbbeeken commented Apr 7, 2026

Description

Upgrading electron and Node.js. Testing CI for now. WIP

Checklist

  • New tests and/or benchmarks are included
  • Documentation is changed or added
  • If this change updates the UI, screenshots/videos are added and a design review is requested
  • If this change could impact the load on the MongoDB cluster, please describe the expected and worst case impact
  • I have signed the MongoDB Contributor License Agreement (https://www.mongodb.com/legal/contributor-agreement)

Motivation and Context

  • Bugfix
  • New feature
  • Dependency update
  • Misc

Open Questions

Dependents

Types of changes

  • Backport Needed
  • Patch (non-breaking change which fixes an issue)
  • Minor (non-breaking change which adds functionality)
  • Major (fix or feature that would cause existing functionality to change)

@github-actions github-actions bot added the feat label Apr 7, 2026
{
name: 'package-macos-x64',
display_name: 'Package MacOS Intel',
run_on: 'macos-13',
Copy link
Copy Markdown
Collaborator

@gribnoysup gribnoysup Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe at least the package would be good to keep on 13 (unless we're really sure that we don't want to support it)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh good catch, I was filtering for -gui in evergreen and didn't see the plain 13 hosts

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nbbeeken nbbeeken force-pushed the COMPASS-9852-upgrade branch 2 times, most recently from 8f1d92d to c86163b Compare April 7, 2026 13:30
@nbbeeken
Copy link
Copy Markdown
Collaborator Author

nbbeeken commented Apr 7, 2026

Depends on: mongodb-js/interruptor#3

Copilot AI review requested due to automatic review settings April 17, 2026 13:06
@nbbeeken nbbeeken force-pushed the COMPASS-9852-upgrade branch from c86163b to 693acfa Compare April 17, 2026 13:06
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Upgrades the desktop runtime/tooling stack by moving the repo forward to Electron 41 and Node.js 24, along with associated CI/build config adjustments to keep builds and packaged-app tests running on supported environments.

Changes:

  • Bump Electron to ^41.1.1 across the monorepo and update the dependency-update configuration to track Electron majors again.
  • Raise the repo Node.js engine requirement to >=24.14.0 and align asdf/Evergreen Node settings.
  • Update Evergreen packaged-app test build variants (macOS 11 → macOS 14) to reflect the new runtime/platform constraints.

Reviewed changes

Copilot reviewed 23 out of 24 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
scripts/update-dependencies-config.js Removes the Electron major pin so automated dependency updates can advance Electron majors.
packages/hadron-ipc/package.json Updates Electron dependency to 41.x.
packages/hadron-build/package.json Updates Electron dependency to 41.x.
packages/connection-storage/package.json Updates Electron dependency to 41.x.
packages/compass/package.json Updates Electron to 41.x and bumps a mongosh worker-thread dependency patch version.
packages/compass-utils/package.json Updates Electron dependency to 41.x.
packages/compass-shell/package.json Updates Electron to 41.x and bumps mongosh-related dependencies.
packages/compass-schema-validation/package.json Updates Electron dependency to 41.x.
packages/compass-query-bar/package.json Updates Electron dependency to 41.x.
packages/compass-indexes/package.json Updates Electron dependency to 41.x.
packages/compass-import-export/package.json Updates Electron dependency to 41.x.
packages/compass-find-in-page/package.json Updates Electron dependency to 41.x.
packages/compass-explain-plan/package.json Updates Electron dependency to 41.x.
packages/compass-electron-menu/package.json Updates Electron dependency to 41.x.
packages/compass-e2e-tests/package.json Updates Electron dependency to 41.x for e2e package.
packages/compass-crud/package.json Updates Electron dependency to 41.x.
packages/atlas-service/package.json Updates Electron dependency to 41.x.
package.json Raises Node engine requirement to >=24.14.0.
package-lock.json Lockfile refresh reflecting Electron 41, Node engine bump, and transitive updates.
configs/webpack-config-compass/package.json Updates Electron and browserslist used by the webpack config package.
.tool-versions Updates asdf Node.js version to 24.14.0.
.evergreen/functions.yml Updates Evergreen Node.js version variable and minor whitespace cleanup.
.evergreen/buildvariants-and-tasks.yml Moves packaged-app macOS variants from 11 to 14 and consolidates task naming.
.evergreen/buildvariants-and-tasks.in.yml Template updates corresponding to the generated Evergreen config changes.

Comment thread package.json
Comment on lines 79 to 82
"engines": {
"node": ">=22.21.1",
"node": ">=24.14.0",
"npm": ">=10.2.4"
},
Copy link

Copilot AI Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Node.js engine requirement was bumped to ">=24.14.0", but several GitHub Actions workflows still pin node-version: 22.21.1 (e.g. .github/workflows/authors-and-third-party-notices.yaml, bump-packages.yaml, publish-compass*.yaml, publish-packages.yaml, start-*.yml, test-installers.yml, update-dependencies.yaml). This mismatch will cause CI to run on an unsupported Node version and can lead to install/test failures once engine checks kick in. Please update those workflow node-version values (or centralize the version to avoid drift).

Copilot uses AI. Check for mistakes.
@nbbeeken nbbeeken force-pushed the COMPASS-9852-upgrade branch from 719c2c8 to d2a1d0c Compare April 17, 2026 18:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants