Skip to content
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

chore(deps): Bump @apollo/client from 3.5.10 to 3.6.1 in /web/ui #88

Merged
merged 1 commit into from
May 3, 2022

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github May 1, 2022

Bumps @apollo/client from 3.5.10 to 3.6.1.

Release notes

Sourced from @​apollo/client's releases.

v3.6.1

What's Changed

New Contributors

Full Changelog: apollographql/apollo-client@v3.6.0...v3.6.1

3.6.0

Note: for the most up-to-date version of this information, see CHANGELOG.md

Apollo Client 3.6.0 (2022-04-26)

Potentially disruptive changes

  • Calling fetchMore for queries using the cache-and-network or network-only fetch policies will no longer trigger additional network requests when cache results are complete. Instead, those complete cache results will be delivered as if using the cache-first fetch policy. @​benjamn in #9504

  • Reimplement useQuery and useLazyQuery to use the proposed useSyncExternalStore API from React 18. @​brainkim and @​benjamn in #8785 and #9596

  • Fixed bug where the useLazyQuery execution function would always use the refetch method of ObservableQuery, instead of properly reapplying the current fetchPolicy using the reobserve method. @​benjamn in #9564

    Since this reobserve method is useful and used internally, we have now exposed it as use[Lazy]Query(...).reobserve (which optionally takes a Partial<WatchQueryOptions> of new options), to supplement the existing refetch method. Note that reobserve permanently updates the variables and other options of the ObservableQuery, unlike refetch({ ...variables }), which does not save those variables.

  • The internal use of options.fetchBlockingPromise by useQuery and useLazyQuery may slightly delay the delivery of network results, compared to previous versions of Apollo Client. Since network results are already delivered asynchronously, these timing differences should not be disruptive in most cases. Nevertheless, please open an issue if the timing differences cause problems for your applications. @​benjamn in #9599

React 18

In both its peerDependencies and its internal implementation, Apollo Client v3.6 should no longer prevent you from updating to React 18 in your applications.

Internally, we have refactored useQuery and useLazyQuery to be implemented in terms of React's new (shimmable) useSyncExternalStore hook, demonstrating Apollo Client can serve as an external store with a referentially stable, synchronous API, as needed by React.

As part of this refactoring, we also improved the behavior of useQuery and useLazyQuery when used in <React.StrictMode>, which double-renders components in development. While this double-rendering always results in calling useQuery twice, forcing Apollo Client to create and then discard an unnecessary ObservableQuery object, we now have multiple defenses in place against executing any network queries for the unused ObservableQuery objects.

In upcoming v3.6.x and v3.7 (beta) releases, we will be completely overhauling our server-side rendering utilities (getDataFromTree et al.), and introducing suspenseful versions of our hooks, to take full advantage of the new patterns React 18+ enables for data management libraries like Apollo Client.

Improvements

... (truncated)

Changelog

Sourced from @​apollo/client's changelog.

Apollo Client 3.6.1 (2022-04-28)

Bug Fixes

  • Remove recently-added, internal fetchBlockingPromise option from the WatchQueryOptions interface, due to regressions. @​benjamn in #9504

Apollo Client 3.6.0 (2022-04-26)

Potentially disruptive changes

  • Calling fetchMore for queries using the cache-and-network or network-only fetch policies will no longer trigger additional network requests when cache results are complete. Instead, those complete cache results will be delivered as if using the cache-first fetch policy. @​benjamn in #9504

  • Reimplement useQuery and useLazyQuery to use the proposed useSyncExternalStore API from React 18. @​brainkim and @​benjamn in #8785 and #9596

  • Fixed bug where the useLazyQuery execution function would always use the refetch method of ObservableQuery, instead of properly reapplying the current fetchPolicy using the reobserve method. @​benjamn in #9564

    Since this reobserve method is useful and used internally, we have now exposed it as use[Lazy]Query(...).reobserve (which optionally takes a Partial<WatchQueryOptions> of new options), to supplement the existing refetch method. Note that reobserve permanently updates the variables and other options of the ObservableQuery, unlike refetch({ ...variables }), which does not save those variables.

  • The internal use of options.fetchBlockingPromise by useQuery and useLazyQuery may slightly delay the delivery of network results, compared to previous versions of Apollo Client. Since network results are already delivered asynchronously, these timing differences should not be disruptive in most cases. Nevertheless, please open an issue if the timing differences are a problem for you (and you have no easy workaround). @​benjamn in #9599

