Skip to content

chore: upgrade the visual reporter to React 19 - #1293

Closed
plum117 wants to merge 0 commit into
webdriverio:mainfrom
plum117:chore/reporter-react-19
Closed

plum117 wants to merge 0 commit into
webdriverio:mainfrom
plum117:chore/reporter-react-19

Conversation

@plum117

@plum117 plum117 commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Summary

Step 3 of the visual reporter upgrade: React 18 → 19 (replaces Dependabot #1264).

Depends on #1292 (React Router 7), which depends on #1291 (Vite 6). Their commits are included here; after they are merged, this PR shows only the React 19 commit.

Remix 2 accepted only React 18; React Router 7 accepts React 18 and 19. The other UI packages accept React 19 (react-select 5.10: ^16.8 || … || ^19.0, react-icons 5.7: *).

These are development dependencies of the reporter: they build the static report UI. Users do not install them.

Changes

  • react, react-dom, @types/react, @types/react-dom: 18 → 19.3.
  • app/types/index.ts: with @types/react 19, useRef<T>(null) returns RefObject<T | null>, so CanvasDrawingProps.canvasRef allows null. The drawing hook already checks canvasRef.current for null.

Test

  • The built UI is pixel-identical: the demo report served on a fresh port and opened in headless Chrome (WebdriverIO), home view and comparison overlay: 0 different pixels compared with the Vite 5 / Remix build.
  • The react-select filters work: the Status dropdown opens with "All", "Passed" and "Failed"; "Passed" shows 19 cards and "Failed" 17. No browser console errors.
  • Reporter typecheck, pnpm test (1077 unit tests): pass. pnpm peers check: no React peer warning.

No changeset: development dependencies only, and the built UI does not change.

🤖 Generated with Claude Code

@changeset-bot

changeset-bot Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 1eee45b

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@plum117
plum117 marked this pull request as ready for review October 9, 2026 01:28
@greptile-apps

greptile-apps Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[High impact] The PR appears safe to merge; no actionable issues were found.

Summary

Upgrades the reporter UI to React 19.3, including the earlier Vite 6 and React Router 7 migration commits.

  • The visual reporter builds a static report with React Router 7 and React 19.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  Config["React Router config: ssr false"] --> Build["react-router build"]
  Route["Dashboard index route"] --> Build
  Build --> Client["build/client"]
  Client --> CLI["CLI copies report files"]
  Client --> Pages["GitHub Pages publishes files"]
  CLI --> Browser["React 19 hydrates the report"]
  Pages --> Browser
  Browser --> Data["Fetch static/report/output.json"]
Loading

Reviews (1) · Last reviewed commit: "chore: upgrade the visual reporter to Re..." · Reviewed by Greptile

@plum117 plum117 closed this Oct 9, 2026
@plum117
plum117 force-pushed the chore/reporter-react-19 branch from 554d1e2 to 1eee45b Compare October 9, 2026 01:53
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.

1 participant