fix(graphcache): Switch fragment heuristic to always be truthy on writes #2455
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.
Previously we assumed that if an unknown fragment was being applied it'd
be an exceptional case and would not have to apply if the cache doesn't
already know all its fields.
We can now (theoretically) safely switch to always return
true
on writes.When we encounter a field that isn't in the data, as returned by the API
then we can eagerly write anyway and let it fail.
This is safe because if we were to encounter
undefined
data, this signalsto the cache that the field should be deleted, which is correct.
This is important for cases where the fragment applies to an interface
of a node rather than to a concrete type.