Skip to content

v6.12.0

Compare
Choose a tag to compare
@brophdawg11 brophdawg11 released this 06 Jun 18:29
· 428 commits to main since this release
6c0bbb1

Warning
Please use version 6.13.0 or later instead of 6.12.0/6.12.1. These versions suffered from some Webpack build/minification issues resulting failed builds or invalid minified code in your production bundles. See #10569 and #10579 for more details.

What's Changed

With 6.12.0 we've added better support for suspending components by wrapping the internal router state updates in React.startTransition. This means that, for example, if one of your components in a destination route suspends and you have not provided a Suspense boundary to show a fallback, React will delay the rendering of the new UI and show the old UI until that asynchronous operation resolves. This could be useful for waiting for things such as waiting for images or CSS files to load (and technically, yes, you could use it for data loading but we'd still recommend using loaders for that 😀). For a quick overview of this usage, check out Ryan's demo on Twitter.

Minor Changes

  • Wrap internal router state updates with React.startTransition (#10438)

Patch Changes

  • Allow fetcher revalidations to complete if submitting fetcher is deleted (#10535)
  • Re-throw DOMException (DataCloneError) when attempting to perform a PUSH navigation with non-serializable state. (#10427)
  • Ensure revalidations happen when hash is present (#10516)
  • Upgrade jest and jsdom (#10453)
  • Updated dependencies:

Full Changelog: https://github.com/remix-run/react-router/compare/react-router@6.11.2...react-router@6.12.0