Skip to content
This repository was archived by the owner on Mar 7, 2025. It is now read-only.

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 31, 2023

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@apollo/client (source) 3.7.10 -> 3.13.2 age adoption passing confidence

Release Notes

apollographql/apollo-client (@​apollo/client)

v3.13.2

Compare Source

Patch Changes
  • #​12409 6aa2f3e Thanks @​phryneas! - To mitigate problems when Apollo Client ends up more than once in the bundle, some unique symbols were converted into Symbol.for calls.

  • #​12392 644bb26 Thanks @​Joja81! - Fixes an issue where the DeepOmit type would turn optional properties into required properties. This should only affect you if you were using the omitDeep or stripTypename utilities exported by Apollo Client.

  • #​12404 4332b88 Thanks @​jerelmiller! - Show NaN rather than converting to null in debug messages from MockLink for unmatched variables values.

v3.13.1

Compare Source

Patch Changes

v3.13.0

Compare Source

Minor Changes
  • #​12066 c01da5d Thanks @​jerelmiller! - Adds a new useSuspenseFragment hook.

    useSuspenseFragment suspends until data is complete. It is a drop-in replacement for useFragment 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 the onCompleted callback from useMutation don't call onError.

  • #​12340 716d02e Thanks @​phryneas! - Deprecate the onCompleted and onError callbacks of useQuery and useLazyQuery.
    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 to observableQuery.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-safe previousData property and a new complete property in the 2nd argument that determines whether previousData 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.

    observableQuery.updateQuery(
      (unsafePreviousData, { previousData, complete }) => {
        previousData;
        // ^? TData | DeepPartial<TData> | undefined
    
        if (complete) {
          previousData;
          // ^? TData
        } else {
          previousData;
          // ^? DeepPartial<TData> | undefined
        }
      }
    );
  • #​12174 ba5cc33 Thanks @​jerelmiller! - Reject the mutation promise if errors are thrown in the onCompleted callback of useMutation.

Patch Changes
  • #​12276 670f112 Thanks @​Cellule! - Fix the return type of the updateQuery function to allow for undefined. updateQuery had the ability to bail out of the update by returning a falsey value, but the return type enforced a query value.

    observableQuery.updateQuery(
      (unsafePreviousData, { previousData, complete }) => {
        if (!complete) {
          // Bail out of the update by returning early
          return;
        }
    
        // ...
      }
    );
  • #​12296 2422df2 Thanks @​Cellule! - Deprecate option ignoreResults in useMutation.
    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 call client.mutate directly.

  • #​12338 67c16c9 Thanks @​phryneas! - In case of a multipart response (e.g. with @defer), query deduplication will
    now keep going until the final chunk has been received.

  • #​12276 670f112 Thanks @​Cellule! - Fix the type of the variables property passed as the 2nd argument to the subscribeToMore callback. This was previously reported as the variables type for the subscription itself, but is now properly typed as the query variables.

v3.12.11

Compare Source

Patch Changes
  • #​12351 3da908b Thanks @​jerelmiller! - Fixes an issue where the wrong networkStatus and loading value was emitted from observableQuery when calling fetchMore with a no-cache fetch policy. The networkStatus now properly reports as ready and loading as false after the result is returned.

  • #​12354 a24ef94 Thanks @​phryneas! - Fix missing main.d.cts file

v3.12.10

Compare Source

Patch Changes

v3.12.9

Compare Source

Patch Changes

v3.12.8

Compare Source

Patch Changes

v3.12.7

Compare Source

Patch Changes

v3.12.6

Compare Source

Patch Changes

v3.12.5

Compare Source

Patch Changes
  • #​12252 cb9cd4e Thanks @​jerelmiller! - Changes the default behavior of the MaybeMasked 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 to true, you can remove this configuration entirely:

-declare module "@&#8203;apollo/client" {
-  interface DataMasking {
-    mode: "unmask"
-  }
-}

If you prefer to specify the behavior explicitly, change the property from enabled: true, to mode: "preserveTypes":

declare module "@&#8203;apollo/client" {
  interface DataMasking {
-    enabled: true
+    mode: "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 to unmask:

declare module "@&#8203;apollo/client" {
  interface DataMasking {
    mode: "unmask";
  }
}

v3.12.4

Compare Source

Patch Changes
  • #​12236 4334d30 Thanks @​charpeni! - Fix an issue with refetchQueries where comparing DocumentNodes internally by references could lead to an unknown query, even though the DocumentNode was indeed an active query—with a different reference.

v3.12.3

Compare Source

Patch Changes

v3.12.2

Compare Source

Patch Changes

v3.12.1

Compare Source

Patch Changes
  • #​12351 3da908b Thanks @​jerelmiller! - Fixes an issue where the wrong networkStatus and loading value was emitted from observableQuery when calling fetchMore with a no-cache fetch policy. The networkStatus now properly reports as ready and loading as false after the result is returned.

