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

Change usages of the GraphQLError type to GraphQLFormattedError. #11789

Merged
merged 12 commits into from
Jul 9, 2024

Conversation

phryneas
Copy link
Member

Fixes #11787

This would be one direction of going at this.

The other way of going about it would be to change our usage of the GraphQLError type to the GraphQLErrorFromResponse type that I created here, with everything except message being optional.

We'll have to discuss that internally - putting it on the agenda for next meeting.

Copy link

changeset-bot bot commented Apr 17, 2024

🦋 Changeset detected

Latest commit: d7fa5fe

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 Minor

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

@phryneas
Copy link
Member Author

Funny enough, nothing here fails for me locally. I'll have to take a closer look.

@phryneas phryneas marked this pull request as draft April 17, 2024 14:00
@jerelmiller
Copy link
Member

@phryneas is this something we want to move forward with? If so, what is left to be done?

@phryneas
Copy link
Member Author

phryneas commented Jul 8, 2024

Thanks for bringing this up!
I did some digging and we decided "🚀 🌔" on this back on April 22.
I'll get it ready for review.

@phryneas phryneas changed the base branch from main to release-3.11 July 8, 2024 11:10
@phryneas phryneas added the auto-cleanup 🤖 label Jul 8, 2024

expect(graphQLError).toBeInstanceOf(GraphQLError);
// test equality of enumberable fields. non-enumerable fields will differ
expect({ ...graphQLError }).toStrictEqual({ ...original });
Copy link
Member Author

Choose a reason for hiding this comment

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

After writing this test I'm less convinced that this is the path forward - it's not straightforward to deserialize a serialized GraphQLError as the serialized variant is missing a lot of information and the constructor doesn't even accept locations.

Copy link
Contributor

github-actions bot commented Jul 8, 2024

size-limit report 📦

Path Size
dist/apollo-client.min.cjs 39.17 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" 47.9 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/main.cjs" (production) 45.44 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" 34.31 KB (0%)
import { ApolloClient, InMemoryCache, HttpLink } from "dist/index.js" (production) 32.17 KB (0%)
import { ApolloProvider } from "dist/react/index.js" 1.26 KB (0%)
import { ApolloProvider } from "dist/react/index.js" (production) 1.24 KB (0%)
import { useQuery } from "dist/react/index.js" 5.23 KB (0%)
import { useQuery } from "dist/react/index.js" (production) 4.31 KB (0%)
import { useLazyQuery } from "dist/react/index.js" 5.71 KB (0%)
import { useLazyQuery } from "dist/react/index.js" (production) 4.79 KB (0%)
import { useMutation } from "dist/react/index.js" 3.62 KB (0%)
import { useMutation } from "dist/react/index.js" (production) 2.84 KB (0%)
import { useSubscription } from "dist/react/index.js" 4.4 KB (0%)
import { useSubscription } from "dist/react/index.js" (production) 3.45 KB (0%)
import { useSuspenseQuery } from "dist/react/index.js" 5.49 KB (0%)
import { useSuspenseQuery } from "dist/react/index.js" (production) 4.15 KB (0%)
import { useBackgroundQuery } from "dist/react/index.js" 4.99 KB (0%)
import { useBackgroundQuery } from "dist/react/index.js" (production) 3.64 KB (0%)
import { useLoadableQuery } from "dist/react/index.js" 5.07 KB (0%)
import { useLoadableQuery } from "dist/react/index.js" (production) 3.72 KB (0%)
import { useReadQuery } from "dist/react/index.js" 3.39 KB (0%)
import { useReadQuery } from "dist/react/index.js" (production) 3.33 KB (0%)
import { useFragment } from "dist/react/index.js" 2.32 KB (0%)
import { useFragment } from "dist/react/index.js" (production) 2.27 KB (0%)

Copy link

netlify bot commented Jul 8, 2024

Deploy Preview for apollo-client-docs ready!

Name Link
🔨 Latest commit 6f005eb
🔍 Latest deploy log https://app.netlify.com/sites/apollo-client-docs/deploys/668bd62a8cf40d00083ff890
😎 Deploy Preview https://deploy-preview-11789--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

netlify bot commented Jul 8, 2024

Deploy Preview for apollo-client-docs ready!

Name Link
🔨 Latest commit d4abb02
🔍 Latest deploy log https://app.netlify.com/sites/apollo-client-docs/deploys/668d4f8267d1690008c1af19
😎 Deploy Preview https://deploy-preview-11789--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.

@phryneas phryneas added this to the 3.11.0 milestone Jul 9, 2024
@phryneas phryneas changed the title post-process errors received from responses into GraphQLError instances Change usages of the GraphQLError type to GraphQLFormattedError. Jul 9, 2024
@phryneas phryneas requested a review from jerelmiller July 9, 2024 15:06
@phryneas phryneas marked this pull request as ready for review July 9, 2024 15:06
@phryneas phryneas requested a review from alessbell July 9, 2024 15:06
Copy link
Member

@jerelmiller jerelmiller left a comment

Choose a reason for hiding this comment

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

Thanks for making this change!

@phryneas phryneas merged commit 5793301 into release-3.11 Jul 9, 2024
44 checks passed
@phryneas phryneas deleted the pr/fix-11787 branch July 9, 2024 15:43
@github-actions github-actions bot mentioned this pull request Jul 9, 2024
@github-actions github-actions bot mentioned this pull request Jul 22, 2024
Josh-Walker-GM added a commit to redwoodjs/redwood that referenced this pull request Jul 24, 2024
See: #11034. This was extracted from that one without the experimental
package upgrade.

Hmm looks like we'll have to do some refactoring due to
apollographql/apollo-client#11789.
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 9, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ApolloError.graphQLErrors are not of type GraphQLError
2 participants