Skip to content

chore(deps): upgrade Playwright to 1.60.0 to fix hanging CI#2787

Merged
serhalp merged 2 commits into
mainfrom
serhalp/ci/fix-2783
May 24, 2026
Merged

chore(deps): upgrade Playwright to 1.60.0 to fix hanging CI#2787
serhalp merged 2 commits into
mainfrom
serhalp/ci/fix-2783

Conversation

@serhalp
Copy link
Copy Markdown
Member

@serhalp serhalp commented May 24, 2026

🔗 Linked issue

Closes #2783

🧭 Context

See microsoft/playwright#39692, microsoft/playwright#40724, and microsoft/playwright#40747.

📚 Description

Update Playwright and its Action to 1.60.0

... which then caused component tests to start failing with:

⎯⎯⎯⎯ Unhandled Rejection ⎯⎯⎯⎯⎯
TimeoutError: Transition was aborted because of timeout in DOM update
This error originated in "test/nuxt/composables/use-command-palette-commands.spec.ts" test file. It doesn't mean the error was thrown inside the file itself, but while it was running.
The latest test that might've caused the error is "builds scoped package links and detects compare routes with multiple packages". It might mean one of the following:
- The error was thrown, while Vitest was running this test.
- If the error occurred after the test had been completed, this was the last documented test before it was thrown.

Playwright 1.58.2 used Chromium 145.0.7632.6. Playwright 1.60.0 uses Chromium 148.0.7778.96. For some reason or another, the latent issue with not handling View Transition rejections started surfacing after this update. We should have been handling these anyway.


Co-Authored-By: @mootari

@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 24, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
npmx.dev Ready Ready Preview, Comment May 24, 2026 1:42pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
docs.npmx.dev Ignored Ignored Preview May 24, 2026 1:42pm
npmx-lunaria Ignored Ignored May 24, 2026 1:42pm

Request Review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 24, 2026

Review Change Stack

📝 Walkthrough

Walkthrough

Playwright development dependency upgraded from v1.58.2 to v1.60.0 across devDependencies and CI browser job container image. ViewTransition plugin updated with explicit rejection handlers for multiple promise phases and helper functions to distinguish expected abort-style rejections from unexpected transition failures.

Changes

Playwright 1.60.0 upgrade with ViewTransition error handling

Layer / File(s) Summary
Playwright dependency and CI container upgrade
package.json, .github/workflows/ci.yml
devDependencies @playwright/test bumped from 1.58.2 to 1.60.0; CI browser job container image updated to new Playwright v1.60.0 digest.
ViewTransition promise rejection handling
app/plugins/view-transitions.client.ts
ViewTransition lifecycle now explicitly handles promise rejections from ready, updateCallbackDone, and finished phases; new helper functions detect expected abort-style rejections and emit dev-only warnings for unexpected transition failures.

Suggested reviewers

  • ghostdevv
🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: upgrading Playwright to 1.60.0 to address CI hanging issues.
Linked Issues check ✅ Passed The pull request successfully addresses the core objective from issue #2783 by upgrading Playwright to 1.60.0 and updating the CI workflow container, which resolves the browser installation hang.
Out of Scope Changes check ✅ Passed All changes are directly related to the objective: updating Playwright in package.json, updating the CI workflow to use the newer container image, and fixing view transition promise rejection handling introduced by Chromium 148.x.
Description check ✅ Passed The pull request description clearly explains the context (Playwright upgrade to 1.60.0), references linked issues and upstream Playwright issues, describes the problem that surfaced (unhandled View Transition rejections), and provides context about Chromium version changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch serhalp/ci/fix-2783

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@socket-security
Copy link
Copy Markdown

socket-security Bot commented May 24, 2026

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedofetch@​1.5.17510010083100
Addedohash@​2.0.1110010010080100
Addeddefu@​6.1.41008510086100
Addedufo@​1.6.39910010086100
Addedsemver@​7.7.410010010093100
Added@​playwright/​test@​1.60.010010010099100

View full report

@socket-security
Copy link
Copy Markdown

socket-security Bot commented May 24, 2026

All alerts resolved. Learn more about Socket for GitHub.

This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored.

Ignoring alerts on:

  • node-fetch-native@1.6.7

View full report

@codecov
Copy link
Copy Markdown

codecov Bot commented May 24, 2026

Codecov Report

❌ Patch coverage is 50.00000% with 4 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
app/plugins/view-transitions.client.ts 50.00% 1 Missing and 3 partials ⚠️

📢 Thoughts on this report? Let us know!

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 24, 2026

📊 Dependency Size Changes

Warning

This PR adds 4.4 MB of new dependencies, which exceeds the threshold of 200 kB.

📦 Package 📏 Size
playwright-core@1.58.2 → playwright-core@1.60.0 3.2 MB
playwright@1.58.2 → playwright@1.60.0 1.2 MB
@playwright/test@1.58.2 → @playwright/test@1.60.0 3.1 kB
vue-component-type-helpers@3.2.9 → vue-component-type-helpers@3.3.1 0 B

Total size change: 4.4 MB

Playwright 1.58.2 used Chromium 145.0.7632.6. Playwright 1.60.0 uses Chromium 148.0.7778.96.

For some reason, this latent issue with not handling these promise rejections is now causing test
failures. We should have been handling these anyway.
@serhalp
Copy link
Copy Markdown
Member Author

serhalp commented May 24, 2026

@SocketSecurity ignore npm/node-fetch-native@1.6.7

seems to just be because that package commits its built code (alongside source) for some reason

@serhalp serhalp marked this pull request as ready for review May 24, 2026 13:47
@serhalp serhalp requested a review from a team May 24, 2026 13:51
@serhalp serhalp enabled auto-merge May 24, 2026 13:52
@serhalp serhalp added this pull request to the merge queue May 24, 2026
Merged via the queue into main with commit 0e9f1c8 May 24, 2026
29 checks passed
@serhalp serhalp deleted the serhalp/ci/fix-2783 branch May 24, 2026 14:16
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.

Component tests are stuck on Install Browser step

2 participants