chore: drop React 17 from supported peer dependency range#2024
chore: drop React 17 from supported peer dependency range#2024unrevised6419 wants to merge 1 commit into
Conversation
Tighten react/react-dom peerDependencies to ^18.0.0 (was ^17.0.0 || ^18.0.0) across design-system, icons and primitives, matching the React 18 APIs already in use. Remove the React 17 client-only fallback from the useId hook. Mirrors strapi/strapi#26194. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
@unrevised6419 is attempting to deploy a commit to the Strapi Team on Vercel. A member of the Team first needs to authorize it. |
🦋 Changeset detectedLatest commit: 02c2ede The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|



What
Removes all traces of React 17 from the repo, mirroring strapi/strapi#26194.
react/react-dompeerDependencies to^18.0.0(was^17.0.0 || ^18.0.0) in:@strapi/design-system@strapi/icons@strapi/ui-primitives|| (() => undefined)) and its stale comment from theuseIdhook. Behavior under React 18 is identical —React.useIdis always defined.Why
The packages already build and test exclusively against
react@18.3.1(devDependencies) and rely on React 18-only APIs. The^17peer range was stale metadata. This is a peer-range correction, not a new behavioral break.In practice React 17 was already impossible to use: the Strapi Admin entry point itself mounts via the React 18-only
createRootAPI (render.ts):So any consumer of this design system is already on React 18. The
^17peer range only advertised support that could never be exercised.Notes
devDependencieswere already pinned to18.3.1— unchanged. NoReactDOM.render/ version-check code paths exist in this repo (design-system, not the admin app), so the upstream PR'screateRoot/batching notes don't apply to this repo's source.🤖 Generated with Claude Code