Skip to content

chore: upgrade dependencies (Angular 21.2, Electron 40, Playwright 1.58)#857

Merged
belnadris merged 6 commits intomainfrom
dep-upgrade
Feb 27, 2026
Merged

chore: upgrade dependencies (Angular 21.2, Electron 40, Playwright 1.58)#857
belnadris merged 6 commits intomainfrom
dep-upgrade

Conversation

@belnadris
Copy link
Owner

Summary

  • Angular ecosystem: 21.0.x → 21.2.0 (via ng update with schematics/migrations)
  • Electron: 39.2.5 → 40.6.1 (no code changes needed — clipboard API not used in renderer)
  • Playwright + @playwright/test: 1.57.0 → 1.58.2 (new Chromium 1208 browser downloaded)
  • vitest + @vitest/*: 4.0.15 → 4.0.18
  • @angular-eslint/*: 21.0.1 → 21.2.0
  • @typescript-eslint/*: 8.48.1 → 8.56.1
  • electron-builder: 26.0.12 → 26.8.1
  • jsdom: 27.2.0 → 28.1.0
  • @types/node: 22.19.1 → 24.10.15
  • eslint-plugin-jsdoc: 61.4.1 → 62.7.1
  • zone.js: 0.16.0 → 0.16.1
  • wait-on: 9.0.3 → 9.0.4
  • Node version (.node-version): 22 → 24

Skipped: ESLint stays on 9.39.1 (ESLint 10 blocked by angular-eslint — PR #2903 pending). webdriver-manager not upgraded (available update is a downgrade).

Test Plan

  • npm run lint — all files pass
  • npm run test — 8/8 tests pass (6 test files)
  • npm run build — production bundle generated successfully

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings February 27, 2026 08:45
Copy link
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

This PR upgrades the project’s core tooling/runtime dependencies (Angular, Electron, Playwright, Vitest ecosystem, linting/tooling) and aligns the repo’s expected Node version accordingly.

Changes:

  • Bump Angular packages and related tooling (@angular/, @angular-eslint/, TypeScript ESLint, zone.js).
  • Upgrade Electron/Electron Builder, Playwright, Vitest, jsdom, Node typings, and related dev tooling.
  • Update repo metadata/docs (README test runner mention), Node version pin, and gitignore.

Reviewed changes

Copilot reviewed 3 out of 5 changed files in this pull request and generated 3 comments.

File Description
package.json Upgrades runtime/dev dependencies; updates Electron keyword; includes existing engine constraints.
README.md Updates test runner mention in the intro section.
.node-version Pins local/dev Node version to 24.
.gitignore Ignores .worktrees.
Comments suppressed due to low confidence (1)

package.json:99

  • engines.typescript currently restricts TypeScript to >= 5.8.0 < 5.9.0, but this package pins typescript to 5.9.3 and Angular 21.2 peer-depends on typescript >=5.9 <6.1 (via @angular/compiler-cli). This mismatch can trigger install/CI failures when engine checks are enabled. Update the TypeScript engine range to include 5.9.x (and ideally align it with Angular’s peer range), or remove the TypeScript engine constraint if it’s not meant to be enforced.
  "engines": {
    "node": ">= 22.12.0 || >= 24.0.0",
    "typescript": ">= 5.8.0 < 5.9.0"
  },

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

belnadris and others added 4 commits February 27, 2026 10:06
- Angular ecosystem: 21.0.x → 21.2.0 (via ng update with schematics)
- Angular ESLint: 21.0.1 → 21.2.0
- Electron: 39.2.5 → 40.6.1
- electron-builder: 26.0.12 → 26.8.1
- vitest + @vitest/*: 4.0.15 → 4.0.18
- playwright + @playwright/test: 1.57.0 → 1.58.2
- jsdom: 27.2.0 → 28.1.0
- @typescript-eslint/*: 8.48.1 → 8.56.1
- @types/node: 22.19.1 → 24.10.15
- eslint-plugin-jsdoc: 61.4.1 → 62.7.1
- zone.js: 0.16.0 → 0.16.1
- wait-on: 9.0.3 → 9.0.4

ESLint stays on 9.39.1 (ESLint 10 blocked by angular-eslint).
webdriver-manager stays on 13.0.2 (available update is a downgrade).
Node version updated to 24 to match engines requirement.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Regenerate package-lock.json without --legacy-peer-deps for npm ci compatibility
- Update README: Angular 21.0.3 → 21.2.0, Electron 39 → 40, v39.2.5 → v40.6.1

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
belnadris and others added 2 commits February 27, 2026 10:15
Fixes unit test failures caused by mismatched Playwright browser binaries
after upgrading from 1.57.0 to 1.58.2.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…lows

Cache Electron binaries (keyed on package-lock.json hash) to avoid
re-downloading on each run. Wrap npm ci and electron:build with
nick-fields/retry@v3 (3 attempts) to handle transient network failures
that caused socket hang-up on macOS and EOF errors on Linux.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@belnadris belnadris merged commit 2bd585f into main Feb 27, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants