Snyk has created this PR to upgrade @apollo/client from 3.8.7 to 3.10.4.
:information_source: 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 **33 versions** ahead of your current version.
- The recommended version was released on **21 days ago**.
Release notes Package name: @apollo/client
#118396481fe1 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.
#1184486984f2 Thanks @ jerelmiller! - Honor the @ nonreactive directive when using cache.watchFragment or the useFragment hook to avoid rerendering when using these directives.
This change deprecates QueryReference in favor of a QueryRef type that doesn't expose any properties.
This change also updates preloadQuery to return a new PreloadedQueryRef type, which exposes the toPromise function as it does today. This means that query refs produced by useBackgroundQuery and useLoadableQuery now return QueryRef types that do not have access to a toPromise 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 the PreloadedQueryRef use case.
Migration is as simple as replacing all references to QueryReference with QueryRef, so it should be possible to do this with a search & replace in most code bases:
-import { QueryReference } from '@ apollo/client'+import { QueryRef } from '@ apollo/client'- function Component({ queryRef }: { queryRef: QueryReference<TData> }) {+ function Component({ queryRef }: { queryRef: QueryRef<TData> }) {
// ...
}
#118454c5c820 Thanks @ jerelmiller! - Remove @ nonreactive directives from queries passed to MockLink to ensure they are properly matched.
#11837dff15b1 Thanks @ jerelmiller! - Fix an issue where a polled query created in React strict mode may not stop polling after the component unmounts while using the cache-and-network fetch policy.
#118212675d3c Thanks @ jerelmiller! - Fix a regression where rerendering a component with useBackgroundQuery would recreate the queryRef instance when used with React's strict mode.
#118212675d3c Thanks @ jerelmiller! - Revert the change introduced in 3.9.10 via #11738 that disposed of queryRefs synchronously. This change caused too many issues with strict mode.
#117925876c35 Thanks @ phryneas! - AutoCleanedCache: only schedule batched cache cleanup if the cache is full (fixes #11790)
#117991aca7ed Thanks @ phryneas! - RenderPromises: use canonicalStringify to serialize variables to ensure query deduplication is properly applied even when variables are specified in a different order.
#1175480d2ba5 Thanks @ alessbell! - Export WatchFragmentOptions and WatchFragmentResult from main entrypoint and fix bug where this wasn't bound to the watchFragment method on ApolloClient.
#1175480d2ba5 Thanks @ alessbell! - Export WatchFragmentOptions and WatchFragmentResult from main entrypoint and fix bug where this wasn't bound to the watchFragment method on ApolloClient.
#1176904132af Thanks @ jerelmiller! - Fix an issue where using skipToken or the skip option with useSuspenseQuery in React's strict mode would perform a network request.
#11738b1a5eb8 Thanks @ jerelmiller! - Fix an issue where rerendering useBackgroundQuery after the queryRef had been disposed, either via the auto dispose timeout or by unmounting useReadQuery, would cause the queryRef to be recreated potentially resulting in another network request.
#11738b1a5eb8 Thanks @ jerelmiller! - Allow queryRefs to be disposed of synchronously when a suspense hook unmounts. This prevents some situations where using a suspense hook with the same query/variables as the disposed queryRef accidentally used the disposed queryRef rather than creating a new instance.
#11670cc5c03b Thanks @ phryneas! - Bail out of executeSubSelectedArray calls if the array has 0 elements.
#11696466ef82 Thanks @ PiR1! - Immediately dispose of the queryRef if useBackgroundQuery unmounts before the auto dispose timeout kicks in.
3.9.8 - 2024-03-20
3.9.7 - 2024-03-13
3.9.6 - 2024-03-06
3.9.5 - 2024-02-15
3.9.4 - 2024-02-07
3.9.3 - 2024-02-06
3.9.2 - 2024-02-01
3.9.1 - 2024-01-31
3.9.0 - 2024-01-30
3.9.0-rc.1 - 2024-01-18
3.9.0-rc.0 - 2024-01-17
3.9.0-beta.1 - 2023-12-21
3.9.0-beta.0 - 2023-12-18
3.9.0-alpha.5 - 2023-12-05
3.9.0-alpha.4 - 2023-11-08
3.9.0-alpha.3 - 2023-11-02
3.9.0-alpha.2 - 2023-10-11
3.9.0-alpha.1 - 2023-09-21
3.9.0-alpha.0 - 2023-09-19
3.8.10 - 2024-01-18
3.8.9 - 2024-01-09
3.8.8 - 2023-11-29
3.8.7 - 2023-11-02
from @apollo/client GitHub release notes
---
> [!IMPORTANT]
>
> - Check the changes in this PR to ensure they won't cause issues with your project.
> - This PR was automatically created by Snyk using the credentials of a real user.
---
**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:**
> - 🧐 [View latest project report](https://app.snyk.io/org/etherspot/project/0d28273d-6839-46a2-8813-9aad7522e3da?utm_source=github&utm_medium=referral&page=upgrade-pr)
> - 📜 [Customise PR templates](https://docs.snyk.io/scan-using-snyk/pull-requests/snyk-fix-pull-or-merge-requests/customize-pr-templates)
> - 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/etherspot/project/0d28273d-6839-46a2-8813-9aad7522e3da/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr)
> - 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/etherspot/project/0d28273d-6839-46a2-8813-9aad7522e3da/settings/integration?pkg=&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades)
This PR was automatically created by Snyk using the credentials of a real user.
![snyk-top-banner](https://github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123)
Snyk has created this PR to upgrade @apollo/client from 3.8.7 to 3.10.4.
:information_source: 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 **33 versions** ahead of your current version. - The recommended version was released on **21 days ago**.
Release notes
Package name: @apollo/client
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 strict mode may not stop polling after the component unmounts while using thecache-and-network
fetch policy.Patch Changes
#11811
d67d7f9
Thanks @ phryneas! - Adjust some types for React 19 compat#11834
7d8aad4
Thanks @ psamim! - Fix error "Cannot convert object to primitive value"Patch Changes
#11821
2675d3c
Thanks @ jerelmiller! - Fix a regression where rerendering a component withuseBackgroundQuery
would recreate thequeryRef
instance when used with React's strict mode.#11821
2675d3c
Thanks @ jerelmiller! - Revert the change introduced in3.9.10 via #11738 that disposed of queryRefs synchronously. This change caused too many issues with strict mode.
Patch Changes
#11792
5876c35
Thanks @ phryneas! - AutoCleanedCache: only schedule batched cache cleanup if the cache is full (fixes #11790)#11799
1aca7ed
Thanks @ phryneas! -RenderPromises
: usecanonicalStringify
to serializevariables
to ensure query deduplication is properly applied even whenvariables
are specified in a different order.#11803
bf9dd17
Thanks @ phryneas! - Update therehackt
dependency to^0.1.0
#11756
60592e9
Thanks @ henryqdineen! - Fix operation.setContext() typeMinor Changes
#11605
e2dd4c9
Thanks @ alessbell! - AddscreateMockFetch
utility for integration testing that includes the link chain#11760
acd1982
Thanks @ alessbell! -createTestSchema
now uses graphql-toolsmergeResolvers
to merge resolvers instead of a shallow merge.#11764
f046aa9
Thanks @ alessbell! - RenamecreateProxiedSchema
tocreateTestSchema
andcreateMockFetch
tocreateSchemaFetch
.#11777
5dfc79f
Thanks @ alessbell! - CallcreateMockSchema
insidecreateTestSchema
.#11774
2583488
Thanks @ alessbell! - Add ability to set min and max delay increateSchemaFetch
#11605
e2dd4c9
Thanks @ alessbell! - Adds proxiedSchema and createMockSchema testing utilities#11465
7623da7
Thanks @ alessbell! - AddwatchFragment
method to the cache and expose it on ApolloClient, refactoruseFragment
usingwatchFragment
.#11743
78891f9
Thanks @ jerelmiller! - Remove alpha designation forqueryRef.toPromise()
to stabilize the API.#11743
78891f9
Thanks @ jerelmiller! - Remove alpha designation forcreateQueryPreloader
to stabilize the API.#11783
440563a
Thanks @ alessbell! - Moves new testing utilities to their own entrypoint,testing/experimental
Patch Changes
#11757
9825295
Thanks @ phryneas! - AdjustuseReadQuery
wrapper logic to work with transported objects.#11771
e72cbba
Thanks @ phryneas! - WrapuseQueryRefHandlers
inwrapHook
.#11754
80d2ba5
Thanks @ alessbell! - ExportWatchFragmentOptions
andWatchFragmentResult
from main entrypoint and fix bug wherethis
wasn't bound to thewatchFragment
method onApolloClient
.Minor Changes
#11760
acd1982
Thanks @ alessbell! -createTestSchema
now uses graphql-toolsmergeResolvers
to merge resolvers instead of a shallow merge.#11764
f046aa9
Thanks @ alessbell! - RenamecreateProxiedSchema
tocreateTestSchema
andcreateMockFetch
tocreateSchemaFetch
.#11777
5dfc79f
Thanks @ alessbell! - CallcreateMockSchema
insidecreateTestSchema
.#11774
2583488
Thanks @ alessbell! - Add ability to set min and max delay increateSchemaFetch
#11783
440563a
Thanks @ alessbell! - Moves new testing utilities to their own entrypoint,testing/experimental
Patch Changes
#11757
9825295
Thanks @ phryneas! - AdjustuseReadQuery
wrapper logic to work with transported objects.#11771
e72cbba
Thanks @ phryneas! - WrapuseQueryRefHandlers
inwrapHook
.#11754
80d2ba5
Thanks @ alessbell! - ExportWatchFragmentOptions
andWatchFragmentResult
from main entrypoint and fix bug wherethis
wasn't bound to thewatchFragment
method onApolloClient
.Minor Changes
#11605
e2dd4c9
Thanks @ alessbell! - AddscreateMockFetch
utility for integration testing that includes the link chain#11605
e2dd4c9
Thanks @ alessbell! - Adds proxiedSchema and createMockSchema testing utilities#11743
78891f9
Thanks @ jerelmiller! - Remove alpha designation forqueryRef.toPromise()
to stabilize the API.#11743
78891f9
Thanks @ jerelmiller! - Remove alpha designation forcreateQueryPreloader
to stabilize the API.Patch Changes
04132af
Thanks @ jerelmiller! - Fix an issue where usingskipToken
or theskip
option withuseSuspenseQuery
in React's strict mode would perform a network request.Patch Changes
#11738
b1a5eb8
Thanks @ jerelmiller! - Fix an issue where rerenderinguseBackgroundQuery
after thequeryRef
had been disposed, either via the auto dispose timeout or by unmountinguseReadQuery
, would cause thequeryRef
to be recreated potentially resulting in another network request.#11738
b1a5eb8
Thanks @ jerelmiller! - Allow queryRefs to be disposed of synchronously when a suspense hook unmounts. This prevents some situations where using a suspense hook with the same query/variables as the disposed queryRef accidentally used the disposed queryRef rather than creating a new instance.#11670
cc5c03b
Thanks @ phryneas! - Bail out ofexecuteSubSelectedArray
calls if the array has 0 elements.Patch Changes
466ef82
Thanks @ PiR1! - Immediately dispose of thequeryRef
ifuseBackgroundQuery
unmounts before the auto dispose timeout kicks in.