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

Ensure operation.getContext and operation.setContext functions are callable for links after removeTypenameFromVariables #10919

Merged
merged 3 commits into from
May 30, 2023

Conversation

jerelmiller
Copy link
Member

#10853 introduced a new Apollo Link that automatically removes __typename from variables before a request is made. After trying this link out in the Spotify showcase, I found that operation.getContext and operation.setContext functions were not callable, thus the page would blow up.

This was due to the fact that operation.getContext and operation.setContext were not declared enumerable. This link originally forwarded the operation by using the spread syntax, which omitted these functions from the operation.

Checklist:

  • If this PR contains changes to the library itself (not necessary for e.g. docs updates), please include a changeset (see CONTRIBUTING.md)
  • If this PR is a new feature, please reference an issue where a consensus about the design was reached (not necessary for small changes)
  • Make sure all of the significant new logic is covered by tests

@changeset-bot
Copy link

changeset-bot bot commented May 26, 2023

🦋 Changeset detected

Latest commit: 1fb8afb

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@apollo/client Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Contributor

github-actions bot commented May 26, 2023

size-limit report 📦

Path Size
dist/apollo-client.min.cjs 36.57 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" 42.97 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" 32.46 KB (0%)
import { ApolloProvider } from "dist/react/index.js" 1.3 KB (0%)
import { useQuery } from "dist/react/index.js" 4.35 KB (0%)
import { useLazyQuery } from "dist/react/index.js" 4.67 KB (0%)
import { useMutation } from "dist/react/index.js" 2.58 KB (0%)
import { useSubscription } from "dist/react/index.js" 2.34 KB (0%)
import { useSuspenseQuery } from "dist/react/index.js" 3.46 KB (0%)
import { useBackgroundQuery } from "dist/react/index.js" 2.89 KB (0%)
import { useReadQuery } from "dist/react/index.js" 1.65 KB (0%)
import { useFragment } from "dist/react/index.js" 2.12 KB (0%)

Copy link
Member

@phryneas phryneas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

Copy link
Contributor

@alessbell alessbell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🙌

@jerelmiller jerelmiller merged commit f796ce1 into release-3.8 May 30, 2023
@jerelmiller jerelmiller deleted the fix-remove-typename-context-functions branch May 30, 2023 18:20
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 30, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants