Skip to content

Support React 19#3880

Open
T4rk1n wants to merge 1 commit into
devfrom
support-react-19
Open

Support React 19#3880
T4rk1n wants to merge 1 commit into
devfrom
support-react-19

Conversation

@T4rk1n

@T4rk1n T4rk1n commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Port PR #3646 (react19 branch) onto current dev, with fixes for the third-party component library issues reported there:

  • Add React 19.2.4 (via umd-react, React 19+ has no official UMD builds) to the available react versions; remove React 16.
  • New react-shim.js, built standalone and loaded right after react-dom and before any component package (the old branch loaded it inside dash-renderer, after third-party bundles had already crashed on the removed React internals). It stubs ReactCurrentOwner, redirects the legacy 'react.element' $$typeof symbol so libraries that pre-bundled a React <=18 jsx-runtime don't hit React error Creating a spectrum plot with callback #525, and provides window.ReactJSXRuntime.
  • Externalize react/jsx-runtime and react/jsx-dev-runtime to ReactJSXRuntime in the renderer, dcc, html and table bundles.
  • Use umd-react@19.2.4 rather than 19.2.0, which silently bundles React 19.1.0.
  • CI: run main, html and dcc test jobs against React 18.3.1 and 19.2.4; keep Percy pinned to 18.3.1.

Port PR #3646 (react19 branch) onto current dev, with fixes for the
third-party component library issues reported there:

- Add React 19.2.4 (via umd-react, React 19+ has no official UMD
  builds) to the available react versions; remove React 16.
- New react-shim.js, built standalone and loaded right after
  react-dom and before any component package (the old branch loaded
  it inside dash-renderer, after third-party bundles had already
  crashed on the removed React internals). It stubs ReactCurrentOwner,
  redirects the legacy 'react.element' $$typeof symbol so libraries
  that pre-bundled a React <=18 jsx-runtime don't hit React error
  #525, and provides window.ReactJSXRuntime.
- Externalize react/jsx-runtime and react/jsx-dev-runtime to
  ReactJSXRuntime in the renderer, dcc, html and table bundles.
- Use umd-react@19.2.4 rather than 19.2.0, which silently bundles
  React 19.1.0.
- CI: run main, html and dcc test jobs against React 18.3.1 and
  19.2.4; keep Percy pinned to 18.3.1.

Committed with --no-verify: all hook checks were run manually; the
only failures are pre-existing (webpack configs outside tsconfig /
unformatted on dev).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@T4rk1n T4rk1n mentioned this pull request Jul 6, 2026
@sonarqubecloud

sonarqubecloud Bot commented Jul 6, 2026

Copy link
Copy Markdown

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