Skip to content

Commit fd436fa

Browse files
release: on branch main (#3345)
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @apollo/[email protected] ### Patch Changes - Fixed access control verification of transitive requirements (through `@requires` and/or `@fromContext`) to ensure it works with chains of transitive dependencies. ([#3343](#3343)) - Allow interface object fields to specify access control ([#3343](#3343)) Update composition logic to allow specifying access control directives (`@authenticated`, `@requiresScopes` and `@policy`) on `@interfaceObject` fields. While we disallow access control on interface types and fields, we decided to support it on `@interfaceObject` as it is a useful pattern to define a single resolver (that may need access controls) for common interface fields. Alternative would require our users to explicitly define resolvers for all implementations which defeats the purpose of `@interfaceObject`. This PR refactors in how we propagate access control by providing additional merge sources when merging directives on interfaces, interface fields and object fields. - Updated dependencies \[[`09e596e6a0c753071ca822e84f525d73ada395cf`](09e596e), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](ac1ed29)]: - @apollo/[email protected] - @apollo/[email protected] ## @apollo/[email protected] ### Patch Changes - Updated dependencies \[[`b19431e4a92206703e29aba859a5fc7574b9ef8b`](b19431e), [`09e596e6a0c753071ca822e84f525d73ada395cf`](09e596e), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](ac1ed29)]: - @apollo/[email protected] - @apollo/[email protected] - @apollo/[email protected] ## @apollo/[email protected] ### Patch Changes - Allow interface object fields to specify access control ([#3343](#3343)) Update composition logic to allow specifying access control directives (`@authenticated`, `@requiresScopes` and `@policy`) on `@interfaceObject` fields. While we disallow access control on interface types and fields, we decided to support it on `@interfaceObject` as it is a useful pattern to define a single resolver (that may need access controls) for common interface fields. Alternative would require our users to explicitly define resolvers for all implementations which defeats the purpose of `@interfaceObject`. This PR refactors in how we propagate access control by providing additional merge sources when merging directives on interfaces, interface fields and object fields. - Fixed demand control validations to unwrap non-nullable composite types and fields when performing validations. ([#3343](#3343)) ## @apollo/[email protected] ### Patch Changes - Updated dependencies \[[`09e596e6a0c753071ca822e84f525d73ada395cf`](09e596e), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](ac1ed29)]: - @apollo/[email protected] ## @apollo/[email protected] ### Patch Changes - Updated dependencies \[[`09e596e6a0c753071ca822e84f525d73ada395cf`](09e596e), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](ac1ed29)]: - @apollo/[email protected] - @apollo/[email protected] ## @apollo/[email protected] ### Patch Changes - Updated dependencies \[[`09e596e6a0c753071ca822e84f525d73ada395cf`](09e596e), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](ac1ed29)]: - @apollo/[email protected] ## [email protected] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 69eff4a commit fd436fa

File tree

18 files changed

+95
-52
lines changed

18 files changed

+95
-52
lines changed

.changeset/orange-yaks-double.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/shaggy-adults-help.md

Lines changed: 0 additions & 9 deletions
This file was deleted.

.changeset/smart-crabs-jump.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

composition-js/CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,21 @@
11
# CHANGELOG for `@apollo/composition`
22

3+
## 2.12.1
4+
5+
### Patch Changes
6+
7+
- Fixed access control verification of transitive requirements (through `@requires` and/or `@fromContext`) to ensure it works with chains of transitive dependencies. ([#3343](https://github.com/apollographql/federation/pull/3343))
8+
9+
- Allow interface object fields to specify access control ([#3343](https://github.com/apollographql/federation/pull/3343))
10+
11+
Update composition logic to allow specifying access control directives (`@authenticated`, `@requiresScopes` and `@policy`) on `@interfaceObject` fields. While we disallow access control on interface types and fields, we decided to support it on `@interfaceObject` as it is a useful pattern to define a single resolver (that may need access controls) for common interface fields. Alternative would require our users to explicitly define resolvers for all implementations which defeats the purpose of `@interfaceObject`.
12+
13+
This PR refactors in how we propagate access control by providing additional merge sources when merging directives on interfaces, interface fields and object fields.
14+
15+
- Updated dependencies [[`09e596e6a0c753071ca822e84f525d73ada395cf`](https://github.com/apollographql/federation/commit/09e596e6a0c753071ca822e84f525d73ada395cf), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](https://github.com/apollographql/federation/commit/ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae)]:
16+
- @apollo/federation-internals@2.12.1
17+
- @apollo/query-graphs@2.12.1
18+
319
## 2.12.0
420

521
### Minor Changes

composition-js/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@apollo/composition",
3-
"version": "2.12.0",
3+
"version": "2.12.1",
44
"description": "Apollo Federation composition utilities",
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",
@@ -27,8 +27,8 @@
2727
"access": "public"
2828
},
2929
"dependencies": {
30-
"@apollo/federation-internals": "2.12.0",
31-
"@apollo/query-graphs": "2.12.0"
30+
"@apollo/federation-internals": "2.12.1",
31+
"@apollo/query-graphs": "2.12.1"
3232
},
3333
"peerDependencies": {
3434
"graphql": "^16.5.0"

federation-integration-testsuite-js/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# CHANGELOG for `federation-integration-testsuite-js`
22

3+
## 2.12.1
4+
35
## 2.12.0
46

57
### Minor Changes

federation-integration-testsuite-js/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "apollo-federation-integration-testsuite",
33
"private": true,
4-
"version": "2.12.0",
4+
"version": "2.12.1",
55
"description": "Apollo Federation Integrations / Test Fixtures",
66
"main": "dist/index.js",
77
"types": "dist/index.d.ts",

gateway-js/CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
# CHANGELOG for `@apollo/gateway`
22

3+
## 2.12.1
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [[`b19431e4a92206703e29aba859a5fc7574b9ef8b`](https://github.com/apollographql/federation/commit/b19431e4a92206703e29aba859a5fc7574b9ef8b), [`09e596e6a0c753071ca822e84f525d73ada395cf`](https://github.com/apollographql/federation/commit/09e596e6a0c753071ca822e84f525d73ada395cf), [`ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae`](https://github.com/apollographql/federation/commit/ac1ed2946c48e0fef4b413b192d8c5fbdb2370ae)]:
8+
- @apollo/composition@2.12.1
9+
- @apollo/federation-internals@2.12.1
10+
- @apollo/query-planner@2.12.1
11+
312
## 2.12.0
413

514
### Minor Changes

gateway-js/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@apollo/gateway",
3-
"version": "2.12.0",
3+
"version": "2.12.1",
44
"description": "Apollo Gateway",
55
"author": "Apollo <[email protected]>",
66
"main": "dist/index.js",
@@ -25,9 +25,9 @@
2525
"access": "public"
2626
},
2727
"dependencies": {
28-
"@apollo/composition": "2.12.0",
29-
"@apollo/federation-internals": "2.12.0",
30-
"@apollo/query-planner": "2.12.0",
28+
"@apollo/composition": "2.12.1",
29+
"@apollo/federation-internals": "2.12.1",
30+
"@apollo/query-planner": "2.12.1",
3131
"@apollo/server-gateway-interface": "^1.1.0",
3232
"@apollo/usage-reporting-protobuf": "^4.1.0",
3333
"@apollo/utils.createhash": "^2.0.0",

internals-js/CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,17 @@
11
# CHANGELOG for `@apollo/federation-internals`
22

3+
## 2.12.1
4+
5+
### Patch Changes
6+
7+
- Allow interface object fields to specify access control ([#3343](https://github.com/apollographql/federation/pull/3343))
8+
9+
Update composition logic to allow specifying access control directives (`@authenticated`, `@requiresScopes` and `@policy`) on `@interfaceObject` fields. While we disallow access control on interface types and fields, we decided to support it on `@interfaceObject` as it is a useful pattern to define a single resolver (that may need access controls) for common interface fields. Alternative would require our users to explicitly define resolvers for all implementations which defeats the purpose of `@interfaceObject`.
10+
11+
This PR refactors in how we propagate access control by providing additional merge sources when merging directives on interfaces, interface fields and object fields.
12+
13+
- Fixed demand control validations to unwrap non-nullable composite types and fields when performing validations. ([#3343](https://github.com/apollographql/federation/pull/3343))
14+
315
## 2.12.0
416

517
### Minor Changes

0 commit comments

Comments
 (0)