Context
Dependabot PR #87 bumps react/react-dom from 18 to 19. We cannot adopt it yet because the frontend depends on react-grid-gallery (^1.0.1, last published 2024-04-29), which is used to render the search results gallery in app/frontend/src/components/SearchResults/SearchResults.tsx.
react-grid-gallery@1.0.1 accesses ReactCurrentOwner, a React internal that was removed in React 19, so upgrading causes a runtime crash:
Cannot read properties of undefined (reading 'ReactCurrentOwner')
There is no React-19-compatible release of react-grid-gallery available, and its declared peer range (react >=16.14.0) does not reflect the actual incompatibility.
Decision
Staying on React 18 for now. Dependabot PR #87 has been closed. All other dependency bumps (Fluent UI, Vite 7, react-router-dom 7, backend/dev deps) were adopted.
To adopt React 19 later
Context
Dependabot PR #87 bumps
react/react-domfrom 18 to 19. We cannot adopt it yet because the frontend depends onreact-grid-gallery(^1.0.1, last published 2024-04-29), which is used to render the search results gallery inapp/frontend/src/components/SearchResults/SearchResults.tsx.react-grid-gallery@1.0.1accessesReactCurrentOwner, a React internal that was removed in React 19, so upgrading causes a runtime crash:There is no React-19-compatible release of
react-grid-galleryavailable, and its declared peer range (react >=16.14.0) does not reflect the actual incompatibility.Decision
Staying on React 18 for now. Dependabot PR #87 has been closed. All other dependency bumps (Fluent UI, Vite 7, react-router-dom 7, backend/dev deps) were adopted.
To adopt React 19 later
react-grid-gallerywith a maintained, React-19-compatible gallery component (or a custom implementation), thenreact,react-dom,@types/react,@types/react-domto^19.x)import { JSX } from "react";inapp/frontend/src/pages/NoPage.tsx(React 19 removed the globalJSXnamespace)