Skip to content

fix(deps): update apollo graphql packages to v2 (major) #446

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 12, 2022

This PR contains the following updates:

Package Change Age Adoption Passing Confidence Type Update
@apollo/subgraph (source) 0.6.1 -> 2.11.0 age adoption passing confidence dependencies major
ghcr.io/apollographql/router v1.59.2 -> v2.2.1 age adoption passing confidence major

Release Notes

apollographql/federation (@​apollo/subgraph)

v2.11.0

Compare Source

Minor Changes
  • Adds connect spec v0.2, available for use with Apollo Router 2.3.0 or greater. (#​3262)
Patch Changes

v2.10.2

Compare Source

Patch Changes

v2.10.1

Compare Source

Patch Changes

v2.10.0

Compare Source

Patch Changes

v2.9.3

Compare Source

Patch Changes

v2.9.2

Compare Source

Patch Changes

v2.9.1

Compare Source

Patch Changes

v2.9.0

Compare Source

Patch Changes

v2.8.5

Compare Source

Patch Changes

v2.8.4

Compare Source

Patch Changes

v2.8.3

Compare Source

Patch Changes

v2.8.2

Compare Source

Patch Changes

v2.8.1

Compare Source

Patch Changes

v2.8.0

Compare Source

Patch Changes

v2.7.8

Compare Source

Patch Changes

v2.7.7

Compare Source

Patch Changes

v2.7.6

Compare Source

Patch Changes

v2.7.5

Compare Source

Patch Changes

v2.7.4

Compare Source

Patch Changes

v2.7.3

Compare Source

Patch Changes

v2.7.2

Compare Source

Patch Changes

v2.7.1

Compare Source

Patch Changes

v2.7.0

Compare Source

Minor Changes
  • Implement progressive @override functionality (#​2911)

    The progressive @override feature brings a new argument to the @override directive: label: String. When a label is added to an @override application, the override becomes conditional, depending on parameters provided to the query planner (a set of which labels should be overridden). Note that this feature will be supported in router for enterprise users only.

    Out-of-the-box, the router will support a percentage-based use case for progressive @override. For example:

    type Query {
      hello: String @​override(from: "original", label: "percent(5)")
    }

    The above example will override the root hello field from the "original" subgraph 5% of the time.

    More complex use cases will be supported by the router via the use of coprocessors/rhai to resolve arbitrary labels to true/false values (i.e. via a feature flag service).

Patch Changes

v2.6.3

Compare Source

Patch Changes

v2.6.2

Compare Source

Patch Changes

v2.6.1

Compare Source

Patch Changes

v2.6.0

Compare Source

Patch Changes

v2.5.7

Compare Source

Patch Changes

v2.5.6

Compare Source

Patch Changes

v2.5.5

Compare Source

Patch Changes
  • Fix specific case for requesting __typename on interface entity type (#​2775)

    In certain cases, when resolving a __typename on an interface entity (due to it actual being requested in the operation), that fetch group could previously be trimmed / treated as useless. At a glance, it appears to be a redundant step, i.e.:

    { ... on Product { __typename id }} => { ... on Product { __typename} }
    

    It's actually necessary to preserve this in the case that we're coming from an interface object to an (entity) interface so that we can resolve the concrete __typename correctly.

  • Updated dependencies []:

v2.5.4

Compare Source

Patch Changes

v2.5.3

Compare Source

Patch Changes

v2.5.2

Compare Source

Patch Changes

v2.5.1

Compare Source

Patch Changes

v2.5.0

Compare Source

Minor Changes
  • Introduce the new @authenticated directive for composition (#​2644)

    Note that this directive will only be fully supported by the Apollo Router as a GraphOS Enterprise feature at runtime. Also note that composition of valid @authenticated directive applications will succeed, but the resulting supergraph will not be executable by the Gateway or an Apollo Router which doesn't have the GraphOS Enterprise entitlement.

    Users may now compose @authenticated applications from their subgraphs into a supergraph. This addition will support a future version of Apollo Router that enables authenticated access to specific types and fields via directive applications.

    The directive is defined as follows:

    directive @​authenticated on FIELD_DEFINITION | OBJECT | INTERFACE | SCALAR | ENUM

    In order to compose your @authenticated usages, you must update your subgraph's federation spec version to v2.5 and add the @authenticated import to your existing imports like so:

    @​link(url: "https://specs.apollo.dev/federation/v2.5", import: [..., "@​authenticated"])
Patch Changes

v2.4.13

Compare Source

Patch Changes

v2.4.12

Compare Source

Patch Changes

v2.4.11

Compare Source

Patch Changes

v2.4.10

Compare Source

Patch Changes

v2.4.9

Compare Source

Patch Changes

v2.4.8

Compare Source

Patch Changes

v2.4.7

Compare Source

Patch Changes

v2.4.6

Compare Source

Patch Changes

v2.4.5

Compare Source

Patch Changes

v2.4.4

Compare Source

Patch Changes

v2.4.3

Compare Source

Patch Changes
  • Resolve Promise references before calling __resolveType on interface (#​2556)

    Since the introduction of entity interfaces, users could not return
    a Promise from __resolveReference while implementing a synchronous,
    custom __resolveType function. This change fixes/permits this use case.

    Additional background / implementation details:

    Returning a Promise from __resolveReference has historically never
    been an issue. However, with the introduction of entity interfaces, the
    calling of an interface's __resolveType function became a new concern.

    __resolveType functions expect a reference (and shouldn't be concerned
    with whether those references are wrapped in a Promise). In order to
    address this, we can await the reference before calling the
    __resolveType (this handles both the non-Promise and Promise case).

  • Updated dependencies [f6a8c1ce]:

v2.4.2

Compare Source

Patch Changes

v2.4.1

Compare Source

Patch Changes

v2.4.0

Compare Source

Patch Changes

v2.3.6

Compare Source

Patch Changes

v2.3.5

Compare Source

Patch Changes

v2.3.4

Compare Source

Patch Changes

v2.3.3

Compare Source

Patch Changes

v2.3.2

Compare Source

Patch Changes

v2.3.1

Compare Source

Patch Changes

This CHANGELOG pertains only to Apollo Federation packages in the 2.x range. The Federation v0.x equivalent for this package can be found here on the version-0.x branch of this repo.

v2.3.0

Compare Source

  • @tag directive support for the SCHEMA location. This has been added to the 2.3 version of the federation spec, so to access this functionality you must bump your federation spec version to 2.3 by using @link(url: "https://specs.apollo.dev/federation/v2.3", ...) on your schema element. PR #​2314.

v2.2.3

Compare Source

v2.2.2

Compare Source

v2.2.1

Compare Source

v2.2.0

Compare Source

  • Adds support for the 2.2 version of the federation spec (that is, @link(url: "https://specs.apollo.dev/federation/v2.2")), which:
  • allows @shareable to be repeatable so it can be allowed on both a type definition and its extensions PR #​2175.
  • Drop support for node12 PR #​2202

v2.1.4

Compare Source

v2.1.3

Compare Source

v2.1.2

Compare Source

v2.1.1

Compare Source

v2.1.0

Compare Source

  • Update peer dependency graphql to ^16.5.0 to use GraphQLErrorOptions PR #​2060
  • Remove dependency on apollo-server-types PR #​2037
  • Expand support for Node.js v18 PR #​1884

v2.0.5

Compare Source

v2.0.4

Compare Source

v2.0.3

Compare Source

  • Fix output of printSubgraphSchema method, ensuring it can be read back by composition and buildSubgraphSchema PR #​1831.
  • Fix definition of @key to be repeatable PR #​1826.

v2.0.2

Compare Source

v2.0.1

Compare Source

  • Released in sync with other federation packages but no changes to this package.

v2.0.0

Compare Source

  • Previous preview release promoted to general availability! Please see previous changelog entries for full info.
apollographql/router (ghcr.io/apollographql/router)

v2.2.1

Compare Source

🐛 Fixes
Redis connection leak on schema changes (PR #​7319)

The router performs a 'hot reload' whenever it detects a schema update. During this reload, it effectively instantiates a new internal router, warms it up (optional), redirects all traffic to this new router, and drops the old internal router.

This change fixes a bug in that "drop" process where the Redis connections are never told to terminate, even though the Redis client pool is dropped. This leads to an ever-increasing number of inactive Redis connections as each new schema comes in and goes out of service, which eats up memory.

The solution adds a new up-down counter metric, apollo.router.cache.redis.connections, to track the number of open Redis connections. This metric includes a kind label to discriminate between different Redis connection pools, which mirrors the kind label on other cache metrics (ie apollo.router.cache.hit.time).

By @​carodewig in https://github.com/apollographql/router/pull/7319

Propagate client name and version modifications through telemetry (PR #​7369)

The router accepts modifications to the client name and version (apollo::telemetry::client_name and apollo::telemetry::client_version), but those modifications are not currently propagated through the telemetry layers to update spans and traces.

This PR moves where the client name and version are bound to the span, so that the modifications from plugins on the router service are propagated.

By @​carodewig in https://github.com/apollographql/router/pull/7369

Progressive overrides are not disabled when connectors are used (PR #​7351)

Prior to this fix, introducing a connector disabled the progressive override plugin.

By @​lennyburdette in https://github.com/apollographql/router/pull/7351

Avoid unnecessary cloning in the deduplication plugin (PR #​7347)

The deduplication plugin always cloned responses, even if there were not multiple simultaneous requests that would benefit from the cloned response.

We now check to see if deduplication will provide a benefit before we clone the subgraph response.

There was also an undiagnosed race condition which meant that a notification could be missed. This would have resulted in additional work being performed as the missed notification would have led to another subgraph request.

By @​garypen in https://github.com/apollographql/router/pull/7347

Spans should only include path in http.route (PR #​7390)

Per the OpenTelemetry spec, the http.route should only include "the matched route, that is, the path template used in the format used by the respective server framework."

The router currently sends the full URI in http.route, which can be high cardinality (ie /graphql?operation=one_of_many_values). After this change, the router will only include the path (/graphql).

By @​carodewig in https://github.com/apollographql/router/pull/7390

Decrease log level for JWT authentication failure (PR #​7396)

A recent change inadvertently increased the log level of JWT authentication failures from info to error. This reverts that change returning it to the previous behavior.

By @​carodewig in https://github.com/apollographql/router/pull/7396

Avoid fractional decimals when generating apollo.router.operations.batching.size metrics for GraphQL request batch sizes (PR #​7306)

Corrects the calculation of the apollo.router.operations.batching.size metric to reflect accurate batch sizes rather than occasionally returning fractional numbers.

By @​bnjjj in https://github.com/apollographql/router/pull/7306

📃 Configuration
Log warnings for deprecated coprocessor context configuration usage (PR #​7349)

context: true is an alias for context: deprecated but should not be used. The router now logs a runtime warning on startup if you do use it.

Instead of:

coprocessor:
  supergraph:
    request:
      context: true #

Explicitly use deprecated or all:

coprocessor:
  supergraph:
    request:
      context: deprecated #

See the 2.x upgrade guide for more detailed upgrade steps.

By @​goto-bus-stop in https://github.com/apollographql/router/pull/7349

🛠 Maintenance
Linux: Compatibility with glibc 2.28 or newer (PR #​7355)

The default build images provided in our CI environment have a relatively modern version of glibc (2.35). This means that on some distributions, notably those based around RedHat, it wasn't possible to use our binaries since the version of glibc was older than 2.35.

We now maintain a build image which is based on a distribution with glibc 2.28. This is old enough that recent releases of either of the main Linux distribution families (Debian and RedHat) can make use of our binary releases.

By @​garypen in https://github.com/apollographql/router/pull/7355

Reject @skip/@include on subscription root fields in validation (PR #​7338)

This implements a GraphQL spec RFC, rejecting subscriptions in validation that can be invalid during execution.

By @​goto-bus-stop in https://github.com/apollographql/router/pull/7338

📚 Documentation
Query planning best practices (PR #​7263)

Added a new page under Routing docs about Query Planning Best Practices.

By @​smyrick in https://github.com/apollographql/router/pull/7263

v2.2.0

Compare Source

🚀 Features
Add support for connector header propagation via YAML config (PR #​7152)

Added support for connector header propagation via YAML config. All of the existing header propagation in the Router now works for connectors by using
headers.connector.all to apply rules to all connectors or headers.connector.sources.* to apply rules to specific sources.

Note that if one of these rules conflicts with a header set in your schema, either in @connect or @source, the value in your Router config will
take priority and be treated as an override.

headers:
  connector:
    all: # configuration for all connectors across all subgraphs
      request:
        - insert:
            name: "x-inserted-header"
            value: "hello world!"
        - propagate:
            named: "x-client-header"
    sources:
      connector-graph.random_person_api:
        request:
          - insert:
              name: "x-inserted-header"
              value: "hello world!"
          - propagate:
              named: "x-client-header"

By @​andrewmcgivery in https://github.com/apollographql/router/pull/7152

Enable configuration auto-migration for minor version bumps (PR #​7162)

To facilitate configuration evolution within major versions of the router's lifecycles (e.g., within 2.x.x versions), YAML configuration migrations are applied automatically. To avoid configuration drift and facilitate maintenance, when upgrading to a new major version the migrations from the previous major (e.g., 1.x.x) will not be applied automatically. These will need to be applied with router config upgrade prior to the upgrade. To facilitate major version upgrades, we recommend regularly applying the configuration changes using router config upgrade and committing those to your version control system.

By @​bnjjj in https://github.com/apollographql/router/pull/7162

Allow expressions in more locations in Connectors URIs (PR #​7220)

Previously, we only allowed expressions in very specific locations in Connectors URIs:

  1. A path segment, like /users/{$args.id}
  2. A query parameter's value, like /users?id={$args.id}

Expressions can now be used anywhere in or after the path of the URI.
For example, you can do
@connect(http: {GET: "/users?{$args.filterName}={$args.filterValue}"}).
The result of any expression will always be percent encoded.

Note: Parts of this feature are only available when composing with Apollo Federation v2.11 or above (currently in preview).

By @​dylan-apollo in [https://github.com/apollographql/router/pull/7220](https://redirect.github.com/a


Configuration

📅 Schedule: Branch creation - At 12:00 AM through 04:59 AM and 10:00 PM through 11:59 PM, Monday through Friday ( * 0-4,22-23 * * 1-5 ), Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch 11 times, most recently from b2da5c3 to 1007fd7 Compare April 16, 2022 02:25
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch 9 times, most recently from cdd71ef to cd7cb8b Compare April 26, 2022 03:31
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch 7 times, most recently from dc298f7 to c3dacb4 Compare May 6, 2022 23:39
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch 3 times, most recently from 790d25e to d4d30cc Compare May 11, 2022 02:38
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Apr 15, 2025
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch from 88f73d6 to f8c51c9 Compare April 16, 2025 18:53
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Apr 17, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Apr 17, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Apr 27, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Apr 27, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Apr 27, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Apr 27, 2025
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch from f8c51c9 to 74670dd Compare April 29, 2025 16:41
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Apr 29, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Apr 30, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 4, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 4, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 9, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 9, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 11, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 11, 2025
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch from 74670dd to 9bf9115 Compare May 14, 2025 12:39
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 24, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 24, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 30, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 30, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 May 31, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) May 31, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Jun 1, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Jun 1, 2025
@renovate renovate bot changed the title fix(deps): update apollo graphql packages to v2 (major) fix(deps): update dependency @apollo/subgraph to v2 Jun 2, 2025
@renovate renovate bot changed the title fix(deps): update dependency @apollo/subgraph to v2 fix(deps): update apollo graphql packages to v2 (major) Jun 2, 2025
@renovate renovate bot force-pushed the renovate/major-apollo-graphql-packages branch from 9bf9115 to e2e4bc1 Compare June 3, 2025 19:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants