Semantic Diff

#9145 Reject @@jsxConfig versions other than 4

1 commit

7249c119e4b590a831809c68ac8546baa05ca6bf..pr-9145

299a43757 · cknitt + Claude · Oct 30, 2026, 20:37 UTC

Reject @@jsxConfig versions other than 4

Why

Only JSX v4 exists, but @@jsxConfig stored any version, and any value other than 4 silently turned the JSX transform off for the rest of the file (#9132).

addedDiagnostic unsupported JSX version

@@jsxConfig({version: 3}) let x = <div />
diagnostic
Before
After
none; `<div />` stays an untransformed JSX node 1 │ @@jsxConfig({version: [3]}) Unsupported JSX version. Only `version: 4` is supported.

Review

  • Does a non-React module_ still skip the check? No: it forced version 4 before and ignored the field; now a version other than 4 is an error there too.