-
Notifications
You must be signed in to change notification settings - Fork 1
fix(deps): update dependency react-router-native to ^6.30.0 #214
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
Open
renovate
wants to merge
1
commit into
main
Choose a base branch
from
renovate/react-router-monorepo
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
768422e
to
5c6f8f1
Compare
5c6f8f1
to
1a3960b
Compare
1a3960b
to
8fbd8ee
Compare
8fbd8ee
to
e5bb9a3
Compare
e5bb9a3
to
311aa80
Compare
311aa80
to
1385ef4
Compare
1385ef4
to
632427d
Compare
632427d
to
3f3b678
Compare
3f3b678
to
dec4548
Compare
dec4548
to
b85f5c7
Compare
b85f5c7
to
b1d8b41
Compare
b1d8b41
to
672ce5b
Compare
672ce5b
to
4255370
Compare
4255370
to
d8a7ba3
Compare
d8a7ba3
to
fe17096
Compare
fe17096
to
15c629a
Compare
15c629a
to
c1f3584
Compare
c1f3584
to
a300d79
Compare
a300d79
to
2325fd7
Compare
2325fd7
to
c0aa634
Compare
c0aa634
to
1728a8b
Compare
1728a8b
to
6523f44
Compare
6523f44
to
a49f6fe
Compare
a49f6fe
to
9113f0f
Compare
9113f0f
to
5d2b5a7
Compare
5d2b5a7
to
622bf0f
Compare
622bf0f
to
279d0a4
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^6.16.0
->^6.30.0
Release Notes
remix-run/react-router (react-router-native)
v6.30.0
Compare Source
Date: 2025-02-27
Minor Changes
fetcherKey
as a parameter topatchRoutesOnNavigation
(#13109)Patch Changes
6.29.0
via #12169 that caused issues navigating to hash routes inside splat routes for applications using Lazy Route Discovery (patchRoutesOnNavigation
) (#13108)Full Changelog:
v6.29.0...v6.30.0
v6.29.0
Compare Source
Date: 2025-01-30
Minor Changes
signal
as a parameter topatchRoutesOnNavigation
(#12900)Patch Changes
data()
result (#12845)matchRoutes
calls when possible (#12169)patchRoutesOnNavigation
path
param for fetcher calls (#12899)Full Changelog:
v6.28.2...v6.29.0
v6.28.2
Compare Source
Date: 2025-01-16
Patch Changes
key
usage when not opted intofuture.v7_fetcherPersist
(#12674)Full Changelog:
v6.28.1...v6.28.2
v6.28.1
Compare Source
Date: 2024-12-20
Patch Changes
false
(#12441)Full Changelog:
v6.28.0...v6.28.1
v6.28.0
Compare Source
Date: 2024-11-06
What's Changed
Minor Changes
json
/defer
in favor of returning raw objectsPatch Changes
Full Changelog:
v6.27.0...v6.28.0
v6.27.0
Compare Source
Date: 2024-10-11
What's Changed
Stabilized APIs
This release stabilizes a handful of "unstable" APIs in preparation for the pending React Router v7 release (see these posts for more info):
unstable_dataStrategy
→dataStrategy
(createBrowserRouter
and friends) (Docs)unstable_patchRoutesOnNavigation
→patchRoutesOnNavigation
(createBrowserRouter
and friends) (Docs)unstable_flushSync
→flushSync
(useSubmit
,fetcher.load
,fetcher.submit
) (Docs)unstable_viewTransition
→viewTransition
(<Link>
,<Form>
,useNavigate
,useSubmit
) (Docs)Minor Changes
unstable_flushSync
option for navigations and fetchers (#11989)unstable_viewTransition
option for navigations and the correspondingunstable_useViewTransitionState
hook (#11989)unstable_dataStrategy
(#11974)unstable_patchRoutesOnNavigation
(#11973)PatchRoutesOnNavigationFunctionArgs
type for convenience (#11967)Patch Changes
?index
param already exists from a prior submission (#12003)useFormAction
bug - when removing?index
param it would not keep other non-Remixindex
params (#12003)preventScrollReset
through redirects during concurrent fetches (#11999)console.error
on fetcher abort due to back-to-back revalidation calls (#12050)partialHydration
when hydrating with errors (#12070)patchRoutesOnNavigation
calls (#12055)unstable_
APIpatchRoutesOnNavigation
internally so that multiple navigations with the same start/end would only execute the function once and use the same promisepatch
short circuiting if a navigation was interrupted (and therequest.signal
aborted) since the first invocation'spatch
would no-opimport()
for async routes will already be cached automatically - and if not it's easy enough for users to implement this cache in userlanddiscoveredRoutes
FIFO queue fromunstable_patchRoutesOnNavigation
(#11977)unstable_
APIpatchRoutesOnNavigation
RouteObject
withinPatchRoutesOnNavigationFunction
'spatch
method so it doesn't expect agnostic route objects passed topatch
(#11967)patchRoutesOnNavigation
directly touseRouteError
instead of wrapping them in a 400ErrorResponse
instance (#12111)Full Changelog:
v6.26.2...v6.27.0
v6.26.2
Compare Source
Date: 2024-09-09
Patch Changes
unstable_dataStrategy
API to allow for more advanced implementations (#11943)unstable_dataStrategy
, please review carefully as this includes breaking changes to this APIunstable_HandlerResult
tounstable_DataStrategyResult
unstable_dataStrategy
from a parallel array ofunstable_DataStrategyResult[]
(parallel tomatches
) to a key/value object ofrouteId => unstable_DataStrategyResult
match.shouldLoad
)handlerOverride
instead of returning aDataStrategyResult
handlerOverride
will be wrapped up into aDataStrategyResult
and returned frommmatch.resolve
match.resolve()
into a final results object you should not need to think about theDataStrategyResult
typehandlerOverride
, then you will need to assign aDataStrategyResult
as the value so React Router knows if it's a successful execution or an error (see examples in the documentation for details)fetcherKey
parameter tounstable_dataStrategy
to allow differentiation from navigational and fetcher callsblocker.proceed
is called quickly/synchronously (#11930)Full Changelog:
v6.26.1...v6.26.2
v6.26.1
Compare Source
Date: 2024-08-15
Patch Changes
unstable_patchRoutesOnMiss
tounstable_patchRoutesOnNavigation
to match new behavior (#11888)unstable_patchRoutesOnNavigation
logic so that we call the method when we match routes with dynamic param or splat segments in case there exists a higher-scoring static route that we've not yet discovered (#11883)unstable_patchRoutesOnNavigation
against so that we don't re-call on subsequent navigations to the same pathFull Changelog:
v6.26.0...v6.26.1
v6.26.0
Compare Source
Date: 2024-08-01
Minor Changes
replace(url, init?)
alternative toredirect(url, init?)
that performs ahistory.replaceState
instead of ahistory.pushState
on client-side navigation redirects (#11811)unstable_data()
API for usage with Remix Single Fetch (#11836)createStaticHandler.query()
to allow loaders/actions to return arbitrary data along with customstatus
/headers
without forcing the serialization of data into aResponse
instanceunstable_dataStrategy
such as serializing viaturbo-stream
in Remix Single Fetchstatus
field fromHandlerResult
status
fromunstable_dataStrategy
you should instead do so viaunstable_data()
Patch Changes
future.v7_partialHydration
along withunstable_patchRoutesOnMiss
(#11838)router.state.matches
will now include any partial matches so that we can render ancestorHydrateFallback
componentsFull Changelog:
v6.25.1...v6.26.0
v6.25.1
Compare Source
Date: 2024-07-17
Patch Changes
RouterProvider
internals to reduce unnecessary re-renders (#11803)Full Changelog:
v6.25.0...v6.25.1
v6.25.0
Compare Source
Date: 2024-07-16
What's Changed
Stabilized
v7_skipActionErrorRevalidation
This release stabilizes the
future.unstable_skipActionErrorRevalidation
flag intofuture.v7_skipActionErrorRevalidation
in preparation for the upcoming React Router v7 release.4xx/5xx
Response
will not trigger a revalidation by defaultshouldRevalidate
'sunstable_actionStatus
parameter toactionStatus
Minor Changes
future.unstable_skipActionErrorRevalidation
asfuture.v7_skipActionErrorRevalidation
(#11769)Patch Changes
useMatch
so matches/params reflect decoded params (#11789)unstable_patchRoutesOnMiss
(#11786)unstable_patchRoutesOnMiss
that matched a splat route on the server (#11790)Full Changelog:
v6.24.1...v6.25.0
v6.24.1
Compare Source
Date: 2024-07-03
Patch Changes
polyfill.io
reference from warning message because the domain was sold and has since been determined to serve malware (#11741)NavLinkRenderProps
type for easier typing of customNavLink
callback (#11553)future.v7_relativeSplatPath
, properly resolve relative paths in splat routes that are children of pathless routes (#11633)router.routes
identity/reflow during route patching (#11740)Full Changelog:
v6.24.0...v6.24.1
v6.24.0
Compare Source
Date: 2024-06-24
What's Changed
Lazy Route Discovery (a.k.a. "Fog of War")
We're really excited to release our new API for "Lazy Route Discovery" in
v6.24.0
! For some background information, please check out the original RFC. The tl;dr; is that ever since we introduced the Data APIs in v6.4 via<RouterProvider>
, we've been a little bummed that one of the tradeoffs was the lack of a compelling code-splitting story mirroring what we had in the<BrowserRouter>
/<Routes>
apps. We took a baby-step towards improving that story withroute.lazy
inv6.9.0
, but withv6.24.0
we've gone the rest of the way.With "Fog of War", you can now load portions of the route tree lazily via the new
unstable_patchRoutesOnMiss
option passed tocreateBrowserRouter
(and it's memory/hash counterparts). This gives you a way to hook into spots where React Router is unable to match a given path and patch new routes into the route tree during the navigation (or fetcher call).Here's a very small example, but please refer to the documentation for more information and use cases:
Minor Changes
Patch Changes
fetcher.submit
types - remove incorrectnavigate
/fetcherKey
/unstable_viewTransition
options because they are only relevant foruseSubmit
(#11631)location.state
values passed to<StaticRouter>
(#11495)Full Changelog:
v6.23.1...v6.24.0
v6.23.1
Compare Source
Date: 2024-05-10
Patch Changes
undefined
to be resolved through<Await>
(#11513)document
check when checking fordocument.startViewTransition
availability (#11544)react-router-dom/server
import back toreact-router-dom
instead ofindex.ts
(#11514)@remix-run/router
- Supportunstable_dataStrategy
onstaticHandler.queryRoute
(#11515)Full Changelog:
v6.23.0...v6.23.1
v6.23.0
Compare Source
Date: 2024-04-23
What's Changed
Data Strategy (unstable)
The new
unstable_dataStrategy
API is a low-level API designed for advanced use-cases where you need to take control over the data strategy for yourloader
/action
functions. The default implementation is today's behavior, to fetch all loaders in parallel, but this option allows users to implement more advanced data flows including Remix "Single Fetch", user-land middleware/context APIs, automatic loader caching, and more. Please see the docs for more information.Note: This is a low-level API intended for advanced use-cases. This overrides React Router's internal handling of
loader
/action
execution, and if done incorrectly will break your app code. Please use with caution and perform the appropriate testing.Skip Action Error Revalidation (unstable)
Currently, all active
loader
's revalidate after anyaction
submission, regardless of theaction
result. However, in the majority of cases a4xx
/5xx
response from anaction
means that no data was actually changed and the revalidation is unnecessary. We've introduced a newfuture.unstable_skipActionErrorRevalidation
flag that changes the behavior here, and we plan to make this the default in future version of React Router.With this flag enabled,
action
's that return/throw a4xx
/5xx
response status will no longer automatically revalidate. If you need to revalidate after a4xx
/5xx
result with this flag enabled, you can still do that via returningtrue
fromshouldRevalidate
- which now also receives a newunstable_actionStatus
argument alongsideactionResult
so you can make decision based on the status of theaction
response without having to encode it into the action data.Minor Changes
unstable_dataStrategy
configuration option (#11098, #11377)@remix-run/router
- Add a newfuture.unstable_skipActionRevalidation
future flag (#11098)@remix-run/router
- SSR: Added a newskipLoaderErrorBubbling
options to thestaticHandler.query
method to disable error bubbling by the static handler for use in Remix's Single Fetch implementation (#11098, (#11377))Full Changelog:
v6.22.3...v6.23.0
v6.22.3
Compare Source
Date: 2024-03-07
Patch Changes
future.v7_partialHydration
bug that would re-run loaders below the boundary on hydration if SSR loader errors bubbled to a parent boundary (#11324)future.v7_partialHydration
bug that would consider the router uninitialized if a route did not have a loader (#11325)Full Changelog:
v6.22.2...v6.22.3
v6.22.2
Compare Source
Date: 2024-02-28
Patch Changes
Full Changelog:
v6.22.1...v6.22.2
v6.22.1
Compare Source
Date: 2024-02-16
Patch Changes
Full Changelog:
v6.22.0...v6.22.1
v6.22.0
Compare Source
Date: 2024-02-01
What's Changed
Core Web Vitals Technology Report Flag
In 2021, the HTTP Archive launched the Core Web Vitals Technology Report dashboard:
They use a tool called
wappalyzer
to identify what technologies a given website is using by looking for certain scripts, global JS variables, or other identifying characteristics. For example, for Remix applications, they look for the global__remixContext
variable to identify that a website is using Remix.It was brought to our attention that React Router was unable to be reliably identified because there are no identifying global aspects. They are currently looking for external scripts with
react-router
in the name. This will identify sites using React Router from a CDN such asunpkg
- but it will miss the vast majority of sites that are installing React Router from the npm registry and bundling it into their JS files. This results in drastically under-reporting the usage of React Router on the web.Starting with version
6.22.0
, sites usingreact-router-dom
will begin adding awindow.__reactRouterVersion
variable that will be set to a string value of the SemVer major version number (i.e.,window.__reactRouterVersion = "6";
) so that they can be properly identified.Minor Changes
window.__reactRouterVersion
for CWV Report detection (#11222)createStaticHandler
future.v7_throwAbortReason
flag to throwrequest.signal.reason
(defaults to aDOMException
) when a request is aborted instead of anError
such asnew Error("query() call aborted: GET /path")
(#11104)DOMException
was added in Node v17 so you will not get aDOMException
on Node 16 and below.Patch Changes
ErrorResponse
status code if passed togetStaticContextFormError
(#11213)Full Changelog:
v6.21.3...v6.22.0
v6.21.3
Compare Source
Date: 2024-01-18
Patch Changes
NavLink
isPending
when abasename
is used (#11195)unstable_
prefix fromBlocker
/BlockerFunction
types (#11187)Full Changelog:
v6.21.2...v6.21.3
v6.21.2
Compare Source
Date: 2024-01-11
Patch Changes
useId
for internal fetcher keys when available (#11166)Full Changelog:
v6.21.1...v6.21.2
v6.21.1
Compare Source
Date: 2023-12-21
Patch Changes
route.lazy
not working correctly on initial SPA load whenv7_partialHydration
is specified (#11121)submitting
phase (#11102)resolveTo
(#11097)Full Changelog:
v6.21.0...v6.21.1
v6.21.0
Compare Source
Date: 2023-12-13
What's Changed
future.v7_relativeSplatPath
We fixed a splat route path-resolution bug in
6.19.0
, but later determined a large number of applications were relying on the buggy behavior, so we reverted the fix in6.20.1
(see #10983, #11052, #11078).The buggy behavior is that the default behavior when resolving relative paths inside a splat route would ignore any splat (
*
) portion of the current route path. When the future flag is enabled, splat portions are included in relative path logic within splat routes.For more information, please refer to the
useResolvedPath
docs and/or the detailed changelog entry.Partial Hydration
We added a new
future.v7_partialHydration
future flag for the@remix-run/router
that enables partial hydration of a data router when Server-Side Rendering. This allows you to providehydrationData.loaderData
that has values for some initially matched route loaders, but not all. When this flag is enabled, the router will callloader
functions for routes that do not have hydration loader data duringrouter.initialize()
, and it will render down to the deepest providedHydrateFallback
(up to the first route without hydration data) while it executes the unhydrated routes. (#11033)Minor Changes
future.v7_relativeSplatPath
flag to implement a breaking bug fix to relative routing when inside a splat route. (#11087)future.v7_partialHydration
future flag that enables partial hydration of a data router when Server-Side Rendering (#11033)Patch Changes
ErrorBoundary
's (#11071)loader
/action
functions (#11061)relative="path"
issue when renderingLink
/NavLink
outside of matched routes (#11062)Full Changelog:
v6.20.1...v6.21.0
v6.20.1
Compare Source
Date: 2023-12-01
Patch Changes
useResolvedPath
fix for splat routes due to a large number of applications that were relying on the buggy behavior (see #11052) (#11078)6.19.0
and6.20.0
. If you are upgrading from6.18.0
or earlier, you would not have been impacted by this fix.Full Changelog:
v6.20.0...v6.20.1
v6.20.0
Compare Source
Date: 2023-11-22
Minor Changes
PathParam
type from the public API (#10719)Patch Changes
v7_fetcherPersist
is enabled (#11044)resolveTo
path resolution in splat routes (#11045)getPathContributingMatches
UNSAFE_getPathContributingMatches
export from@remix-run/router
since we no longer need this in thereact-router
/react-router-dom
layersFull Changelog:
v6.19.0...v6.20.0
v6.19.0
Compare Source
Date: 2023-11-16
What's Changed
unstable_flushSync
APIThis release brings a new
unstable_flushSync
option to the imperative APIs (useSubmit
,useNavigate
,fetcher.submit
,fetcher.load
) to let users opt-into synchronous DOM updates for pending/optimistic UI.Minor Changes
unstable_flushSync
option touseNavigate
/useSubmit
/fetcher.load
/fetcher.submit
to opt-out ofReact.startTransition
and intoReactDOM.flushSync
for state updates (#11005)unstable_
prefix from theuseBlocker
hook as it's been in use for enough time that we are confident in the API (#10991)unstable_usePrompt
due to differences in how browsers handlewindow.confirm
that prevent React Router from guaranteeing consistent/correct behaviorPatch Changes
Fix
useActionData
so it returns proper contextual action data and not any action data in the tree (#11023)Fix bug in
useResolvedPath
that would causeuseResolvedPath(".")
in a splat route to lose the splat portion of the URL path. (#10983)"."
paths inside a splat route which incorrectly dropped the splat portion of the URL. If you are relative routing via"."
inside a splat route in your application you should double check that your logic is not relying on this buggy behavior and update accordingly.Fix issue where a changing fetcher
key
in auseFetcher
that remains mounted wasn't getting picked up (#11009)Fix
useFormAction
which was incorrectly inheriting the?index
query param from child routeaction
submissions (#11025)Fix
NavLink
active
logic whento
location has a trailing slash (#10734)Fix types so
unstable_usePrompt
can accept aBlockerFunction
in addition to aboolean
(#10991)Fix
relative="path"
bug where relative path calculations started from the full location pathname, instead of from the current contextual route pathname. (#11006)Full Changelog:
6.18.0...6.19.0
v6.18.0
Compare Source
Date: 2023-10-31
What's Changed
New Fetcher APIs
Per this RFC, we've introduced some new APIs that give you more granular control over your fetcher behaviors.
useFetcher({ key: string })
, which allows you to access the same fetcher instance from different components in your application without prop-drillinguseFetchers
so that they can be looked up bykey
Form
anduseSubmit
now support optionalnavigate
/fetcherKey
props/params to allow kicking off a fetcher submission under the hood with an optionally user-specifiedkey
<Form method="post" navigate={false} fetcherKey="my-key">
submit(data, { method: "post", navigate: false, fetcherKey: "my-key" })
useFetchers()
oruseFetcher({ key })
to look it up elsewherePersistence Future Flag (
future.v7_fetcherPersist
)Per the same RFC as above, we've introduced a new
future.v7_fetcherPersist
flag that allows you to opt-into the new fetcher persistence/cleanup behavior. Instead of being immediately cleaned up on unmount, fetchers will persist until they return to anidle
state. This makes pending/optimistic UI much easier in scenarios where the originating fetcher needs to unmount.useFetchers()
API was always supposed to only reflect in-flight fetcher information for pending/optimistic UI -- it was not intended to reflect fetcher data or hang onto fetchers after they returned to anidle
stateuseFetchers()
after completion - they served no purpose in there since you can access the data viauseFetcher().data
idle
stateuseFetchers
while in-flight so you can still access pending/optimistic data after unmountkey
, then it's result will be processed, even if the originating fetcher was unmountedMinor Changes
key
APIs andnavigate=false
options (#10960)future.v7_fetcherPersist
flag (#10962)matchPath
(#10768)Patch Changes
future
prop onBrowserRouter
,HashRouter
andMemoryRouter
so that it accepts aPartial<FutureConfig>
instead of requiring all flags to be included (#10962)router.getFetcher
/router.deleteFetcher
type definitions which incorrectly specifiedkey
as an optional parameter (#10960)Full Changelog:
6.17.0...6.18.0
v6.17.0
Compare Source
Date: 2023-10-16
What's Changed
View Transitions 🚀
We're excited to release experimental support for the View Transitions API in React Router! You can now trigger navigational DOM updates to be wrapped in
document.startViewTransition
to enable CSS animated transitions on SPA navigations in your application.The simplest approach to enabling a View Transition in your React Router app is via the new
<Link unstable_viewTransition>
prop. This will cause the navigation DOM update to be wrapped indocument.startViewTransition
which will enable transitions for the DOM update. Without any additional CSS styles, you'll get a basic cross-fade animation for your page.If you need to apply more fine-grained styles for your animations, you can leverage the
unstable_useViewTransitionState
hook which will tell you when a transition is in progress and you can use that to apply classes or styles:You can also use the
<NavLink unstable_viewTransition>
shorthand which will manage the hook usage for you and automatically add atransitioning
class to the<a>
during the transition:For an example usage of View Transitions, check out our fork of the awesome Astro Records demo.
For more information on using the View Transitions API, please refer to the Smooth and simple transitions with the View Transitions API guide from the Google Chrome team.
Minor Changes
Patch Changes
ScrollRestoration
whensessionStorage
is unavailable (#10848)RouterProvider
future
prop type to be aPartial<FutureConfig>
so that not all flags must be specified (#10900)ErrorResponse
type to avoid leaking internal field (#10876)Full Changelog:
6.16.0...6.17.0
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.