Stop calling addTypenameToDocument before InMemoryCache reads/writes. #5320
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adding
__typename
fields to the query by callingaddTypenameToDocument
used to be necessary for writing results to the cache, but now (thanks to this PR)__typename
fields in result objects are automatically written to the cache, so no transformation is necessary.ApolloClient still calls
cache.transformDocument
to get a query with__typename
fields to send to the server, and the cache still relies on results from the server coming back with__typename
fields, but the cache no longer needs the query to be transformed to include__typename
.Compared to PR #5311, this commit should not be a breaking change. PR #5311 ultimately failed because hiding
__typename
fields threatened to disruptreadFragment
=> transform =>writeFragment
workflows, becausewriteFragment
needs__typename
information to work properly, soreadFragment
must return that information.