Federation version changelog
Understand changes between 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
For a comprehensive changelog for Apollo Federation and its associated libraries, see
To use a feature introduced in a particular federation version, make sure your subgraph schema's
@link
directive targets that version (or higher):extend schema@link(url: "https://specs.apollo.dev/federation/v2.3",import: ["@key", "@shareable", "@interfaceObject"])The example above must target at least Federation v2.3, because the
@interfaceObject
directive was introduced in that version.ⓘ NOTE
Before you increment a subgraph's federation version, update your router and build pipeline. For details, see [Updating your graph safely](/graphos/graphs/updating/).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 thesubgraph specification.
v2.7
First release
February 2024
Available in GraphOS?
Yes
Minimum router version
1.39.0
Directive changes
Topic | Description |
---|---|
@override | Added progressive
|
v2.6
First release
November 2023
Available in GraphOS?
Yes
Minimum router version
1.35.0
Directive changes
Topic | Description |
---|---|
@policy | Introduced.
|
Subgraph changes
Topic | Description |
---|---|
Policy |
|
v2.5
First release
July 2023
Available in GraphOS?
Yes
Minimum router version
1.29.1
Directive changes
Topic | Description |
---|---|
@authenticated | Introduced.
|
@requiresScopes | Introduced.
|
Subgraph changes
Topic | Description |
---|---|
Scope |
|
v2.4
First release
March 2023
Available in GraphOS?
Yes
Minimum router version
1.13.1
Subgraph changes
Topic | Description |
---|---|
Subscriptions |
|
v2.3
First release
February 2023
Available in GraphOS?
Yes
Minimum router version
1.10.2
Directive changes
Name | Description |
---|---|
@interfaceObject | Introduced.
|
@key | Can now be applied to interface definitions to support (Previous versions of composition threw an error if |
v2.2
First release
November 2022
Available in GraphOS?
No
Minimum router version
1.6.0
Directive changes
Name | Description |
---|---|
@shareable | Added
Additionally, composition now throws an error if |
v2.1
First release
August 2022
Available in GraphOS?
Yes
Minimum router version
1.0.0
Directive changes
Name | Description |
---|---|
@composeDirective | Introduced.
|
@requires | The (Functionality added in v2.1.2)
|
v2.0
First release
April 2022
Available in GraphOS?
Yes
Minimum router version
1.0.0
Directive changes
Subgraph schemas "opt in" to Federation 2 features by applying the @link
directive to the schema
type, like so:
extend schema@link(url: "https://specs.apollo.dev/federation/v2.0",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
Name | Description |
---|---|
@key | Added optional
|
@shareable | Introduced.
|
@inaccessible | Introduced.
|
@override | Introduced.
|
@link | Introduced.
|
@extends , @external , @provides , @requires , @tag | No changes. |
Subgraph changes
Topic | Description |
---|---|
Entities |
|
Value types |
|
|
|
v1.1
Directive changes
Name | Description |
---|---|
@tag | Introduced.
|
v1.0
Directive changes
For details on these directives as defined in Federation 1, see the
Name | Description |
---|---|
@key | Introduced.
|
@external | Introduced.
|
@requires | Introduced.
|
@provides | Introduced.
|
@extends | Introduced.
|
Subgraph changes
Topic | Description |
---|---|
Entities |
|
Value types |
|
|
|