[Snyk] Upgrade @apollo/client from 3.3.19 to 3.10.8 #1552
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.
Snyk has created this PR to upgrade @apollo/client from 3.3.19 to 3.10.8.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
The recommended version is 241 versions ahead of your current version.
The recommended version was released on a month ago.
Issues fixed by the recommended upgrade:
SNYK-JS-APOLLOCLIENT-1085706
Release notes
Package name: @apollo/client
Patch Changes
1f0460a
Thanks @ jerelmiller! - Allowundefined
to be returned from acache.modify
modifier function when a generic type argument is used.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.5Patch Changes
f745558
Thanks @ phryneas! -useMutation
: useuseIsomorphicLayoutEffect
instead ofuseLayoutEffect
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.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:+import { QueryRef } from '@ apollo/client'
- function Component({ queryRef }: { queryRef: QueryReference<TData> }) {
+ function Component({ queryRef }: { queryRef: QueryRef<TData> }) {
// ...
}
#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 strict mode may not stop polling after the component unmounts while using thecache-and-network
fetch policy.Important
Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information: