3.8.0-rc.0
Minor Changes
-
#11058
89bf33c42Thanks @phryneas! - (Batch)HttpLink: PropagateAbortErrors to the user when a user-providedsignalis passed to the link. Previously, these links would swallow allAbortErrors, potentially causing queries and mutations to never resolve. As a result of this change, users are now expected to handleAbortErrors when passing in a user-providedsignal. -
#11040
125ef5b2aThanks @phryneas! -HttpLink/BatchHttpLink: Abort theAbortControllersignal more granularly.
Before this change, whenHttpLink/BatchHttpLinkcreated anAbortController
internally, the signal would always be.aborted after the request was completed. This could cause issues with Sentry Session Replay and Next.js App Router Cache invalidations, which just replayed the fetch with the same options - including the cancelledAbortSignal.With this change, the
AbortControllerwill only be.abort()ed by outside events,
not as a consequence of the request completing.
Patch Changes
-
#11053
c0ca70720Thanks @phryneas! - AddSuspenseCacheas a lazy hidden property on ApolloClient.
This means thatSuspenseCacheis now an implementation details of Apollo Client
and you no longer need to manually instantiate it and no longer need to pass it
intoApolloProvider.
Trying to instantiate aSuspenseCacheinstance in your code will now throw an
error.Migration:
-import { SuspenseCache } from '@apollo/client'; -const suspenseCache = new SuspenseCache(); -<ApolloProvider client={client} suspenseCache={suspenseCache} />; +<ApolloProvider client={client} />;