Apollo Federation Changelog
Understand changes between Apollo Federation versions
This article describes notable changes and additions introduced in each minor version release of Apollo Federation. Most of these changes involve additions or modifications to federation-specific directives.
For a comprehensive changelog for Apollo Federation and its associated libraries, see GitHub.
To use a feature introduced in a particular federation version, make sure your subgraph schema's
@link
directive targets that version (or higher):GraphQL1extend schema 2 @link(url: "https://specs.apollo.dev/federation/v2.3", 3 import: ["@key", "@shareable", "@interfaceObject"])
The example above must target at least Federation v2.3, because the
@interfaceObject
directive was introduced in that version.ⓘ noteBefore you increment a subgraph's federation version, update your router and build pipeline. For details, see Updating your graph safely.If you maintain a subgraph-compatible library, consult this article to stay current with recently added directives. All of these directive definitions are also listed in the subgraph specification.
v2.9
August 2024
Yes
1.53.0
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
| Introduced. Learn more. GraphQL
|
v2.8
May 2024
Yes
1.48.0
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
| Introduced. Learn more. GraphQL
|
v2.7
February 2024
Yes
1.39.0
Directive changes
Topic | Description |
---|---|
Progressive | Added progressive @override . Learn more.GraphQL
|
v2.6
November 2023
Yes
1.35.0
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
Subgraph changes
Topic | Description |
---|---|
Policy |
|
v2.5
July 2023
Yes
1.29.1
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
| Introduced. Learn more. GraphQL
|
Subgraph changes
Topic | Description |
---|---|
Scope |
|
v2.4
March 2023
Yes
1.13.1
Subgraph changes
Topic | Description |
---|---|
Subscriptions |
|
v2.3
February 2023
Yes
1.10.2
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
| Can now be applied to interface definitions to support entity interfaces.(Previous versions of composition threw an error if @key was applied to an interface definition.) |
v2.2
November 2022
No
1.6.0
Directive changes
Topic | Description |
---|---|
| Added repeatable to the directive definition.GraphQL
@shareable is applied to fields of an interface definition. |
v2.1
August 2022
Yes
1.0.0
Directive changes
Topic | Description |
---|---|
| Introduced. Learn more. GraphQL
|
| The fields argument can now include fields that themselves take arguments. Learn more.(Functionality added in v2.1.2)GraphQL
|
v2.0
April 2022
Yes
1.0.0
Directive changes
Subgraph schemas "opt in" to Federation 2 features by applying the @link
directive to the schema
type, like so:
1extend schema
2 @link(url: "https://specs.apollo.dev/federation/v2.0",
3 import: ["@key", "@shareable"])
The import
list of this definition must include each federation-specific directive that the subgraph schema uses. In the example above, the schema uses @key
and @shareable
.
For details on these directives as defined in Federation 2, see Federation-specific GraphQL directives.
Topic | Description |
---|---|
| Added optional resolvable argument.GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| No changes. |
Subgraph changes
Topic | Description |
---|---|
Entities |
|
Value types |
|
Query and Mutation |
|
v1.1
Directive changes
Topic | Description |
---|---|
| Introduced. GraphQL
|
v1.0
Directive changes
For details on these directives as defined in Federation 1, see the Federation 1 subgraph spec.
Topic | Description |
---|---|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
| Introduced. GraphQL
|
Subgraph changes
Topic | Description |
---|---|
Entities |
|
Value types |
|
Query and Mutation |
|