chore(deps): update renovate dependency scan (major) - #455
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/major-all
branch
from
January 18, 2026 22:35
9911055 to
bfe4b44
Compare
Contributor
Author
|
renovate
Bot
force-pushed
the
renovate/major-all
branch
12 times, most recently
from
January 24, 2026 18:20
32abae7 to
5a49748
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
7 times, most recently
from
February 2, 2026 07:47
57e882d to
061e0cb
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
9 times, most recently
from
February 9, 2026 22:24
9da5c5a to
9c5eeb2
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
12 times, most recently
from
February 25, 2026 16:23
7240c90 to
32bd8c7
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
5 times, most recently
from
March 4, 2026 02:12
067b54f to
ddc0944
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
10 times, most recently
from
March 11, 2026 04:17
5bb9dcf to
4131458
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
from
March 12, 2026 18:17
4131458 to
d9d4f89
Compare
renovate
Bot
force-pushed
the
renovate/major-all
branch
from
March 31, 2026 09:34
d9d4f89 to
7bccd37
Compare
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
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:
3.9.4→4.2.9^7.15.0→^8.0.0^1.0.0→^2.0.0^25.0.0→^29.0.0^15.0.0→^16.0.06.4.2→7.0.014.2.1→16.3.220.11.17→26.1.2v4→v729.7.0→30.4.1^2.4.3→^3.0.0^1.19.0→^2.0.0^1.19.0→^2.0.0^5.0.0→^6.0.0^16.0.0→^17.0.029.7.0→30.4.1^4.17.1→^5.0.0^4.19.2→^5.0.04.18.2→5.2.1^4.17.1→^5.0.0^10.0.0→^12.0.06.5.1→7.3.0v3→v4^16.0.0→^17.0.016.8.1→17.0.22.0.6→4.2.0^15.0.0→^17.0.06.0.0→7.0.110.3.0→11.8.0^10.0.0→^11.0.0^6.0.0→^7.0.0^8.0.0→^9.0.0^8.1.3→^9.0.020.11.0→24.18.1^1.9.4→^2.0.0^2.2.0→^3.0.018.2.0→19.2.818.2.0→19.2.86.22.0→7.18.27.0.0→9.0.1^2.0.0→^3.0.06.3.4→7.2.2^4.0.0→^5.0.0^5.0.0→^7.0.0^5.0.0→^7.0.05.3.3→7.0.2^5.0.0→^7.0.0^5.4.5→^7.0.0^5.0.0→^7.0.0^3.0.0→^4.0.0^9.0.0→^14.0.0^17.1.0→^18.0.0^17.1.0→^18.0.0Release Notes
apollographql/apollo-client (@apollo/client)
v4.2.9Compare Source
Patch Changes
#13364
2f383e7Thanks @atharv-sys32! - Fix a bug where GraphQL variable default values were not applied during cache reads when variables with defaults were explicitly set toundefined. This caused@include/@skipdirectives to throw "Invalid variable referenced" errors when the variable was passed asundefinedinstead of being omitted entirely.#13367
2b39cc8Thanks @jerelmiller! - Fix an issue where some@exportqueries would not react to cache updates when the fields keyed by exported variables were updated.v4.2.8Compare Source
Patch Changes
501a33bThanks @jerelmiller! - Prevent thesetTimeoutinconnectToDevtoolsthat shows the devtools suggestion from firing when the user agent does not match Chrome or Firefox. This check was previously done inside thesetTimeoutwhich meant the timer was scheduled for environments where we'd never show the message anyways. For test environments, this could cause flaky tests when thatsetTimeoutoutlived the tests and ran after any virtual DOM was torn down and removed.v4.2.7Compare Source
Patch Changes
538c906Thanks @jerelmiller! - Cleanup some unused internals. Please file an issue if you notice anything change.v4.2.6Compare Source
Patch Changes
#13315
a406cc9Thanks @fallintoplace! - Prevent relay multipart subscriptions from issuing a fetch request after serializing the request body fails.#13307
abd0781Thanks @wolfie! - Speed up cache writes by avoiding a full ASTvisitof every written field to detect@stream. The check now runs only when the result carries stream info, and only inspects the field node's own directives. As a result, fields that merely contain@streamon a nested field are no longer treated as streamed themselves and now overwrite existing lists like regular fields instead of merging chunk-wise.v4.2.5Compare Source
Patch Changes
bb75dd3Thanks @tpict! - ExportKeyArgsFunctionandRelayFieldPolicytypes from public entrypoints.v4.2.4Compare Source
Patch Changes
e4df809Thanks @jerelmiller! - Fixes an issue whereclient.readFragmentandclient.readQueryignored theoptimisticoption when passed in the options object.v4.2.3Compare Source
Patch Changes
66e9dfcThanks @jerelmiller! - Add support forgraphqlv17 as a valid peer dependency.v4.2.2Compare Source
Patch Changes
c207b88Thanks @audrius-savickas! - Preserve referential equality of masked data on refetch when the result is deeply equal to the previous result.v4.2.1Compare Source
Patch Changes
062ffe3Thanks @jerelmiller! - Fixes an issue whereuseLazyQuerywould not apply a changedpollIntervalbetween renders.v4.2.0Compare Source
Minor Changes
#13132
f3ce805Thanks @phryneas! - Introduce "classic" and "modern" method and hook signatures.Apollo Client 4.2 introduces two signature styles for methods and hooks. All signatures previously present are now "classic" signatures, and a new set of "modern" signatures are added alongside them.
Classic signatures are the default and are identical to the signatures before Apollo Client 4.2, preserving backward compatibility. Classic signatures still work with manually specified TypeScript generics (e.g.,
useSuspenseQuery<MyData>(...)). However, manually specifying generics has been discouraged for a long time—instead, we recommend usingTypedDocumentNodeto automatically infer types, which provides more accurate results without any manual annotations.Modern signatures automatically incorporate your declared
defaultOptionsinto return types, providing more accurate types. Modern signatures infer types from the document node and do not support manually passing generic type arguments; TypeScript will produce a type error if you attempt to do so.Methods and hooks automatically switch to modern signatures the moment any non-optional property is declared in
DeclareDefaultOptions. The switch happens across all methods and hooks globally:Users can also manually switch to modern signatures without declaring any
defaultOptions, for example when wanting accurate type inference without relying on globaldefaultOptions:Users can do a global
DeclareDefaultOptionstype augmentation and then manually switch back to "classic" for migration purposes:Note that this is not recommended for long-term use. When combined with
DeclareDefaultOptions, switching back to classic results in the same incorrect types as before Apollo Client 4.2—methods and hooks will not reflect thedefaultOptionsyou've declared.#13130
dd12231Thanks @jerelmiller! - Improve the accuracy ofclient.queryreturn type to better detect the currenterrorPolicy. Thedataproperty is no longer nullable when theerrorPolicyisnone. This makes it possible to remove theundefinedchecks or optional chaining in most cases.#13210
1f9a428Thanks @jerelmiller! - Add support for automatic event-based refetching, such as window focus.The
RefetchEventManagerclass handles automatic refetches in response to events. Apollo Client provides built-in sources for window focus and network reconnect aswindowFocusSourceandonlineSource.Event refetching is fully opt-in. Create and pass a
RefetchEventManagerinstance to theApolloClientconstructor to activate the event listeners.By default, all active queries refetch when the events fire. Queries can opt out per-event or disable all event refetches:
To enable per-query opt-in rather than opt-out, set
defaultOptions.watchQuery.refetchOntofalseand enable it per-query instead.When
defaultOptions.watchQuery.refetchOnand per-queryrefetchOnoptions are provided, the objects are merged together.Custom events
You can also add your own custom events that trigger refetches. Register your event name and payload type using TypeScript module augmentation, then provide a source function that returns an Observable. The source's emitted value becomes the event's
payload.Manually trigger an event refetch
Refetches can be triggered imperatively by calling
emitwith the event name and its payload (if any).Sourceless events
A source that has no automatic detection logic but still wants imperative
emitsupport can be declared astrue. Type the event asvoidto omit the payload argument.Note: Calling
emiton an event without a registered source will log a warning and result in a no-op.Custom handlers
When an event fires, the default handler calls
client.refetchQueries({ include: "active" })filtered by each query'srefetchOnsetting. You can override the handler for an event to add your own custom filtering. For example, to refetch all queries, includingstandbyqueries, define a handler for the event:Handlers must return either a
RefetchQueriesResultorvoid. Returningvoidskips refetching for the event.#13232
f1b541fThanks @jerelmiller! - Version bump torc.#13206
08fccabThanks @jerelmiller! - Extend thedefaultOptionstype-safety work toclient.mutateanduseMutation.The
errorPolicyoption now flows through to the result types for mutations in the same way it already does for queries:ApolloClient.MutateResult<TData, TErrorPolicy>mapserrorPolicyto the concrete shape ofdataanderror:"none"→{ data: TData; error?: never }"all"→{ data: TData | undefined; error?: ErrorLike }"ignore"→{ data: TData | undefined; error?: never }client.mutateanduseMutationpick up the declareddefaultOptions.mutate.errorPolicyand the expliciterrorPolicyon each call to narrow return types accordingly.useMutation.Result.erroris narrowed toundefinedwhenerrorPolicyis"ignore", sinceclient.mutatenever resolves with an error in that case.DeclareDefaultOptions.Mutatealready acceptederrorPolicy; the new behavior is that once you declare it, hook and method return types reflect it:Setting
errorPolicyon an individual call overrides the default for that call's return type.#13222
b93c172Thanks @jerelmiller! - Extend thedefaultOptionstype-safety work topreloadQuery(returned fromcreateQueryPreloader). Defaults declared inDeclareDefaultOptions.WatchQuerynow work withpreloadQueryto ensure thePreloadedQueryRef's data states are correctly set.#13132
f3ce805Thanks @phryneas! - Synchronize method and hook return types withdefaultOptions.Prior to this change, the following code snippet would always apply:
While these types are generally correct, if you were to set
errorPolicy: 'all'as a default option, the type ofresult.datafor the first query would remainTDatainstead of changing toTData | undefinedto match the runtime behavior.We are now enforcing that certain
defaultOptionstypes need to be registered globally. This means that if you want to useerrorPolicy: 'all'as a default option for a query, you will need to register its type like this:Once this type declaration is in place, the type of
result.datain the above example will correctly be changed toTData | undefined, reflecting the possibility that if an error occurs,datamight beundefined. Manually specifyinguseSuspenseQuery(MY_QUERY, { errorPolicy: "none" });changesresult.datatoTDatato reflect the local override.This change means that you will need to declare your default options types in order to use
defaultOptionswithApolloClient, otherwise you will see a TypeScript error.Without the type declaration, the following (previously valid) code will now error:
If you are creating multiple instances of Apollo Client with conflicting default options and you cannot register a single
defaultOptionsvalue as a result, you can relax the constraints by declaring those options as union types covering all values used by all clients. The properties can be required (to enforce them indefaultOptions) or optional (if some constructor calls won't pass a value):With this declaration, the
ApolloClientconstructor accepts any of those values indefaultOptions. The tradeoff is that hook and method return types become more generic. For example, callinguseSuspenseQuerywithout an expliciterrorPolicywill return a result typed as if all error policies are possible, since TypeScript can't know which specific value your instance uses at runtime.Note that making a property optional (
errorPolicy?:) is equivalent to adding the TypeScript default value ("none") to the union. SoerrorPolicy?: "all" | "ignore"has the same effect on return types aserrorPolicy: "none" | "all" | "ignore", because TypeScript assumes the option could also be absent (i.e.,"none").You can also use a partial union that only lists the values you actually use. For example, if you only ever use
"all"or"ignore", declareerrorPolicy: "all" | "ignore"(required) to keep the union narrow and avoid unused values broadening your signatures unnecessarily.Patch Changes
#13217
790f987Thanks @jerelmiller! - Fix the deprecation for the classic signatures for function overloads that rely on type inference from aTypedDocumentNode. The deprecation now only applies to classic signatures that provide explicit type arguments to encourage the use ofTypedDocumentNode.#13166
0537d97Thanks @jerelmiller! - Release changes in 4.1.5 and 4.1.6.[