React 18

In both its peerDependencies and its internal implementation, Apollo Client v3.6 should no longer prevent you from updating to React 18 in your applications.

Internally, we have refactored useQuery and useLazyQuery to be implemented in terms of React's new (shimmable) useSyncExternalStore hook, demonstrating Apollo Client can serve as an external store with a referentially stable, synchronous API, as needed by React.

As part of this refactoring, we also improved the behavior of useQuery and useLazyQuery when used in <React.StrictMode>, which double-renders components in development. While this double-rendering always results in calling useQuery twice, forcing Apollo Client to create and then discard an unnecessary ObservableQuery object, we now have multiple defenses in place against executing any network queries for the unused ObservableQuery objects.

In upcoming v3.6.x and v3.7 (beta) releases, we will be completely overhauling our server-side rendering utilities (getDataFromTree et al.), and introducing suspenseful versions of our hooks, to take full advantage of the new patterns React 18+ enables for data management libraries like Apollo Client.

Improvements

  • Allow BatchLink to cancel queued and in-flight operations. @​PowerKiKi and @​benjamn in #9248

  • Add GraphQLWsLink in @apollo/client/link/subscriptions. This link is similar to the existing WebSocketLink in @apollo/client/link/ws, but uses the newer graphql-ws package and protocol instead of the older subscriptions-transport-ws implementation. This functionality was technically first released in @apollo/[email protected], but semantically belongs in the 3.6.0 minor version. @​glasser in #9369

  • Allow passing defaultOptions to useQuery to avoid clobbering/resetting existing options when useQuery is called repeatedly. @​benjamn in #9563, superseding #9223

  • Provide additional context to nextFetchPolicy functions to assist with fetchPolicy transitions. More details can be found in the nextFetchPolicy documentation. @​benjamn in #9222

  • Remove nagging deprecation warning about passing an options.updateQuery function to fetchMore.

... (truncated)

Commits
  • 8389767 Bump @​apollo/client npm version to 3.6.1.
  • dfec5aa Revert "Remove --tag next from npm publish command on main branch."
  • c7f268d Merge pull request #9636 from apollographql/issue-9632-remove-fetchBlockingPr...
  • b238937 Mention PR #9636 in CHANGELOG.md.
  • 1ef463c Remove fetchBlockingPromise parameter from reobserve, too.
  • da79d21 Fully remove usage of fetchBlockingPromise for now.
  • cf9a7ab Move fetchBlockingPromise from WatchQueryOptions to reobserve parameter.
  • 7530f1b Merge pull request #9628 from apollographql/roadmap-update
  • 6a9bd55 Merge branch 'main' into roadmap-update
  • 50c3c81 changes the way the parser filters the array of definitions
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [@apollo/client](https://github.com/apollographql/apollo-client) from 3.5.10 to 3.6.1.
- [Release notes](https://github.com/apollographql/apollo-client/releases)
- [Changelog](https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md)
- [Commits](apollographql/apollo-client@v3.5.10...v3.6.1)

---
updated-dependencies:
- dependency-name: "@apollo/client"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot requested a review from 42atomys as a code owner May 1, 2022 15:14
@dependabot dependabot bot added aspect/depencencies 📦️ Concerns dependencies of the project aspect/interface 🕹 Concerns end-users' experience with the software domain/obvious 🟩 Represents the "known knowns" issue. It's Obviously state/triage 🚦 Has not been triaged & therefore, not ready for work labels May 1, 2022
@42atomys 42atomys merged commit 72ea129 into main May 3, 2022
@42atomys 42atomys deleted the dependabot/npm_and_yarn/web/ui/apollo/client-3.6.1 branch May 3, 2022 11:34
42atomys pushed a commit that referenced this pull request Nov 12, 2022
Bumps [@apollo/client](https://github.com/apollographql/apollo-client) from 3.5.10 to 3.6.1.
- [Release notes](https://github.com/apollographql/apollo-client/releases)
- [Changelog](https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md)
- [Commits](apollographql/apollo-client@v3.5.10...v3.6.1)

---
updated-dependencies:
- dependency-name: "@apollo/client"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
aspect/depencencies 📦️ Concerns dependencies of the project aspect/interface 🕹 Concerns end-users' experience with the software domain/obvious 🟩 Represents the "known knowns" issue. It's Obviously state/triage 🚦 Has not been triaged & therefore, not ready for work
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant