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

Version Packages #12372

Merged
merged 2 commits into from
Feb 13, 2025
Merged

Version Packages #12372

merged 2 commits into from
Feb 13, 2025

Conversation

github-actions[bot]
Copy link
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@apollo/[email protected]

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.

  • #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.

@svc-apollo-docs
Copy link

svc-apollo-docs commented Feb 13, 2025

✅ Docs preview ready

The preview is ready to be viewed. View the preview

File Changes

0 new, 1 changed, 0 removed
* (developer-tools)/react/(latest)/data/fragments.mdx

Build ID: f7496301ed95ac0d9f2b191b

URL: https://www.apollographql.com/docs/deploy-preview/f7496301ed95ac0d9f2b191b

Copy link

netlify bot commented Feb 13, 2025

Deploy Preview for apollo-client-docs ready!

Name Link
🔨 Latest commit e36120f
🔍 Latest deploy log https://app.netlify.com/sites/apollo-client-docs/deploys/67ae266c901c6000086ede52
😎 Deploy Preview https://deploy-preview-12372--apollo-client-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link

pkg-pr-new bot commented Feb 13, 2025

npm i https://pkg.pr.new/@apollo/client@12372

commit: e36120f

Copy link
Contributor Author

size-limit report 📦

Path Size
dist/apollo-client.min.cjs 41.25 KB (-0.01% 🔽)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" 50.69 KB (-0.01% 🔽)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" (production) 47.76 KB (-0.01% 🔽)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" 36.25 KB (-0.01% 🔽)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" (production) 33.64 KB (-0.01% 🔽)
import { ApolloProvider } from "dist/react/index.js" 1.26 KB (-0.08% 🔽)
import { ApolloProvider } from "dist/react/index.js" (production) 1.24 KB (-0.24% 🔽)
import { useQuery } from "dist/react/index.js" 5.21 KB (-0.02% 🔽)
import { useQuery } from "dist/react/index.js" (production) 4.29 KB (-0.03% 🔽)
import { useLazyQuery } from "dist/react/index.js" 5.7 KB (-0.02% 🔽)
import { useLazyQuery } from "dist/react/index.js" (production) 4.78 KB (-0.03% 🔽)
import { useMutation } from "dist/react/index.js" 3.62 KB (-0.03% 🔽)
import { useMutation } from "dist/react/index.js" (production) 2.84 KB (0%)
import { useSubscription } from "dist/react/index.js" 4.42 KB (-0.03% 🔽)
import { useSubscription } from "dist/react/index.js" (production) 3.48 KB (-0.03% 🔽)
import { useSuspenseQuery } from "dist/react/index.js" 5.88 KB (-0.02% 🔽)
import { useSuspenseQuery } from "dist/react/index.js" (production) 4.54 KB (-0.05% 🔽)
import { useBackgroundQuery } from "dist/react/index.js" 5.37 KB (-0.02% 🔽)
import { useBackgroundQuery } from "dist/react/index.js" (production) 4.03 KB (-0.03% 🔽)
import { useLoadableQuery } from "dist/react/index.js" 5.45 KB (-0.02% 🔽)
import { useLoadableQuery } from "dist/react/index.js" (production) 4.11 KB (-0.03% 🔽)
import { useReadQuery } from "dist/react/index.js" 3.42 KB (-0.03% 🔽)
import { useReadQuery } from "dist/react/index.js" (production) 3.36 KB (-0.03% 🔽)
import { useFragment } from "dist/react/index.js" 2.36 KB (-0.05% 🔽)
import { useFragment } from "dist/react/index.js" (production) 2.31 KB (-0.05% 🔽)

@github-actions github-actions bot added the auto-cleanup 🤖 label Feb 13, 2025
@jerelmiller jerelmiller merged commit e93d19f into main Feb 13, 2025
47 checks passed
@jerelmiller jerelmiller deleted the changeset-release/main branch February 13, 2025 17:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants