backstage-plugin-announcements icon indicating copy to clipboard operation
backstage-plugin-announcements copied to clipboard

Bump react-router from 6.4.3 to 6.11.1

Open dependabot[bot] opened this issue 1 year ago • 0 comments

Bumps react-router from 6.4.3 to 6.11.1.

Release notes

Sourced from react-router's releases.

v6.11.1

Patch Changes

  • Fix usage of Component API within descendant <Routes> (#10434)
  • Fix bug when calling useNavigate from <Routes> inside a <RouterProvider> (#10432)
  • Fix usage of <Navigate> in strict mode when using a data router (#10435)
  • Fix basename handling when navigating without a path (#10433)
  • "Same hash" navigations no longer re-run loaders to match browser behavior (i.e. /path#hash -> /path#hash) (#10408)

Full Changelog: https://github.com/remix-run/react-router/compare/[email protected]@6.11.1

v6.11.0

What's Changed

Minor Changes

  • Enable basename support in useFetcher (#10336)
    • If you were previously working around this issue by manually prepending the basename then you will need to remove the manually prepended basename from your fetcher calls (fetcher.load('/basename/route') -> fetcher.load('/route'))
  • Updated dependencies:

Patch Changes

  • When using a RouterProvider, useNavigate/useSubmit/fetcher.submit are now stable across location changes, since we can handle relative routing via the @remix-run/router instance and get rid of our dependence on useLocation() (#10336)
    • When using BrowserRouter, these hooks remain unstable across location changes because they still rely on useLocation()
  • Fetchers should no longer revalidate on search params changes or routing to the same URL, and will only revalidate on action submissions or router.revalidate calls (#10344)
  • Fix inadvertent re-renders when using Component instead of element on a route definition (#10287)
  • Fail gracefully on <Link to="//"> and other invalid URL values (#10367)
  • Switched from useSyncExternalStore to useState for internal @remix-run/router router state syncing in <RouterProvider>. We found some subtle bugs where router state updates got propagated before other normal useState updates, which could lead to foot guns in useEffect calls. (#10377, #10409)
  • Log loader/action errors caught by the default error boundary to the console in dev for easier stack trace evaluation (#10286)
  • Fix bug preventing rendering of descendant <Routes> when RouterProvider errors existed (#10374)
  • Fix detection of useNavigate in the render cycle by setting the activeRef in a layout effect, allowing the navigate function to be passed to child components and called in a useEffect there (#10394)
  • Allow useRevalidator() to resolve a loader-driven error boundary scenario (#10369)
  • Enhance LoaderFunction/ActionFunction return type to prevent undefined from being a valid return value (#10267)
  • Ensure proper 404 error on fetcher.load call to a route without a loader (#10345)
  • Decouple AbortController usage between revalidating fetchers and the thing that triggered them such that the unmount/deletion of a revalidating fetcher doesn't impact the ongoing triggering navigation/revalidation (#10271)

Full Changelog: https://github.com/remix-run/react-router/compare/[email protected]@6.11.0

v6.10.0

What's Changed

We recently published a post over on the Remix Blog titled "Future Proofing Your Remix App" that goes through our strategy to ensure smooth upgrades for your Remix and React Router apps going forward. React Router 6.10.0 adds support for these flags (for data routers) which you can specify when you create your router:

const router = createBrowserRouter(routes, {
  future: {
    // specify future flags here
  },
</tr></table> 

... (truncated)

Changelog

Sourced from react-router's changelog.

6.11.1

Patch Changes

  • Fix usage of Component API within descendant <Routes> (#10434)
  • Fix bug when calling useNavigate from <Routes> inside a <RouterProvider> (#10432)
  • Fix usage of <Navigate> in strict mode when using a data router (#10435)
  • Updated dependencies:

6.11.0

Patch Changes

  • Log loader/action errors to the console in dev for easier stack trace evaluation (#10286)
  • Fix bug preventing rendering of descendant <Routes> when RouterProvider errors existed (#10374)
  • Fix inadvertent re-renders when using Component instead of element on a route definition (#10287)
  • Fix detection of useNavigate in the render cycle by setting the activeRef in a layout effect, allowing the navigate function to be passed to child components and called in a useEffect there. (#10394)
  • Switched from useSyncExternalStore to useState for internal @remix-run/router router state syncing in <RouterProvider>. We found some subtle bugs where router state updates got propagated before other normal useState updates, which could lead to footguns in useEffect calls. (#10377, #10409)
  • Allow useRevalidator() to resolve a loader-driven error boundary scenario (#10369)
  • Avoid unnecessary unsubscribe/resubscribes on router state changes (#10409)
  • When using a RouterProvider, useNavigate/useSubmit/fetcher.submit are now stable across location changes, since we can handle relative routing via the @remix-run/router instance and get rid of our dependence on useLocation(). When using BrowserRouter, these hooks remain unstable across location changes because they still rely on useLocation(). (#10336)
  • Updated dependencies:

6.10.0

Minor Changes

  • Added support for Future Flags in React Router. The first flag being introduced is future.v7_normalizeFormMethod which will normalize the exposed useNavigation()/useFetcher() formMethod fields as uppercase HTTP methods to align with the fetch() behavior. (#10207)

    • When future.v7_normalizeFormMethod === false (default v6 behavior),
      • useNavigation().formMethod is lowercase
      • useFetcher().formMethod is lowercase
    • When future.v7_normalizeFormMethod === true:
      • useNavigation().formMethod is uppercase
      • useFetcher().formMethod is uppercase

Patch Changes

  • Fix route ID generation when using Fragments in createRoutesFromElements (#10193)
  • Updated dependencies:

6.9.0

Minor Changes

  • React Router now supports an alternative way to define your route element and errorElement fields as React Components instead of React Elements. You can instead pass a React Component to the new Component and ErrorBoundary fields if you choose. There is no functional difference between the two, so use whichever approach you prefer 😀. You shouldn't be defining both, but if you do Component/ErrorBoundary will "win". (#10045)

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

dependabot[bot] avatar May 08 '23 03:05 dependabot[bot]