Rendering /en/pages/<slug> in dev logs four React warnings while the server islands render:
10:49:36 [200] /_server-islands/Page 279ms
Warning: Invalid hook call. Hooks can only be called inside of the body of a function component. …
3. You might have more than one copy of React in the same app
10:49:36 [200] /_server-islands/Header 561ms
(same warning ×3 more, on Header and Footer)
The pages return 200, but hook failures during SSR can mean a component silently renders degraded, so this deserves a look rather than a mute.
The "more than one copy of React" suggestion is literally true in our tree:
react@19.2.4 is installed (not deduped) via @clerk/clerk-js → @solana/wallet-adapter-react (Clerk's web3 login support).
@cu-mkp/editioncrafter's Material-UI 4 packages resolve to the root react@18.3.1 but npm marks them invalid (they declare 16/17 peers).
Suggested first steps: reproduce with a stack trace to identify which island component triggers it, then decide between an overrides pin and dedupe. Found while surveying fds dev logs (marronage, 48a160a) — see #753 for the rest of that survey.
Rendering
/en/pages/<slug>in dev logs four React warnings while the server islands render:The pages return 200, but hook failures during SSR can mean a component silently renders degraded, so this deserves a look rather than a mute.
The "more than one copy of React" suggestion is literally true in our tree:
react@19.2.4is installed (not deduped) via@clerk/clerk-js→@solana/wallet-adapter-react(Clerk's web3 login support).@cu-mkp/editioncrafter's Material-UI 4 packages resolve to the rootreact@18.3.1but npm marks theminvalid(they declare 16/17 peers).Suggested first steps: reproduce with a stack trace to identify which island component triggers it, then decide between an
overridespin and dedupe. Found while surveyingfds devlogs (marronage, 48a160a) — see #753 for the rest of that survey.