Change8

@apollo/client@4.3.0-alpha.7

📦 apollo-clientView on GitHub →
1 features🐛 1 fixes🔧 4 symbols

Summary

Apollo Client now warns about and fixes cache feuds between queries, ensuring data consistency and preventing unnecessary refetches. It also improves the handling of non-normalized data in cache feuds.

✨ New Features

  • Emit a development-only warning when a feud is detected between queries that overwrite each other's data. This should make it easier to detect when you need to select a key field or add a `merge` function to a field policy.

🐛 Bug Fixes

  • Fixes an issue where cache feuds between queries selecting incompatible non-normalized data could return untransformed network values. Apollo Client now always writes network results to the cache before delivering them, ensuring custom scalars and field `read` functions are applied. To prevent repeated refetches when competing queries repeatedly make each other's cache results incomplete, Apollo Client stops automatically refetching a query after it sees the same incomplete result again.

Affected Symbols