Skip to content

build: keep the browser support of the visual report (Chrome 87+, Safari 14+) - #1305

Merged
plum117 merged 1 commit into
webdriverio:mainfrom
plum117:build/reporter-browser-target
Oct 9, 2026
Merged

plum117 merged 1 commit into
webdriverio:mainfrom
plum117:build/reporter-browser-target

Conversation

@plum117

@plum117 plum117 commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Why

Vite 8 builds for its default target 'baseline-widely-available': Chrome/Edge 111+, Firefox 114+, Safari 16.4+. Vite 5 (reporter 0.4.15) used the 'modules' target: Chrome 87+, Edge 88+, Firefox 78+, Safari 14+. Without a change, v11 of the reporter would drop those older browsers. The report is often opened in another browser than the one under test (for example a CI artifact opened on a laptop), so we keep the old support. Vite 7 removed the 'modules' value, so the list is set explicitly.

What

  • packages/visual-reporter/vite.config.ts: build.target: ['es2020', 'edge88', 'firefox78', 'chrome87', 'safari14'] (the values of Vite 5's 'modules' target), with a comment.
  • docs/v11-migration.md: the browser support of the report does not change.
  • .changeset/visual-reporter-react-router.md: the same text; patch instead of minor (no browser is dropped any more; the reporter still gets a minor from the Node.js engines changeset).

The CSS does not limit the browsers: the report uses plain CSS. Tailwind is in the dev dependencies, but its PostCSS plugin is commented out and no file imports app/tailwind.css.

Test

  • Syntax: all JS bundles of build/client/assets parsed with acorn as ES2020. With the Vite 8 default: 5 bundles fail (for example private class fields #). With this change: all bundles parse.
  • UI: demo report (pnpm build + pnpm script:prepare.report), served with sirv, screenshots with WebdriverIO in Chrome (home, after the first click): 0 different pixels between the Vite 8 default and this change.
  • Filters: Passed → 19 cards, Failed → 17 cards, no console errors.
  • pnpm --filter @wdio/visual-reporter typecheck and pnpm test:lint pass.

🤖 Generated with Claude Code

…ari 14+)

Vite 8 builds for 'baseline-widely-available' by default (Chrome/Edge 111+,
Firefox 114+, Safari 16.4+), and Vite 7 removed the 'modules' target that
Vite 5 used. Set the same browser list explicitly. All bundles now parse as
ES2020 (5 did not before), and the report screenshots are pixel-identical.
Update the v11 guide and the reporter changeset (patch: no browser is
dropped any more).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Oct 9, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: d49c969

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 changesets to release 1 package
Name Type
@wdio/visual-reporter Patch

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 11:48
@greptile-apps

greptile-apps Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; no actionable issue was found.

Summary

Keeps the report’s existing browser targets by setting them explicitly in vite.config.ts.

  • The visual report keeps its earlier browser support.

Reviews (1) · Last reviewed commit: "build: keep the browser support of the v..." · Reviewed by Greptile

@plum117
plum117 merged commit 89fd416 into webdriverio:main Oct 9, 2026
10 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