Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(react): reenable react 19 support #6296

Merged
merged 10 commits into from
Jan 14, 2025
Merged

Conversation

calebpollman
Copy link
Member

@calebpollman calebpollman commented Jan 14, 2025

Description of changes

Re-enables support for react@19, see (#5826) for the bulk of updates

Additional Updates Applied

  • update ForwardRefPrimitive interface to directly extend from React.ForwardRefExoticComponent and remove hand rolled JSXElementForwardRefExoticComponent, replace overload function typing return with ReturnType<React.ForwardRefExoticComponent> to allow for return type to be derived from consuming project's installed @types/react version, add deprecation flag (ref). To be noted, this change does update the shape of ForwardRefPrimitive in regards to its return type, defaultProps and propTypes but is considered to be a bug fix as the previous handling incorrectly applied those types in projects consuming @types/react@18 and does not impact runtime behavior

  • update Primitive interface to extend directly from React.ForwardRefRenderFunction, remove hand rolled JSElementForwardRefRenderFunction, add deprecation flag (ref)

  • update @radix-ui direct deps to remove additional installation of @types/[email protected] via [email protected] transitive dep

  • remove usage of and add deprecation flag usage to sanitizeNamespaceImport util previously used for monkey patching ESM support for @radix-ui/*@1.0.0 direct deps (new versions are ESM compatible by default)

  • add extended View primitive in build system test to ensure that conflicting @react/types fail the tests (ref)

  • fix typing and migrate static .mdx component override example from the docs to an example to ensure type checking of example code (old, new)

Issue #, if available

resolves #6084
resolves #6275

Description of how you validated changes

Checklist

  • Have read the Pull Request Guidelines
  • PR description included
  • yarn test passes and tests are updated/added
  • PR title and commit messages follow conventional commit syntax
  • If this change should result in a version bump, changeset added (This can be done after creating the PR.) This does not apply to changes made to docs, e2e, examples, or other private packages.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Copy link

changeset-bot bot commented Jan 14, 2025

🦋 Changeset detected

Latest commit: de4d269

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 15 packages
Name Type
@aws-amplify/ui Minor
@aws-amplify/ui-react Minor
@aws-amplify/ui-react-ai Minor
@aws-amplify/ui-react-core Minor
@aws-amplify/ui-react-core-notifications Minor
@aws-amplify/ui-react-geo Minor
@aws-amplify/ui-react-liveness Minor
@aws-amplify/ui-react-native Minor
@aws-amplify/ui-react-notifications Minor
@aws-amplify/ui-react-storage Minor
@aws-amplify/ui-react-auth Patch
@aws-amplify/ui-react-core-auth Patch
@aws-amplify/ui-react-native-auth Patch
@aws-amplify/ui-vue Patch
@aws-amplify/ui-angular Patch

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

@calebpollman calebpollman marked this pull request as ready for review January 14, 2025 21:59
@calebpollman calebpollman requested a review from a team as a code owner January 14, 2025 21:59
@calebpollman calebpollman changed the title [WIP] feat(react): reenable react 19 feat(react): reenable react 19 Jan 14, 2025
jordanvn
jordanvn previously approved these changes Jan 14, 2025
jordanvn
jordanvn previously approved these changes Jan 14, 2025
@calebpollman calebpollman merged commit 8d2aa79 into main Jan 14, 2025
34 checks passed
@calebpollman calebpollman deleted the react/reenable-react-19 branch January 14, 2025 23:18
@github-actions github-actions bot mentioned this pull request Jan 14, 2025
jjarvisp pushed a commit that referenced this pull request Jan 23, 2025
* Revert "Revert support for React 19 (#6278)"

This reverts commit 475e4a3.

* update radix deps
* remove radix namespace sanitization
* migrate/cleanup FileUploader component override example
* add ExtendedView component for surfacing ReactNode conflicts
* Remove extended and overridden react types
jjarvisp added a commit that referenced this pull request Jan 28, 2025
* chore(react): remove direct usage of react-test-renderer and types (#6255)

* chore(deps): upgrade next deps to point to ^14.2.15 (#6263)

* fix(docs): use correct listLocation attribute names in Storage Browser auth example (#6264)

* chore(react-native): update allowed peerDep to >=0.70 (#6266)

* chore(react): add support for react 19 (#5826)

* chore(storage-browser): bump up package size limit (#6267)

* chore(changeset): update react 19 changeset from patch to minor bump (#6269)

* chore(react): remove radix-ui upgrades (#6268)

* fix(docs): remove typo from liveness detector core docs (#6256)

* Version Packages (#6261)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* chore: remove temporary pin to react 18 in react@latest build tests (#6274)

* chore: remove temporary use of react 18 in react@latest build tests

* chore: update workflow for forced test run

* chore: adjusting testing strategy, modify publish workflow instead of reusable test

* chore: reverting temporary testing changes

* Revert support for React 19 (#6278)

* Revert "chore: remove temporary pin to react 18 in react@latest build tests (#6274)"

This reverts commit d9ee32d.

* Revert "fix(docs): remove typo from liveness detector core docs (#6256)"

This reverts commit 9d71dd8.

* Revert "chore(react): remove radix-ui upgrades (#6268)"

This reverts commit c623990.

* Revert "chore(changeset): update react 19 changeset from patch to minor bump (#6269)"

This reverts commit 7045aed.

* Revert "chore(storage-browser): bump up package size limit (#6267)"

This reverts commit a79b8e9.

* Revert "chore(react): add support for react 19 (#5826)"

This reverts commit 954e9be.

* chore: add changeset

* Version Packages (#6281)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* chore(deps): bump nextjs version (#6284)

* chore: add v0.76 and latest to React Native build system tests (#6285)

* chore: add react native v0.76 build system tests to CI
* chore: add react native 'latest' to build system tests

* fix(github-actions): bump upload-artifact to v4 (#6289)

* feat(i18n): add Chinese translations for password fields in zh.ts (#6125)

Co-authored-by: Caleb Pollman <[email protected]>

* test(e2e): add storage-browser offline tests (#6206)

* test(e2e): add storage-browser offline tests

* address feedback

* fix EOF

* fix EOF

* Update packages/e2e/cypress/integration/common/shared.ts

Co-authored-by: Caleb Pollman <[email protected]>

* address feedback

---------

Co-authored-by: Caleb Pollman <[email protected]>

* chore(docs): update react web Authenticator hideSignUp example (#6290)

* feat(react): reenable react 19 support (#6296)

* Revert "Revert support for React 19 (#6278)"

This reverts commit 475e4a3.

* update radix deps
* remove radix namespace sanitization
* migrate/cleanup FileUploader component override example
* add ExtendedView component for surfacing ReactNode conflicts
* Remove extended and overridden react types

* chore(build-system-tests): disable react@latest tests (#6297)

* Version Packages (#6292)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* chore(ci): add retry delays to build tests & upgrade actions/cache (#6291)

* chore: add delay between install retries, swap RN to use install script
* chore: upgrade actions/cache to v4.2.0

* chore(build-system-tests): reenable react@latest tests (#6299)

* fix(slider): remounted controlled value not updating (#6301)

* fix(ui): fix and add missing sv translations (#6288)

Co-authored-by: Jordan Van Ness <[email protected]>
Co-authored-by: Caleb Pollman <[email protected]>

* chore(changeset): add changeset for PR #6301 (#6303)

* fix(react-storage): enable default checksum algorithm for create folder action  (#6305)

* fix: include default checksum alg header in createFolder action

* test: update createFolder test spec for checksum alg header

* chore: adding changeset

* Version Packages (#6304)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

* chore(docs): Update Android UI component versions (#6311)

* chore(deps-dev): bump vite from 5.2.14 to 5.4.12 (#6307)

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.2.14 to 5.4.12.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.12/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.12/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(storage-browser): export UseView type (#6314)

* chore(ui-react-storage): clean up outdated styles file (#6197)

Co-authored-by: ashika112 <[email protected]>

* chore(react-native): add fed sign in example env (#6318)

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Caleb Pollman <[email protected]>
Co-authored-by: Tiffany Yeung <[email protected]>
Co-authored-by: Jordan Van Ness <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: BeforeSunset16 <[email protected]>
Co-authored-by: Caleb Pollman <[email protected]>
Co-authored-by: Ashwin Kumar <[email protected]>
Co-authored-by: Danny Banks <[email protected]>
Co-authored-by: berg-dee <[email protected]>
Co-authored-by: Vincent Tran <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: AllanZhengYP <[email protected]>
Co-authored-by: ashika112 <[email protected]>
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.

TypeScript Type Error with Overridden Components in FileUploader Using AWS Amplify UI react 19 support
3 participants