  • #​12354 a24ef94 Thanks @​phryneas! - Fix missing main.d.cts file

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 to true.

    new ApolloClient({
      dataMasking: true,
      // ... other options
    });

    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! - Allow null as a valid from value in useFragment.

More Patch Changes

v3.11.10

Compare Source

Patch Changes
  • #​12093 1765668 Thanks @​mgmolisani! - Fixed a bug when evaluating the devtools flag with the new syntax devtools.enabled that could result to true when explicitly set to false.

v3.11.9

Compare Source

Patch Changes
  • #​12110 a3f95c6 Thanks @​jerelmiller! - Fix an issue where errors returned from a fetchMore call from a Suspense hook would cause a Suspense boundary to be shown indefinitely.

v3.11.8

Compare Source

Patch Changes

v3.11.7

Compare Source

Patch Changes
  • #​12052 e471cef Thanks @​jerelmiller! - Fixes a regression from where passing an invalid identifier to from in useFragment would result in the warning TypeError: Cannot read properties of undefined (reading '__typename').

v3.11.6

Compare Source

Patch Changes

v3.11.5

Compare Source

Patch Changes

v3.11.4

Compare Source

Patch Changes
  • #​11994 41b17e5 Thanks @​jerelmiller! - Update the Modifier function type to allow cache.modify to return deeply partial data.

  • #​11989 e609156 Thanks @​phryneas! - Fix a potential crash when calling clearStore while a query was running.

    Previously, calling client.clearStore() while a query was running had one of these results:

    • useQuery would stay in a loading: true state.
    • useLazyQuery would stay in a loading: 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 the useLazyQuery execute function will return a result in an error state.

  • #​11994 41b17e5 Thanks @​jerelmiller! - Prevent accidental distribution on cache.modify field modifiers when a field is a union type array.

v3.11.3

Compare Source

Patch Changes
Potentially disruptive change

When calling fetchMore with a query that has a no-cache fetch policy, fetchMore will now throw if an updateQuery function is not provided. This provides a mechanism to merge the results from the fetchMore call with the query's previous result.

v3.11.2

Compare Source

Patch Changes

v3.11.1

Compare Source

Patch Changes
  • #​12093 1765668 Thanks @​mgmolisani! - Fixed a bug when evaluating the devtools flag with the new syntax devtools.enabled that could result to true when explicitly set to false.

v3.11.0

Compare Source

Potentially Breaking Fixes
  • #​11789 5793301 Thanks @​phryneas! - Changes usages of the GraphQLError type to GraphQLFormattedError.

    This was a type bug - these errors were never GraphQLError instances
    to begin with, and the GraphQLError class has additional properties that can
    never 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 types
    are for use on the server only, but don't get transported over the network.

  • #​11626 228429a Thanks @​phryneas! - Call nextFetchPolicy with "variables-changed" even if there is a fetchPolicy specified.

    Previously this would only be called when the current fetchPolicy was equal to the fetchPolicy option or the option was not specified. If you use nextFetchPolicy 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 initial fetchPolicy, even when you specified a nextFetchPolicy function. If you previously relied on this behavior, you will need to update your nextFetchPolicy callback function to implement this resetting behavior.

    As an example, if your code looked like the following:

    useQuery(QUERY, {
      nextFetchPolicy(currentFetchPolicy, info) {
        // your logic here
      }
    );

    Update your function to the following to reimplement the resetting behavior:

    useQuery(QUERY, {
      nextFetchPolicy(currentFetchPolicy, info) {
        if (info.reason === 'variables-changed') {
          return info.initialFetchPolicy;
        }
        // your logic here
      }
    );
Minor Changes
Patch Changes

v3.10.8

Compare Source

Patch Changes

v3.10.7

Compare Source

Patch Changes

v3.10.6

Compare Source

Patch Changes

v3.10.5

Compare Source

Patch Changes

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 using cache.watchFragment or the useFragment hook to avoid rerendering when using these directives.

  • #​11824 47ad806 Thanks @​phryneas! - Create branded QueryRef type without exposed properties.

    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


Configuration

📅 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 this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 5faa2eb to 2c1d668 Compare April 13, 2023 01:55
@renovate renovate bot changed the title Update dependency @apollo/client to v3.7.11 Update dependency @apollo/client to v3.7.12 Apr 13, 2023
@renovate renovate bot changed the title Update dependency @apollo/client to v3.7.12 Update dependency @apollo/client to v3.8.6 Oct 27, 2023
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch 2 times, most recently from 7658a42 to d1632c5 Compare November 2, 2023 16:36
@renovate renovate bot changed the title Update dependency @apollo/client to v3.8.6 Update dependency @apollo/client to v3.8.7 Nov 2, 2023
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from d1632c5 to 7f3d641 Compare November 29, 2023 19:17
@renovate renovate bot changed the title Update dependency @apollo/client to v3.8.7 Update dependency @apollo/client to v3.8.8 Nov 29, 2023
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 7f3d641 to 8084c3f Compare January 9, 2024 22:56
@renovate renovate bot changed the title Update dependency @apollo/client to v3.8.8 Update dependency @apollo/client to v3.8.9 Jan 9, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 8084c3f to 6f5e262 Compare January 18, 2024 20:03
@renovate renovate bot changed the title Update dependency @apollo/client to v3.8.9 Update dependency @apollo/client to v3.8.10 Jan 18, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 6f5e262 to 3415590 Compare January 30, 2024 23:21
@renovate renovate bot changed the title Update dependency @apollo/client to v3.8.10 Update dependency @apollo/client to v3.9.0 Jan 30, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 3415590 to 5d299d8 Compare January 31, 2024 19:23
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.0 Update dependency @apollo/client to v3.9.1 Jan 31, 2024
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.1 Update dependency @apollo/client to v3.9.2 Feb 1, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch 2 times, most recently from 019cffd to 0179150 Compare February 6, 2024 22:29
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.2 Update dependency @apollo/client to v3.9.3 Feb 6, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 0179150 to 52ab263 Compare February 7, 2024 19:48
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.3 Update dependency @apollo/client to v3.9.4 Feb 7, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 52ab263 to e66e397 Compare February 15, 2024 20:03
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.4 Update dependency @apollo/client to v3.9.5 Feb 15, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from e66e397 to d228677 Compare March 6, 2024 18:51
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.5 Update dependency @apollo/client to v3.9.6 Mar 6, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from d228677 to 28eeec8 Compare March 13, 2024 19:21
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.6 Update dependency @apollo/client to v3.9.7 Mar 13, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 28eeec8 to ac70687 Compare March 20, 2024 22:08
@renovate renovate bot changed the title Update dependency @apollo/client to v3.9.7 Update dependency @apollo/client to v3.9.8 Mar 20, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from eb1be86 to 2670113 Compare December 5, 2024 16:21
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.0 Update dependency @apollo/client to v3.12.1 Dec 5, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 2670113 to 52c80ff Compare December 5, 2024 22:48
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.1 Update dependency @apollo/client to v3.12.2 Dec 5, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 52c80ff to 63c22fa Compare December 12, 2024 16:37
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.2 Update dependency @apollo/client to v3.12.3 Dec 12, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 63c22fa to a079fee Compare December 19, 2024 20:44
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.3 Update dependency @apollo/client to v3.12.4 Dec 19, 2024
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from a079fee to feb6f12 Compare January 10, 2025 01:11
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.4 Update dependency @apollo/client to v3.12.5 Jan 10, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from feb6f12 to 84c6cd2 Compare January 14, 2025 19:45
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.5 Update dependency @apollo/client to v3.12.6 Jan 14, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 84c6cd2 to 6b76dbc Compare January 22, 2025 07:03
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.6 Update dependency @apollo/client to v3.12.7 Jan 22, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch 2 times, most recently from cc057c9 to c61477a Compare January 27, 2025 19:35
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.7 Update dependency @apollo/client to v3.12.8 Jan 27, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from c61477a to eede795 Compare February 3, 2025 19:45
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.8 Update dependency @apollo/client to v3.12.9 Feb 3, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from eede795 to eaa847c Compare February 6, 2025 19:12
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.9 Update dependency @apollo/client to v3.12.10 Feb 6, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from eaa847c to 50c0e76 Compare February 7, 2025 18:49
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.10 Update dependency @apollo/client to v3.12.11 Feb 7, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 50c0e76 to 6311bcc Compare February 13, 2025 18:10
@renovate renovate bot changed the title Update dependency @apollo/client to v3.12.11 Update dependency @apollo/client to v3.13.0 Feb 13, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 6311bcc to 389369c Compare February 14, 2025 20:51
@renovate renovate bot changed the title Update dependency @apollo/client to v3.13.0 Update dependency @apollo/client to v3.13.1 Feb 14, 2025
@renovate renovate bot force-pushed the renovate/apollo-graphql-packages branch from 389369c to 5dbe904 Compare March 6, 2025 21:09
@renovate renovate bot changed the title Update dependency @apollo/client to v3.13.1 Update dependency @apollo/client to v3.13.2 Mar 6, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant