Releases: apollographql/federation
@apollo/[email protected]
Patch Changes
-
Refactor the internal implementation of selection sets used by the query planner to decrease the code complexity and (#2387)
improve query plan generation performance in many cases. -
Optimises query plan generation for parts of queries that can statically be known to not cross across subgraphs (#2449)
-
Updated dependencies [
260c357c
,7bc0f8e8
,1a555d98
,cab383b2
]:- @apollo/[email protected]
@apollo/[email protected]
Minor Changes
-
This change introduces a configurable query plan cache. This option allows (#2385)
developers to provide their own query plan cache like so:new ApolloGateway({ queryPlannerConfig: { cache: new MyCustomQueryPlanCache(), }, });
The current default implementation is effectively as follows:
import { InMemoryLRUCache } from "@apollo/utils.keyvaluecache"; const cache = new InMemoryLRUCache<string>({ maxSize: Math.pow(2, 20) * 30, sizeCalculation<T>(obj: T): number { return Buffer.byteLength(JSON.stringify(obj), "utf8"); }, });
TypeScript users should implement the
QueryPlanCache
type which is now
exported by@apollo/query-planner
:import { QueryPlanCache } from '@apollo/query-planner'; class MyCustomQueryPlanCache implements QueryPlanCache { // ... }
-
Adds debug/testing query planner options (
debug.bypassPlannerForSingleSubgraph
) to bypass the query planning (#2441)
process for federated supergraph having only a single subgraph. The option is disabled by default, is not recommended
for production, and is not supported (it may be removed later). It is meant for debugging/testing purposes.
Patch Changes
-
Refactor the internal implementation of selection sets used by the query planner to decrease the code complexity and (#2387)
improve query plan generation performance in many cases. -
Optimises query plan generation for parts of queries that can statically be known to not cross across subgraphs (#2449)
-
Updated dependencies [
260c357c
,7bc0f8e8
,d4426ff9
,a9385bdb
,1a555d98
,ade7ceb8
,09382e74
,cab383b2
]:- @apollo/[email protected]
- @apollo/[email protected]
- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
-
Refactor the internal implementation of selection sets used by the query planner to decrease the code complexity and (#2387)
improve query plan generation performance in many cases. -
Revert #2293. Removing URL import causes a problem when running under deno. (#2451)
-
Use globally available URL object instead of node builtin "url" module (#2293)
-
Optimises query plan generation for parts of queries that can statically be known to not cross across subgraphs (#2449)
@apollo/[email protected]
Minor Changes
- Addition of new query planner node types to enable federated subscriptions support (#2389)
Patch Changes
-
Refactor the internal implementation of selection sets used by the query planner to decrease the code complexity and (#2387)
improve query plan generation performance in many cases. -
Optimises query plan generation for parts of queries that can statically be known to not cross across subgraphs (#2449)
-
Updated dependencies [
260c357c
,7bc0f8e8
,1a555d98
,cab383b2
]:- @apollo/[email protected]
- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
- Updated dependencies []:
- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
-
Fix query planner assertion error when types with no common supertypes are requested at the same path (#2467)
-
Updated dependencies []:
- @apollo/[email protected]
- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
- Updated dependencies []:
- @apollo/[email protected]
@apollo/[email protected]
Patch Changes
- Updated dependencies [
09382e74
]:- @apollo/[email protected]
- @apollo/[email protected]
- @apollo/[email protected]
@apollo/[email protected]
@apollo/[email protected]
Patch Changes
- Updated dependencies []:
- @apollo/[email protected]
- @apollo/[email protected]