From 55675f0ac2734ff450335fbdbc87754782e4d5ee Mon Sep 17 00:00:00 2001 From: Chris Lenfest Date: Wed, 11 Jan 2023 11:08:49 -0600 Subject: [PATCH 1/2] release: composition@v2.2.3 --- federation-2/Cargo.lock | 4 +- federation-2/harmonizer/Cargo.toml | 2 +- federation-2/harmonizer/package-lock.json | 54 +++++++++---------- federation-2/harmonizer/package.json | 4 +- .../harmonizer__tests__it_works.snap | 19 ++----- federation-2/supergraph/Cargo.toml | 2 +- 6 files changed, 37 insertions(+), 48 deletions(-) diff --git a/federation-2/Cargo.lock b/federation-2/Cargo.lock index 1769d1094..dc39ff6e0 100644 --- a/federation-2/Cargo.lock +++ b/federation-2/Cargo.lock @@ -569,7 +569,7 @@ checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" [[package]] name = "harmonizer" -version = "2.3.0-beta.2" +version = "2.2.3" dependencies = [ "apollo-federation-types", "deno_core", @@ -1344,7 +1344,7 @@ dependencies = [ [[package]] name = "supergraph" -version = "2.3.0-beta.2" +version = "2.2.3" dependencies = [ "apollo-federation-types", "camino", diff --git a/federation-2/harmonizer/Cargo.toml b/federation-2/harmonizer/Cargo.toml index dfa66c8f7..747dd7172 100644 --- a/federation-2/harmonizer/Cargo.toml +++ b/federation-2/harmonizer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "harmonizer" -version = "2.3.0-beta.2" +version = "2.2.3" authors = ["Apollo "] edition = "2018" description = "Apollo Federation utility to compose a supergraph from subgraphs" diff --git a/federation-2/harmonizer/package-lock.json b/federation-2/harmonizer/package-lock.json index c1e02f0f9..326363e2a 100644 --- a/federation-2/harmonizer/package-lock.json +++ b/federation-2/harmonizer/package-lock.json @@ -1,15 +1,15 @@ { "name": "@apollo/harmonizer-2", - "version": "2.3.0-beta.2", + "version": "2.2.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@apollo/harmonizer-2", - "version": "2.3.0-beta.2", + "version": "2.2.3", "license": "SEE LICENSE IN ./LICENSE", "dependencies": { - "@apollo/composition": "2.3.0-beta.2" + "@apollo/composition": "2.2.3" }, "devDependencies": { "@iarna/toml": "2.2.5", @@ -31,12 +31,12 @@ } }, "node_modules/@apollo/composition": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/composition/-/composition-2.3.0-beta.2.tgz", - "integrity": "sha512-w7Zw09gcHWGqMTql3ldKHsOTtidsxwKlD2Zd4EH2jPOuYVHWwVBcD2rOmGaedDfumz8RknaRXEfjgjbbRiTMBQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/composition/-/composition-2.2.3.tgz", + "integrity": "sha512-wgBZHbt1F8KS8JVzsEHVVQXSzu+ZT8K9Aa9AYFP6axT4wDZTmpQDS7C34E9TyjIDBmUydmrDm5CiZ0KeFReA8Q==", "dependencies": { - "@apollo/federation-internals": "2.3.0-beta.2", - "@apollo/query-graphs": "2.3.0-beta.2" + "@apollo/federation-internals": "^2.2.3", + "@apollo/query-graphs": "^2.2.3" }, "engines": { "node": ">=14.15.0" @@ -46,9 +46,9 @@ } }, "node_modules/@apollo/federation-internals": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/federation-internals/-/federation-internals-2.3.0-beta.2.tgz", - "integrity": "sha512-sLVu170yr6yDyxY37/Lziej5dogPGL9YrcpMqNHgse5jc7xOTz1WjMOhhMGlGfiWbI9eRXyx+RzwK6/nrO7p9g==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/federation-internals/-/federation-internals-2.2.3.tgz", + "integrity": "sha512-6XN1p5AJAlACYBo+EbwPSYnmfRXPPNxlZRLSplB/PWBy9DnF+z+uq3L85Nqmom1JYepFf7JaUuWPBzCvjxAbmg==", "dependencies": { "chalk": "^4.1.0", "js-levenshtein": "^1.1.6" @@ -61,11 +61,11 @@ } }, "node_modules/@apollo/query-graphs": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/query-graphs/-/query-graphs-2.3.0-beta.2.tgz", - "integrity": "sha512-Iw2irAB+SglPge4oxbbh+psPrYErgjtZ36OQz2Ulvfkm9kz4+yJloMNpV+yA4BFL4y8+qubKnlN6wuGChFfEFg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/query-graphs/-/query-graphs-2.2.3.tgz", + "integrity": "sha512-ykH5P72zPtnV8J415o8HX6IkJH8qBd3a+5qZCA1Fx5vLb1Y2RdKDDn2I6VH9dBFuVMQ8ggXvz1/F9XRMudO7ZQ==", "dependencies": { - "@apollo/federation-internals": "2.3.0-beta.2", + "@apollo/federation-internals": "^2.2.3", "@types/uuid": "^8.3.4", "deep-equal": "^2.0.5", "ts-graphviz": "^0.16.0", @@ -1969,29 +1969,29 @@ }, "dependencies": { "@apollo/composition": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/composition/-/composition-2.3.0-beta.2.tgz", - "integrity": "sha512-w7Zw09gcHWGqMTql3ldKHsOTtidsxwKlD2Zd4EH2jPOuYVHWwVBcD2rOmGaedDfumz8RknaRXEfjgjbbRiTMBQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/composition/-/composition-2.2.3.tgz", + "integrity": "sha512-wgBZHbt1F8KS8JVzsEHVVQXSzu+ZT8K9Aa9AYFP6axT4wDZTmpQDS7C34E9TyjIDBmUydmrDm5CiZ0KeFReA8Q==", "requires": { - "@apollo/federation-internals": "2.3.0-beta.2", - "@apollo/query-graphs": "2.3.0-beta.2" + "@apollo/federation-internals": "^2.2.3", + "@apollo/query-graphs": "^2.2.3" } }, "@apollo/federation-internals": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/federation-internals/-/federation-internals-2.3.0-beta.2.tgz", - "integrity": "sha512-sLVu170yr6yDyxY37/Lziej5dogPGL9YrcpMqNHgse5jc7xOTz1WjMOhhMGlGfiWbI9eRXyx+RzwK6/nrO7p9g==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/federation-internals/-/federation-internals-2.2.3.tgz", + "integrity": "sha512-6XN1p5AJAlACYBo+EbwPSYnmfRXPPNxlZRLSplB/PWBy9DnF+z+uq3L85Nqmom1JYepFf7JaUuWPBzCvjxAbmg==", "requires": { "chalk": "^4.1.0", "js-levenshtein": "^1.1.6" } }, "@apollo/query-graphs": { - "version": "2.3.0-beta.2", - "resolved": "https://registry.npmjs.org/@apollo/query-graphs/-/query-graphs-2.3.0-beta.2.tgz", - "integrity": "sha512-Iw2irAB+SglPge4oxbbh+psPrYErgjtZ36OQz2Ulvfkm9kz4+yJloMNpV+yA4BFL4y8+qubKnlN6wuGChFfEFg==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@apollo/query-graphs/-/query-graphs-2.2.3.tgz", + "integrity": "sha512-ykH5P72zPtnV8J415o8HX6IkJH8qBd3a+5qZCA1Fx5vLb1Y2RdKDDn2I6VH9dBFuVMQ8ggXvz1/F9XRMudO7ZQ==", "requires": { - "@apollo/federation-internals": "2.3.0-beta.2", + "@apollo/federation-internals": "^2.2.3", "@types/uuid": "^8.3.4", "deep-equal": "^2.0.5", "ts-graphviz": "^0.16.0", diff --git a/federation-2/harmonizer/package.json b/federation-2/harmonizer/package.json index cb903953e..4a8f2eba0 100644 --- a/federation-2/harmonizer/package.json +++ b/federation-2/harmonizer/package.json @@ -1,7 +1,7 @@ { "name": "@apollo/harmonizer-2", "private": true, - "version": "2.3.0-beta.2", + "version": "2.2.3", "description": "Apollo Federation Harmonizer JS Entrypoint", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -29,7 +29,7 @@ "npm": ">=7 <9" }, "dependencies": { - "@apollo/composition": "2.3.0-beta.2" + "@apollo/composition": "2.2.3" }, "peerDependencies": { "graphql": "^15.7.0 || ^16.0.0" diff --git a/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap b/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap index 5d733cbde..5352d4bb1 100644 --- a/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap +++ b/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap @@ -1,56 +1,46 @@ --- source: harmonizer/src/lib.rs -expression: "harmonize(vec![SubgraphDefinition ::\n new(\"users\", \"undefined\",\n \"\n type User @key(fields: \\\"id\\\") {\n id: ID\n name: String\n }\n\n type Query {\n users: [User!]\n }\n \"),\n SubgraphDefinition ::\n new(\"movies\", \"undefined\",\n \"\n type Movie {\n title: String\n name: String\n }\n\n type User @key(fields: \\\"id\\\") {\n id: ID\n favorites: [Movie!]\n }\n\n type Query {\n movies: [Movie!]\n }\n \")]).unwrap().supergraph_sdl" +expression: "harmonize(vec![SubgraphDefinition ::\n new(\"users\", \"undefined\",\n \"\n type User @key(fields: \\\"id\\\") {\n id: ID\n name: String\n }\n\n type Query {\n users: [User!]\n }\n \"),\n SubgraphDefinition ::\n new(\"movies\", \"undefined\",\n \"\n type Movie {\n title: String\n name: String\n }\n\n type User @key(fields: \\\"id\\\") {\n id: ID\n favorites: [Movie!]\n }\n\n type Query {\n movies: [Movie!]\n }\n \")]).unwrap().supergraph_sdl" --- schema @link(url: "https://specs.apollo.dev/link/v1.0") - @link(url: "https://specs.apollo.dev/join/v0.3", for: EXECUTION) + @link(url: "https://specs.apollo.dev/join/v0.2", for: EXECUTION) { query: Query } -directive @join__enumValue(graph: join__Graph!) repeatable on ENUM_VALUE - -directive @join__field(graph: join__Graph, requires: join__FieldSet, provides: join__FieldSet, type: String, external: Boolean, override: String, usedOverridden: Boolean) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION +directive @join__field(graph: join__Graph!, requires: join__FieldSet, provides: join__FieldSet, type: String, external: Boolean, override: String, usedOverridden: Boolean) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION directive @join__graph(name: String!, url: String!) on ENUM_VALUE directive @join__implements(graph: join__Graph!, interface: String!) repeatable on OBJECT | INTERFACE -directive @join__type(graph: join__Graph!, key: join__FieldSet, extension: Boolean! = false, resolvable: Boolean! = true, isInterfaceObject: Boolean! = false) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR - -directive @join__unionMember(graph: join__Graph!, member: String!) repeatable on UNION +directive @join__type(graph: join__Graph!, key: join__FieldSet, extension: Boolean! = false, resolvable: Boolean! = true) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR directive @link(url: String, as: String, for: link__Purpose, import: [link__Import]) repeatable on SCHEMA scalar join__FieldSet - enum join__Graph { MOVIES @join__graph(name: "movies", url: "undefined") USERS @join__graph(name: "users", url: "undefined") } - scalar link__Import - enum link__Purpose { """ `SECURITY` features provide metadata necessary to securely resolve fields. """ SECURITY - """ `EXECUTION` features provide metadata necessary for operation execution. """ EXECUTION } - type Movie @join__type(graph: MOVIES) { title: String name: String } - type Query @join__type(graph: MOVIES) @join__type(graph: USERS) @@ -58,7 +48,6 @@ type Query movies: [Movie!] @join__field(graph: MOVIES) users: [User!] @join__field(graph: USERS) } - type User @join__type(graph: MOVIES, key: "id") @join__type(graph: USERS, key: "id") diff --git a/federation-2/supergraph/Cargo.toml b/federation-2/supergraph/Cargo.toml index 0602ef8f3..64d528a63 100644 --- a/federation-2/supergraph/Cargo.toml +++ b/federation-2/supergraph/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "supergraph" -version = "2.3.0-beta.2" +version = "2.2.3" edition = "2021" publish = false From 41ea8de64249220252fb8334e48004349f62f872 Mon Sep 17 00:00:00 2001 From: Chris Lenfest Date: Wed, 11 Jan 2023 11:15:30 -0600 Subject: [PATCH 2/2] update snapshot --- .../src/snapshots/harmonizer__tests__it_works.snap | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap b/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap index 5352d4bb1..edb6ad3b2 100644 --- a/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap +++ b/federation-2/harmonizer/src/snapshots/harmonizer__tests__it_works.snap @@ -20,27 +20,33 @@ directive @join__type(graph: join__Graph!, key: join__FieldSet, extension: Boole directive @link(url: String, as: String, for: link__Purpose, import: [link__Import]) repeatable on SCHEMA scalar join__FieldSet + enum join__Graph { MOVIES @join__graph(name: "movies", url: "undefined") USERS @join__graph(name: "users", url: "undefined") } + scalar link__Import + enum link__Purpose { """ `SECURITY` features provide metadata necessary to securely resolve fields. """ SECURITY + """ `EXECUTION` features provide metadata necessary for operation execution. """ EXECUTION } + type Movie @join__type(graph: MOVIES) { title: String name: String } + type Query @join__type(graph: MOVIES) @join__type(graph: USERS) @@ -48,6 +54,7 @@ type Query movies: [Movie!] @join__field(graph: MOVIES) users: [User!] @join__field(graph: USERS) } + type User @join__type(graph: MOVIES, key: "id") @join__type(graph: USERS, key: "id") @@ -55,4 +62,4 @@ type User id: ID favorites: [Movie!] @join__field(graph: MOVIES) name: String @join__field(graph: USERS) -} \ No newline at end of file +}