-
Notifications
You must be signed in to change notification settings - Fork 44
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
fix: update dependency @apollo/client to v3.13.1 (master) #2086
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/master-apollo-graphql-packages
base: master
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.
+63
−54
Conversation
This file contains 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
8176e88
to
36bd828
Compare
Blocked by: apollographql/apollo-client#9108 |
36bd828
to
9087c6d
Compare
dfd0034
to
47c8137
Compare
47c8137
to
b20c1bb
Compare
b20c1bb
to
ec90c6e
Compare
ec90c6e
to
507fa4d
Compare
507fa4d
to
75ac5f1
Compare
75ac5f1
to
11b6219
Compare
11b6219
to
f352b82
Compare
f352b82
to
386578d
Compare
386578d
to
114237b
Compare
114237b
to
1c538b1
Compare
1c538b1
to
41f7f5c
Compare
41f7f5c
to
2092575
Compare
c208f34
to
4a2ca55
Compare
4a2ca55
to
d0dbd02
Compare
d0dbd02
to
68bad19
Compare
68bad19
to
cf8a0a5
Compare
cf8a0a5
to
370a57c
Compare
370a57c
to
d075ecb
Compare
d075ecb
to
6ccde6a
Compare
6ccde6a
to
e44482d
Compare
e44482d
to
6c1553f
Compare
6c1553f
to
f562ccf
Compare
f562ccf
to
11c2e4a
Compare
11c2e4a
to
724be98
Compare
724be98
to
8ecdb2b
Compare
8ecdb2b
to
7da703d
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:
3.4.17
->3.13.1
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
apollographql/apollo-client (@apollo/client)
v3.13.1
Compare Source
Patch Changes
#12369
bdfc5b2
Thanks @phryneas! -ObervableQuery.refetch
: don't refetch withcache-and-network
, swich tonetwork-only
instead#12375
d3f8f13
Thanks @jerelmiller! - Export theUseSuspenseFragmentOptions
type.v3.13.0
Compare Source
Minor Changes
#12066
c01da5d
Thanks @jerelmiller! - Adds a newuseSuspenseFragment
hook.useSuspenseFragment
suspends untildata
is complete. It is a drop-in replacement foruseFragment
when you prefer to use Suspense to control the loading state of a fragment. See the documentation for more details.#12174
ba5cc33
Thanks @jerelmiller! - Ensure errors thrown in theonCompleted
callback fromuseMutation
don't callonError
.#12340
716d02e
Thanks @phryneas! - Deprecate theonCompleted
andonError
callbacks ofuseQuery
anduseLazyQuery
.For more context, please see the related issue on GitHub.
#12276
670f112
Thanks @Cellule! - Provide a more type-safe option for the previous data value passed toobservableQuery.updateQuery
. Using it could result in crashes at runtime as this callback could be called with partial data even though its type reported the value as a complete result.The
updateQuery
callback function is now called with a new type-safepreviousData
property and a newcomplete
property in the 2nd argument that determines whetherpreviousData
is a complete or partial result.As a result of this change, it is recommended to use the
previousData
property passed to the 2nd argument of the callback rather than using the previous data value from the first argument since that value is not type-safe. The first argument is now deprecated and will be removed in a future version of Apollo Client.#12174
ba5cc33
Thanks @jerelmiller! - Reject the mutation promise if errors are thrown in theonCompleted
callback ofuseMutation
.Patch Changes
#12276
670f112
Thanks @Cellule! - Fix the return type of theupdateQuery
function to allow forundefined
.updateQuery
had the ability to bail out of the update by returning a falsey value, but the return type enforced a query value.#12296
2422df2
Thanks @Cellule! - Deprecate optionignoreResults
inuseMutation
.Once this option is removed, existing code still using it might see increase in re-renders.
If you don't want to synchronize your component state with the mutation, please use
useApolloClient
to get your ApolloClient instance and callclient.mutate
directly.#12338
67c16c9
Thanks @phryneas! - In case of a multipart response (e.g. with@defer
), query deduplication willnow keep going until the final chunk has been received.
#12276
670f112
Thanks @Cellule! - Fix the type of thevariables
property passed as the 2nd argument to thesubscribeToMore
callback. This was previously reported as thevariables
type for the subscription itself, but is now properly typed as the queryvariables
.v3.12.11
Compare Source
Patch Changes
#12351
3da908b
Thanks @jerelmiller! - Fixes an issue where the wrongnetworkStatus
andloading
value was emitted fromobservableQuery
when callingfetchMore
with ano-cache
fetch policy. ThenetworkStatus
now properly reports asready
andloading
asfalse
after the result is returned.#12354
a24ef94
Thanks @phryneas! - Fix missingmain.d.cts
filev3.12.10
Compare Source
Patch Changes
#12341
f2bb0b9
Thanks @phryneas! -useReadQuery
/useQueryRefHandlers
: Fix a "hook order" warning that might be emitted in React 19 dev mode.#12342
219b26b
Thanks @phryneas! - Addgraphql-ws
^6.0.3
as a validpeerDependency
v3.12.9
Compare Source
Patch Changes
#12321
daa4f33
Thanks @jerelmiller! - Fix type ofextensions
inprotocolErrors
forApolloError
and theonError
link. According to the multipart HTTP subscription protocol, fatal tranport errors follow the GraphQL error format which requireextensions
to be a map as its value instead of an array.#12318
b17968b
Thanks @jerelmiller! - AllowRetryLink
to retry an operation when fatal transport-level errors are emitted from multipart subscriptions.v3.12.8
Compare Source
Patch Changes
#12292
3abd944
Thanks @phryneas! - Remove unused dependencyresponse-iterator
#12287
bf313a3
Thanks @phryneas! - Fixes an issue whereclient.watchFragment
/useFragment
with@includes
crashes when a separate cache update writes to the conditionally included fields.v3.12.7
Compare Source
Patch Changes
#12281
d638ec3
Thanks @jerelmiller! - Make fatal tranport-level errors from multipart subscriptions available to the error link with theprotocolErrors
property.#12281
d638ec3
Thanks @jerelmiller! - Fix the array type for theerrors
field on theApolloPayloadResult
type. This type was always in the shape of the GraphQL error format, per the multipart subscriptions protocol and never a plain string or a JavaScript error object.v3.12.6
Compare Source
Patch Changes
#12267
d57429d
Thanks @jerelmiller! - Maintain theTData
type when used withUnmasked
whenTData
is not a masked type generated from GraphQL Codegen.#12270
3601246
Thanks @jerelmiller! - Fix handling of tagged/branded primitive types when used as scalar values withUnmasked
.v3.12.5
Compare Source
Patch Changes
#12252
cb9cd4e
Thanks @jerelmiller! - Changes the default behavior of theMaybeMasked
type to preserve types unless otherwise specified. This change makes it easier to upgrade from older versions of the client where types could have unexpectedly changed in the application due to the default of trying to unwrap types into unmasked types. This change also fixes the compilation performance regression experienced when simply upgrading the client since types are now preserved by default.A new
mode
option has now been introduced to allow for the old behavior. See the next section on migrating if you wish to maintain the old default behavior after upgrading to this version.Migrating from <= v3.12.4
If you've adopted data masking and have opted in to using masked types by setting the
enabled
property totrue
, you can remove this configuration entirely:If you prefer to specify the behavior explicitly, change the property from
enabled: true
, tomode: "preserveTypes"
:If you rely on the default behavior in 3.12.4 or below and would like to continue to use unmasked types by default, set the
mode
tounmask
:v3.12.4
Compare Source
Patch Changes
4334d30
Thanks @charpeni! - Fix an issue withrefetchQueries
where comparingDocumentNode
s internally by references could lead to an unknown query, even though theDocumentNode
was indeed an active query—with a different reference.v3.12.3
Compare Source
Patch Changes
#12214
8bfee88
Thanks @phryneas! - Data masking: prevent infinite recursion ofContainsFragmentsRefs
type#12204
851deb0
Thanks @jerelmiller! - FixUnmasked
unwrapping tuple types into an array of their subtypes.#12204
851deb0
Thanks @jerelmiller! - EnsureMaybeMasked
does not try and unwrap types that contain index signatures.#12204
851deb0
Thanks @jerelmiller! - EnsureMaybeMasked
does not try to unwrap the type asUnmasked
if the type containsany
.v3.12.2
Compare Source
Patch Changes
84af347
Thanks @jerelmiller! - Update peer deps to allow for React 19 stable release.v3.12.1
Compare Source
Patch Changes
e1efe74
Thanks @phryneas! - Fix import extension in masking entry point.v3.12.0
Compare Source
Minor Changes
Data masking 🎭
#12042
1c0ecbf
Thanks @jerelmiller! - Introduces data masking in Apollo Client.Data masking enforces that only the fields requested by the query or fragment is available to that component. Data masking is best paired with colocated fragments.
To enable data masking in Apollo Client, set the
dataMasking
option totrue
.For detailed information on data masking, including how to incrementally adopt it in an existing applications, see the data masking documentation.
#12131
21c3f08
Thanks @jerelmiller! - Allownull
as a validfrom
value inuseFragment
.More Patch Changes
#12126
d10d702
Thanks @jerelmiller! - Maintain the existing document if its unchanged by the codemod and move to more naive whitespace formatting#12150
9ed1e1e
Thanks @jerelmiller! - Fix issue when usingUnmasked
with older versions of TypeScript when used with array fields.#12116
8ae6e4e
Thanks @jerelmiller! - Prevent field accessor warnings when using@unmask(mode: "migrate")
on objects that are passed intocache.identify
.#12120
6a98e76
Thanks @jerelmiller! - Provide a codemod that applies@unmask
to all named fragments for all operations and fragments.Learn how to use the codemod in the incremental adoption documentation.
#12134
cfaf4ef
Thanks @jerelmiller! - Fix issue where data went missing when an unmasked fragment in migrate mode selected fields that the parent did not.#12154
d933def
Thanks @phryneas! - Data masking types: handle overlapping nested array types and fragments on interface types.#12139
5a53e15
Thanks @phryneas! - Fix issue where masked data would sometimes get returned when the field was part of a child fragment from a fragment unmasked by the parent query.#12123
8422a30
Thanks @jerelmiller! - Warn when using data masking with "no-cache" operations.#12139
5a53e15
Thanks @phryneas! - Fix issue where the warning emitted by@unmask(mode: "migrate")
would trigger unnecessarily when the fragment was used alongside a masked fragment inside an inline fragment.#12114
1d4ce00
Thanks @jerelmiller! - Fix error when combining@unmask
and@defer
directives on a fragment spread when data masking is enabled.#12130
1e7d009
Thanks @jerelmiller! - Fix error thrown when applying unmask migrate mode warnings on interface types with selection sets that contain inline fragment conditions.#12152
78137ec
Thanks @phryneas! - Add a helper that will skip the TS unmasking alorithm when no fragments are present on type level#12126
d10d702
Thanks @jerelmiller! - Ensure documents unchanged by the codemod are left untouched.#12133
a6ece37
Thanks @jerelmiller! - Ensurenull
is retained in nullable types when unmasking a type with theUnmasked
helper type.#12139
5a53e15
Thanks @phryneas! - Fix issue that threw errors when masking partial data with@unmask(mode: "migrate")
.v3.11.10
Compare Source
Patch Changes
1765668
Thanks @mgmolisani! - Fixed a bug when evaluating the devtools flag with the new syntaxdevtools.enabled
that could result totrue
when explicitly set tofalse
.v3.11.9
Compare Source
Patch Changes
a3f95c6
Thanks @jerelmiller! - Fix an issue where errors returned from afetchMore
call from a Suspense hook would cause a Suspense boundary to be shown indefinitely.v3.11.8
Compare Source
Patch Changes
35cf186
Thanks @phryneas! - Fixed a bug where incorrect object access in some Safari extensions could cause a crash.v3.11.7
Compare Source
Patch Changes
e471cef
Thanks @jerelmiller! - Fixes a regression from where passing an invalid identifier tofrom
inuseFragment
would result in the warningTypeError: Cannot read properties of undefined (reading '__typename')
.v3.11.6
Compare Source
Patch Changes
#12049
9c26892
Thanks @phryneas and @maciesielka! - Fix a bug whereuseFragment
did not re-render as expected#12044
04462a2
Thanks @DoctorJohn! - Cache theuseSubscription
hook'srestart
function definition between re-renders.v3.11.5
Compare Source
Patch Changes
#12027
eb3e21b
Thanks @JavaScriptBach! - TypeMutationResult.reset
as an arrow function#12020
82d8cb4
Thanks @jerelmiller! - Better conform to Rules of React by avoiding write of ref in render foruseFragment
.v3.11.4
Compare Source
Patch Changes
#11994
41b17e5
Thanks @jerelmiller! - Update theModifier
function type to allowcache.modify
to return deeply partial data.#11989
e609156
Thanks @phryneas! - Fix a potential crash when callingclearStore
while a query was running.Previously, calling
client.clearStore()
while a query was running had one of these results:useQuery
would stay in aloading: true
state.useLazyQuery
would stay in aloading: true
state, but also crash with a"Cannot read property 'data' of undefined"
error.Now, in both cases, the hook will enter an error state with a
networkError
, and the promise returned by theuseLazyQuery
execute
function will return a result in an error state.#11994
41b17e5
Thanks @jerelmiller! - Prevent accidental distribution oncache.modify
field modifiers when a field is a union type array.v3.11.3
Compare Source
Patch Changes
#11984
5db1659
Thanks @jerelmiller! - Fix an issue where multiple fetches with results that returned errors would sometimes set thedata
property with anerrorPolicy
ofnone
.#11974
c95848e
Thanks @jerelmiller! - Fix an issue wherefetchMore
would write its result data to the cache when using it with ano-cache
fetch policy.#11974
c95848e
Thanks @jerelmiller! - Fix an issue where executingfetchMore
with ano-cache
fetch policy could sometimes result in multiple network requests.#11974
c95848e
Thanks @jerelmiller! -Potentially disruptive change
When calling
fetchMore
with a query that has ano-cache
fetch policy,fetchMore
will now throw if anupdateQuery
function is not provided. This provides a mechanism to merge the results from thefetchMore
call with the query's previous result.v3.11.2
Compare Source
Patch Changes
38c0a2c
Thanks @jerelmiller! - Fix missinggetServerSnapshot
error when usinguseSubscription
on the server.v3.11.1
Compare Source
Patch Changes
#11969
061cab6
Thanks @jerelmiller! - Remove check forwindow.__APOLLO_CLIENT__
when determining whether to connect to Apollo Client Devtools whenconnectToDevtools
ordevtools.enabled
is not specified. This now simply checks to see if the application is in development mode.#11971
ecf77f6
Thanks @jerelmiller! - Prevent thesetTimeout
for suggesting devtools from running in non-browser environments.v3.11.0
Compare Source
Potentially Breaking Fixes
#11789
5793301
Thanks @phryneas! - Changes usages of theGraphQLError
type toGraphQLFormattedError
.This was a type bug - these errors were never
GraphQLError
instancesto begin with, and the
GraphQLError
class has additional properties that cannever be correctly rehydrated from a GraphQL result.
The correct type to use here is
GraphQLFormattedError
.Similarly, please ensure to use the type
FormattedExecutionResult
instead of
ExecutionResult
- the non-"Formatted" versions of these typesare for use on the server only, but don't get transported over the network.
#11626
228429a
Thanks @phryneas! - CallnextFetchPolicy
with "variables-changed" even if there is afetchPolicy
specified.Previously this would only be called when the current
fetchPolicy
was equal to thefetchPolicy
option or the option was not specified. If you usenextFetchPolicy
as a function, expect to see this function called more often.Due to this bug, this also meant that the
fetchPolicy
might be reset to the initialfetchPolicy
, even when you specified anextFetchPolicy
function. If you previously relied on this behavior, you will need to update yournextFetchPolicy
callback function to implement this resetting behavior.As an example, if your code looked like the following:
Update your function to the following to reimplement the resetting behavior:
Minor Changes
#11923
d88c7f8
Thanks @jerelmiller! - Add support forsubscribeToMore
function touseQueryRefHandlers
.#11854
3812800
Thanks @jcostello-atlassian! - Support extensions in useSubscription#11923
d88c7f8
Thanks @jerelmiller! - Add support forsubscribeToMore
function touseLoadableQuery
.#11863
98e44f7
Thanks @phryneas! - ReimplementuseSubscription
to fix rules of React violations.#11869
a69327c
Thanks @phryneas! - Rewrite big parts ofuseQuery
anduseLazyQuery
to be more compliant with the Rules of React and React Compiler#11936
1b23337
Thanks @jerelmiller! - Add the ability to specify a name for the client instance for use with Apollo Client Devtools. This is useful when instantiating multiple clients to identify the client instance more easily. This deprecates theconnectToDevtools
option in favor of a newdevtools
configuration.This option is backwards-compatible with
connectToDevtools
and will be used in the absense of adevtools
option.#11923
d88c7f8
Thanks @jerelmiller! - Add support forsubscribeToMore
function touseBackgroundQuery
.#11930
a768575
Thanks @jerelmiller! - Deprecates experimental schema testing utilities introduced in 3.10 in favor of recommending@apollo/graphql-testing-library
.Patch Changes
#11951
0de03af
Thanks @phryneas! - add React 19 RC topeerDependencies
#11927
2941824
Thanks @phryneas! - Addrestart
function touseSubscription
.#11949
4528918
Thanks @alessbell! - Remove deprecatedwatchFragment
option,canonizeResults
#11937
78332be
Thanks @phryneas! -createSchemaFetch
: simulate serialized errors instead of anApolloError
instance#11902
96422ce
Thanks @phryneas! - Addcause
field toApolloError
.#11806
8df6013
Thanks @phryneas! - MockLink: add query default variables if not specified in mock request#11926
3dd6432
Thanks @phryneas! -watchFragment
: forward additional options todiffOptions
#11946
7d833b8
Thanks @jerelmiller! - Fix issue where mutations were not accessible by Apollo Client Devtools in 3.11.0-rc.0.#11944
8f3d7eb
Thanks @sneyderdev! - AllowIgnoreModifier
to be returned from aoptimisticResponse
function when inferring from aTypedDocumentNode
when used with a generic argument.#11954
4a6e86a
Thanks @phryneas! - Document (and deprecate) the previously undocumentederrors
property on theuseQuery
QueryResult
type.#11719
09a6677
Thanks @phryneas! - Allow wrappingcreateQueryPreloader
#11921
70406bf
Thanks @phryneas! - addignoreResults
option touseSubscription
v3.10.8
Compare Source
Patch Changes
1f0460a
Thanks @jerelmiller! - Allowundefined
to be returned from acache.modify
modifier function when a generic type argument is used.v3.10.7
Compare Source
Patch Changes
#11901
10a8c0a
Thanks @phryneas! - updatecanUseLayoutEffect
check to also allow for layout effects in React Native#11861
1aed0e8
Thanks @henryqdineen! - Defend against non-serializable params ininvariantWrappers
#11905
29755da
Thanks @phryneas! - Add.d.cts
files for cjs bundles#11906
d104759
Thanks @phryneas! - chore: update TypeScript to 5.5v3.10.6
Compare Source
Patch Changes
f745558
Thanks @phryneas! -useMutation
: useuseIsomorphicLayoutEffect
instead ofuseLayoutEffect
v3.10.5
Compare Source
Patch Changes
#11888
7fb7939
Thanks @phryneas! - switchuseRenderGuard
to an approach not accessing React's internals#11511
6536369
Thanks @phryneas! -useLoadableQuery
: ensure thatloadQuery
is updated if the ApolloClient instance changes#11860
8740f19
Thanks @alessbell! - Fixes #11849 by reevaluatingwindow.fetch
each timeBatchHttpLink
uses it, if not configured viaoptions.fetch
. Takes the same approach as PR #8603 which fixed the same issue inHttpLink
.#11852
d502a69
Thanks @phryneas! - Fix a bug where calling theuseMutation
reset
function would point the hook to an outdatedclient
reference.#11329
3d164ea
Thanks @PaLy! - Fix graphQLErrors in Error Link if networkError.result is an empty string#11852
d502a69
Thanks @phryneas! - Prevent writing to a ref in render inuseMutation
.As a result, you might encounter problems in the future if you call the mutation's
execute
function during render. Please note that this was never supported behavior, and we strongly recommend against it.#11848
ad63924
Thanks @phryneas! - Ensure covariant behavior:MockedResponse<X,Y>
should be assignable toMockedResponse
#11851
45c47be
Thanks @phryneas! - Avoid usage of useRef in useInternalState to prevent ref access in render.#11877
634d91a
Thanks @phryneas! - Add missing name to tuple member (fix TS5084)#11851
45c47be
Thanks @phryneas! - Fix a bug whereuseLazyQuery
would not pick up a client change.v3.10.4
Compare Source
Patch Changes
#11838
8475346
Thanks @alex-kinokon! - Don’t prompt for DevTools installation for browser extension page#11839
6481fe1
Thanks @jerelmiller! - Fix a regression in 3.9.5 where a merge function that returned an incomplete result would not allow the client to refetch in order to fulfill the query.#11844
86984f2
Thanks @jerelmiller! - Honor the@nonreactive
directive when usingcache.watchFragment
or theuseFragment
hook to avoid rerendering when using these directives.#11824
47ad806
Thanks @phryneas! - Create brandedQueryRef
type without exposed properties.This change deprecates
QueryReference
in favor of aQueryRef
type that doesn't expose any properties.This change also updates
preloadQuery
to return a newPreloadedQueryRef
type, which exposes thetoPromise
function as it does today. This means that query refs produced byuseBackgroundQuery
anduseLoadableQuery
now returnQueryRef
types that do not have access to atoPromise
function, which was never meant to be used in combination with these hooks.While we tend to avoid any types of breaking changes in patch releases as this, this change was necessary to support an upcoming version of the React Server Component integration, which needed to omit the
toPromise
function that would otherwise have broken at runtime.Note that this is a TypeScript-only change. At runtime,
toPromise
is still present on all queryRefs currently created by this package - but we strongly want to discourage you from accessing it in all cases except for thePreloadedQueryRef
use case.Migration is as simple as replacing all references to
QueryReference
withQueryRef
, so it should be possible to do this with a search & replace in most code bases:#11845
4c5c820
Thanks @jerelmiller! - Remove@nonreactive
directives from queries passed toMockLink
to ensure they are properly matched.#11837
dff15b1
Thanks @jerelmiller! - Fix an issue where a polled query created in React sConfiguration
📅 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 these updates again.
This PR was generated by Mend Renovate. View the repository job log.