Netflix / dgs-federation-example

Apache License 2.0
108 stars 43 forks source link

Bump @apollo/gateway from 2.0.4 to 2.4.0 in /apollo-gateway #291

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Bumps @apollo/gateway from 2.0.4 to 2.4.0.

Release notes

Sourced from @​apollo/gateway's releases.

@​apollo/gateway@​2.4.0

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/composition@​2.4.0
    • @​apollo/federation-internals@​2.4.0
    • @​apollo/query-planner@​2.4.0

@​apollo/gateway@​2.4.0-alpha.1

Patch Changes

... (truncated)

Changelog

Sourced from @​apollo/gateway's changelog.

CHANGELOG for @apollo/gateway

2.3.5

Patch Changes

  • Updated dependencies [09382e74]:
    • @​apollo/query-planner@​2.3.5
    • @​apollo/composition@​2.3.5
    • @​apollo/federation-internals@​2.3.5

2.3.4

Patch Changes

  • Handle defaulted variables correctly during post-processing. (#2443)

    Users who tried to use built-in conditional directives (skip/include) with defaulted variables and no variable provided would encounter an error thrown by operation post-processing saying that the variables weren't provided. The defaulted values went unaccounted for, so the operation would validate but then fail an assertion while resolving the conditional.

    With this change, defaulted variable values are now collected and provided to post-processing (with defaults being overwritten by variables that are actually provided).

  • Updated dependencies [6e2d24b5]:

    • @​apollo/federation-internals@​2.3.4
    • @​apollo/composition@​2.3.4
    • @​apollo/query-planner@​2.3.4

2.3.3

Patch Changes

  • Update @​apollo/utils.logger typings dependency (#2269)

  • Exposes, for each subgraph request, the path in the overall gateway operation at which that subgraph request gets inserted. This path is now available as the pathInIncomingRequest field in the arguments of RemoteGraphQLDataSource.willSendRequest and RemoteGraphQLDataSource.didReceiveResponse. (#2384)

  • Previously the queryPlanStoreKey was a hash of the query concatenated with an unhashed operationName if it was present. This resulted in variable length cache keys that could become unnecessarily long, occupying additional space in the query plan cache. (#2310)

    This change incorporates the operationName into the hash itself (if operationName is present).

  • Update @​apollo/utils.createhash package, which drops support for node 12 (#2266)

  • Update @​apollo/utils.isnodelike package, which dropped support for node 12 (#2268)

  • Update @​apollo/utils.fetcher package, which drops support for node 12 (#2267)

  • Updated dependencies [71a07f30]:

    • @​apollo/composition@​2.3.3
    • @​apollo/query-planner@​2.3.3
    • @​apollo/federation-internals@​2.3.3

... (truncated)

Commits


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 1 year ago

Superseded by #299.