From 79e7105ca6ec03f502c935aba3dfc05b46d76110 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 18 Mar 2021 23:44:51 +0000 Subject: [PATCH 01/12] chore(deps): update dependency apollo-server to v2.21.2 (#586) Co-authored-by: Renovate Bot --- package-lock.json | 87 ++++++++--------------------------------------- package.json | 2 +- 2 files changed, 15 insertions(+), 74 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1d3380151..7516741a7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6516,29 +6516,6 @@ "requires": { "apollo-server-caching": "^0.5.3", "apollo-server-env": "^3.0.0" - }, - "dependencies": { - "apollo-server-caching": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.5.3.tgz", - "integrity": "sha512-iMi3087iphDAI0U2iSBE9qtx9kQoMMEWr6w+LwXruBD95ek9DWyj7OeC2U/ngLjRsXM43DoBDXlu7R+uMjahrQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } } }, "apollo-env": { @@ -6621,13 +6598,13 @@ } }, "apollo-server": { - "version": "2.21.1", - "resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-2.21.1.tgz", - "integrity": "sha512-z10nghSdF9tYvmTIezQlIpO7Q94YrbAuZtIBLswVdJXijHYmAtpWdlJ3BhWDiUFVFjocrcXrXhdw2jCtyXASDQ==", + "version": "2.21.2", + "resolved": "https://registry.npmjs.org/apollo-server/-/apollo-server-2.21.2.tgz", + "integrity": "sha512-HLUeIiNDyz+KyKyqlXvZov4dj1V0/QbySqcfPpVGyCwdpf+ZAU7CVhZASNbfwmA4hh436jLhQnoIIKhfBD1kWw==", "dev": true, "requires": { - "apollo-server-core": "^2.21.1", - "apollo-server-express": "^2.21.1", + "apollo-server-core": "^2.21.2", + "apollo-server-express": "^2.21.2", "express": "^4.0.0", "graphql-subscriptions": "^1.0.0", "graphql-tools": "^4.0.8", @@ -6638,7 +6615,6 @@ "version": "0.5.3", "resolved": "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.5.3.tgz", "integrity": "sha512-iMi3087iphDAI0U2iSBE9qtx9kQoMMEWr6w+LwXruBD95ek9DWyj7OeC2U/ngLjRsXM43DoBDXlu7R+uMjahrQ==", - "dev": true, "requires": { "lru-cache": "^6.0.0" }, @@ -6647,7 +6623,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, "requires": { "yallist": "^4.0.0" } @@ -6655,15 +6630,14 @@ "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, "apollo-server-core": { - "version": "2.21.1", - "resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.21.1.tgz", - "integrity": "sha512-aI+soLaqKMkWxH6l9xvPP1fCuZgD053SK09D79LQfMbJAHHvs3MI90UpydiY/W61K5l8ELl0YsKdqkQg8262nw==", + "version": "2.21.2", + "resolved": "https://registry.npmjs.org/apollo-server-core/-/apollo-server-core-2.21.2.tgz", + "integrity": "sha512-jIXMVQPOUzIOl4El/mzSixxJ5IDrqSk3L9uJ1U+ncwiQj0IjtkkyDSuYngcgyEi+KfO2lAzxeOiAy9fIjjkC2A==", "dev": true, "requires": { "@apollographql/apollo-tools": "^0.4.3", @@ -6734,19 +6708,19 @@ "integrity": "sha512-FeGxW3Batn6sUtX3OVVUm7o56EgjxDlmgpTLNyWcLb0j6P8mw9oLNyAm3B+deHA4KNdNHO5BmHS2g1SJYjqPCQ==" }, "apollo-server-express": { - "version": "2.21.1", - "resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.21.1.tgz", - "integrity": "sha512-O8msL01rl1iOfx4qmgpdNDXCh2u+adis8m2pHXZJfHciOoBmAgYaLlH7AOxpW5iHK/vQIwBM0dkPpxu5SaWpag==", + "version": "2.21.2", + "resolved": "https://registry.npmjs.org/apollo-server-express/-/apollo-server-express-2.21.2.tgz", + "integrity": "sha512-5aNE1i/My8c9eBJg5uRyZSvE/NThm1X/fewcs4U5WpuEAMdmg/vf0oZnSZ8Nvmj7H8R2E5xiMkTm6Mv+MKOl9A==", "dev": true, "requires": { "@apollographql/graphql-playground-html": "1.6.27", "@types/accepts": "^1.3.5", "@types/body-parser": "1.19.0", "@types/cors": "2.8.8", - "@types/express": "4.17.7", + "@types/express": "4.17.11", "@types/express-serve-static-core": "4.17.18", "accepts": "^1.3.5", - "apollo-server-core": "^2.21.1", + "apollo-server-core": "^2.21.2", "apollo-server-types": "^0.6.3", "body-parser": "^1.18.3", "cors": "^2.8.4", @@ -6766,18 +6740,6 @@ "requires": { "xss": "^1.0.8" } - }, - "@types/express": { - "version": "4.17.7", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.7.tgz", - "integrity": "sha512-dCOT5lcmV/uC2J9k0rPafATeeyz+99xTt54ReX11/LObZgfzJqZNcW27zGhYyX+9iSEGXGt5qLPwRSvBZcLvtQ==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "*", - "@types/qs": "*", - "@types/serve-static": "*" - } } } }, @@ -6806,27 +6768,6 @@ "requires": { "@apollo/protobufjs": "^1.0.3" } - }, - "apollo-server-caching": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/apollo-server-caching/-/apollo-server-caching-0.5.3.tgz", - "integrity": "sha512-iMi3087iphDAI0U2iSBE9qtx9kQoMMEWr6w+LwXruBD95ek9DWyj7OeC2U/ngLjRsXM43DoBDXlu7R+uMjahrQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, diff --git a/package.json b/package.json index e29aae63e..76273345a 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "@types/node-fetch": "2.5.8", "apollo-link": "1.2.14", "apollo-link-http": "1.5.17", - "apollo-server": "2.21.1", + "apollo-server": "2.21.2", "apollo-server-env": "3.0.0", "bunyan": "1.8.15", "deep-freeze": "0.0.1", From 17909f297455a5ef93f79610e39a7f06a3857cbf Mon Sep 17 00:00:00 2001 From: David Glasser Date: Thu, 18 Mar 2021 22:33:44 -0700 Subject: [PATCH 02/12] renovate: remove `force` declaration (#587) We already declare the same thing in the package.json `engines` section and apparently this force declaration is no longer needed (and can in fact be harmful, as it overrides the npm declaration for package.json). The same fix was applied to apollo-server by the creator of Renovate in https://github.com/apollographql/apollo-server/pull/5020 after we reported an issue. --- renovate.json5 | 9 --------- 1 file changed, 9 deletions(-) diff --git a/renovate.json5 b/renovate.json5 index 9355a5688..cf1dc11c8 100644 --- a/renovate.json5 +++ b/renovate.json5 @@ -2,15 +2,6 @@ "extends": [ "apollo-open-source" ], - "force": { - "constraints": { - // Until we bump everything to npm@7 and make sure our - // tooling and contribution guides know this is expected - // and enforced via tooling, otherwise we could end up with - // flapping. - "node": "< 15.0.0" - } - }, "dependencyDashboard": true, "packageRules": [ // We set this to the lowest supported Node.js version to ensure we don't From 6e9477d00ac6a569a7cef38f85d2d58773ce11fb Mon Sep 17 00:00:00 2001 From: Stephen Barlow Date: Fri, 19 Mar 2021 17:56:14 -0700 Subject: [PATCH 03/12] Tidying the value types article --- docs/source/value-types.md | 82 ++++++++++++++------------------------ 1 file changed, 31 insertions(+), 51 deletions(-) diff --git a/docs/source/value-types.md b/docs/source/value-types.md index 78c6fd20f..d1026a004 100644 --- a/docs/source/value-types.md +++ b/docs/source/value-types.md @@ -1,71 +1,51 @@ --- title: Value types +sidebar_title: Reusing types (value types) description: Define the exact same type in multiple services --- -A natural overlap among identical types between services is not uncommon. Rather than having a single service "own" those types, all services that use them are expected to share ownership. This form of type "duplication" across services is supported for Scalars, Objects, Interfaces, Enums, Unions, and Inputs. The rule of thumb for any of these value types is that the types **must be identical** in name and contents. +It's common to reuse a GraphQL type across multiple [implementing services](./implementing-services/). For example, you might define a generic `Error` interface and an `ErrorCode` enum: -## Objects, Interfaces, and Inputs -For types with field definitions, all fields _and their types_ must be identical. +```graphql +interface Error { + code: ErrorCode! + message: String! +} -## Scalars -For Scalar values, it's important that services **share the same serialization and parsing logic**, since there is no way to validate that logic from the schema level by federation tooling. +enum ErrorCode { + UNKNOWN_ERROR + NETWORK_ERROR + AUTHENTICATION_ERROR + SERVER_ERROR +} +``` -## Enums -For Enum types, all values must match across services. **Even if a service doesn't use all values in an Enum, they still must be defined in the schema**. Failure to include all enum values in all services that use the Enum will result in a validation error when building the federated schema. +These **value types** don't "originate" in a particular service. Instead, _all_ of the services that define a value type share ownership. -## Unions -Union types must share the same types in the union, even if not all types are used by a service. +Most importantly, a value type must be defined **identically** in every service that defines it. Otherwise, your federated schema will fail composition. Not every service needs to define a particular value type. -In the following example, the Product and User services both use the same `ProductCategory` enum, `Date` scalar, `Error` type, and `ProductOrError` union. +Any of the following can be a value type: -```graphql -# Product Service -scalar Date +* Scalars +* Objects +* Interfaces +* Inputs +* Enums +* Unions -union ProductOrError = Product | Error -type Error { - code: Int! - message: String! -} +Considerations for each of these are listed below. -type Product @key(fields: "sku"){ - sku: ID! - category: ProductCategory - dateCreated: Date -} +## Scalars -enum ProductCategory { - FURNITURE - BOOK - DIGITAL_DOWNLOAD -} +If you define a [custom scalar](https://www.apollographql.com/docs/apollo-server/schema/custom-scalars/) as a value type, make sure all of your implementing services use the exact same serialization and parsing logic for it. The schema composition process _does not_ verify this. -# User Service -scalar Date +## Objects, interfaces, and inputs -union ProductOrError = Product | Error +For types with field definitions, all fields _and their types_ must be identical (including nullability). -type Error { - code: Int! - message: String! -} +If an object type is an [entity](./entities/), it _cannot_ be a value type. -type User @key(fields: "id"){ - id: ID! - dateCreated: Date - favoriteCategory: ProductCategory - favoriteProducts: [Product!] -} +## Enums and unions -enum ProductCategory { - FURNITURE - BOOK - DIGITAL_DOWNLOAD -} - -extend type Product @key(fields: "sku"){ - sku: ID! @external -} -``` +For enums and unions, **all possible values must match across all defining services**. Even if a particular service doesn't use a particular value, that value still must be defined in the schema. Otherwise, your federated schema will fail composition. From 42e8be805a74ed8e6a3375ac82c55cb0520eaed7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 12:15:33 +0000 Subject: [PATCH 04/12] chore(deps): update dependency @graphql-codegen/cli to v1.21.3 (#591) Co-authored-by: Renovate Bot --- package-lock.json | 160 ++++++++++++++++++++++++++-------------------- package.json | 2 +- 2 files changed, 91 insertions(+), 71 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7516741a7..917f803bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2653,13 +2653,13 @@ } }, "@graphql-codegen/cli": { - "version": "1.21.2", - "resolved": "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-1.21.2.tgz", - "integrity": "sha512-Jt1sJzTD1/0PZ4JIgZZgswTNu+LxJBS706rOo4ol5NsjkD3Wzk3cUvZsBUYTrYc9Zh6XArZzRm5EBLImLRjHlQ==", + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-1.21.3.tgz", + "integrity": "sha512-jwg0mKhseg0QI4/T4IQcttTBCZgnahiTWqnYWIK+E8nrbXCE9o2hxvaYin/Kq9+5oFtxDePED56cjVs/ESRw6g==", "dev": true, "requires": { "@graphql-codegen/core": "1.17.9", - "@graphql-codegen/plugin-helpers": "^1.18.3", + "@graphql-codegen/plugin-helpers": "^1.18.4", "@graphql-tools/apollo-engine-loader": "^6", "@graphql-tools/code-file-loader": "^6", "@graphql-tools/git-loader": "^6", @@ -2672,7 +2672,7 @@ "@graphql-tools/utils": "^7.0.0", "ansi-escapes": "^4.3.1", "chalk": "^4.1.0", - "change-case-all": "^1.0.12", + "change-case-all": "1.0.12", "chokidar": "^3.4.3", "common-tags": "^1.8.0", "cosmiconfig": "^7.0.0", @@ -2700,6 +2700,19 @@ "yargs": "^16.1.1" }, "dependencies": { + "@graphql-codegen/plugin-helpers": { + "version": "1.18.4", + "resolved": "https://registry.npmjs.org/@graphql-codegen/plugin-helpers/-/plugin-helpers-1.18.4.tgz", + "integrity": "sha512-dpfhUmn9GOS8ByoOPIN3V4Nn9HX7sl9NR7Hf26TgN6Clg7cQvkT6XjHdS2e56Q3kWrxZT1zJ1sEa67D3tj9ZtQ==", + "dev": true, + "requires": { + "@graphql-tools/utils": "^7.0.0", + "common-tags": "1.8.0", + "import-from": "3.0.0", + "lodash": "~4.17.20", + "tslib": "~2.1.0" + } + }, "cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -2852,9 +2865,9 @@ } }, "yargs-parser": { - "version": "20.2.6", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.6.tgz", - "integrity": "sha512-AP1+fQIWSM/sMiET8fyayjx/J+JmTPt2Mr0FkrgqB4todtfa53sOsrSAcIrJRD5XS20bKUwaDIuMkWKCEiQLKA==", + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true } } @@ -3504,47 +3517,39 @@ } }, "@graphql-tools/prisma-loader": { - "version": "6.2.7", - "resolved": "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-6.2.7.tgz", - "integrity": "sha512-o0QHl767uaLZVjb9NlupZjCzjfC5Zo79G6QLnK0Rbi0Ldk5Lf05HDZIfMhiyd9tsw73d0GQY7yIPvQJFE2S5Tw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@graphql-tools/prisma-loader/-/prisma-loader-6.3.0.tgz", + "integrity": "sha512-9V3W/kzsFBmUQqOsd96V4a4k7Didz66yh/IK89B1/rrvy9rYj+ULjEqR73x9BYZ+ww9FV8yP8LasWAJwWaqqJQ==", "dev": true, "requires": { - "@graphql-tools/url-loader": "^6.3.1", + "@graphql-tools/url-loader": "^6.8.2", "@graphql-tools/utils": "^7.0.0", "@types/http-proxy-agent": "^2.0.2", - "@types/js-yaml": "^3.12.5", + "@types/js-yaml": "^4.0.0", "@types/json-stable-stringify": "^1.0.32", "@types/jsonwebtoken": "^8.5.0", - "ajv": "^6.12.6", - "bluebird": "^3.7.2", "chalk": "^4.1.0", - "debug": "^4.2.0", + "debug": "^4.3.1", "dotenv": "^8.2.0", "graphql-request": "^3.3.0", "http-proxy-agent": "^4.0.1", "https-proxy-agent": "^5.0.0", "isomorphic-fetch": "^3.0.0", - "js-yaml": "^3.14.0", + "js-yaml": "^4.0.0", "json-stable-stringify": "^1.0.1", "jsonwebtoken": "^8.5.1", "lodash": "^4.17.20", "replaceall": "^0.1.6", "scuid": "^1.1.0", - "tslib": "~2.0.1", + "tslib": "~2.1.0", "yaml-ast-parser": "^0.0.43" }, "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, "debug": { "version": "4.3.1", @@ -3556,19 +3561,18 @@ } }, "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==", "dev": true, "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" } }, "tslib": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.3.tgz", - "integrity": "sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", + "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", "dev": true } } @@ -3611,30 +3615,39 @@ } }, "@graphql-tools/url-loader": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.8.1.tgz", - "integrity": "sha512-iE/y9IAu0cZYL7o9IIDdGm5WjxacN25nGgVqjZINYlisW/wyuBxng7DMJBAp6yM6gkxkCpMno1ljA/52MXzVPQ==", + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.8.2.tgz", + "integrity": "sha512-YzsXSCOwlSj8UqOMhQThPzgEChgS/MonyWV7f0WKmN9gAT/f3fPaUcYhVamsH0vGbvTkfNM4JdoZO/39amRs5Q==", "dev": true, "requires": { "@graphql-tools/delegate": "^7.0.1", "@graphql-tools/utils": "^7.1.5", "@graphql-tools/wrap": "^7.0.4", - "@types/websocket": "1.0.1", - "cross-fetch": "3.0.6", - "eventsource": "1.0.7", + "@types/websocket": "1.0.2", + "cross-fetch": "3.1.1", + "eventsource": "1.1.0", "extract-files": "9.0.0", "form-data": "4.0.0", "graphql-upload": "^11.0.0", - "graphql-ws": "4.1.5", + "graphql-ws": "4.2.2", "is-promise": "4.0.0", "isomorphic-ws": "4.0.1", "sse-z": "0.3.0", "sync-fetch": "0.3.0", "tslib": "~2.1.0", "valid-url": "1.0.9", - "ws": "7.4.3" + "ws": "7.4.4" }, "dependencies": { + "cross-fetch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.1.tgz", + "integrity": "sha512-eIF+IHQpRzoGd/0zPrwQmHwDC90mdvjk+hcbYhKoaRrEk4GEIDqdjs/MljmdPPoHTQudbmWS+f0hZsEpFaEvWw==", + "dev": true, + "requires": { + "node-fetch": "2.6.1" + } + }, "form-data": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", @@ -3653,9 +3666,9 @@ "dev": true }, "ws": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", - "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.4.tgz", + "integrity": "sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw==", "dev": true } } @@ -6134,9 +6147,9 @@ } }, "@types/js-yaml": { - "version": "3.12.6", - "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.6.tgz", - "integrity": "sha512-cK4XqrLvP17X6c0C8n4iTbT59EixqyXL3Fk8/Rsk4dF3oX4dg70gYUXrXVUUHpnsGMPNlTQMqf+TVmNPX6FmSQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.0.tgz", + "integrity": "sha512-4vlpCM5KPCL5CfGmTbpjwVKbISRYhduEJvvUWsH5EB7QInhEj94XPZ3ts/9FPiLZFqYO0xoW4ZL8z2AabTGgJA==", "dev": true }, "@types/json-stable-stringify": { @@ -6146,9 +6159,9 @@ "dev": true }, "@types/jsonwebtoken": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.0.tgz", - "integrity": "sha512-9bVao7LvyorRGZCw0VmH/dr7Og+NdjYSsKAxB43OQoComFbBgsEpoR9JW6+qSq/ogwVBg8GI2MfAlk4SYI4OLg==", + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", + "integrity": "sha512-rNAPdomlIUX0i0cg2+I+Q1wOUr531zHBQ+cV/28PJ39bSPKjahatZZ2LMuhiguETkCgLVzfruw/ZvNMNkKoSzw==", "dev": true, "requires": { "@types/node": "*" @@ -6307,9 +6320,9 @@ "dev": true }, "@types/websocket": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/websocket/-/websocket-1.0.1.tgz", - "integrity": "sha512-f5WLMpezwVxCLm1xQe/kdPpQIOmL0TXYx2O15VYfYzc7hTIdxiOoOvez+McSIw3b7z/1zGovew9YSL7+h4h7/Q==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/websocket/-/websocket-1.0.2.tgz", + "integrity": "sha512-B5m9aq7cbbD/5/jThEr33nUY8WEfVi6A2YKCTOvw5Ldy7mtsOkqRvGjnzy6g7iMMDsgu7xREuCzqATLDLQVKcQ==", "dev": true, "requires": { "@types/node": "*" @@ -9500,9 +9513,9 @@ "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" }, "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", + "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", "dev": true, "requires": { "original": "^1.0.0" @@ -11198,9 +11211,9 @@ } }, "graphql-ws": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.1.5.tgz", - "integrity": "sha512-yUQ1AjegD1Y9jDS699kyw7Mw+9H+rILm2HoS8N5a5B5YTH93xy3yifFhAJpKGc2wb/8yGdlVy8gTcud0TPqi6Q==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graphql-ws/-/graphql-ws-4.2.2.tgz", + "integrity": "sha512-b6TLtWLAmKunD72muL9EeItRGpio9+V3Cx4zJsBkRA+3wxzTWXDvQr9/3qSwJ3D/2abz0ys2KHTM6lB1uH7KIQ==", "dev": true }, "growly": { @@ -12085,6 +12098,12 @@ "unc-path-regex": "^0.1.2" } }, + "is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true + }, "is-upper-case": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-upper-case/-/is-upper-case-2.0.2.tgz", @@ -13563,12 +13582,13 @@ "integrity": "sha1-nBmm+fBjputT3QPBtocXmYAUY9c=" }, "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { - "chalk": "^4.0.0" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" } }, "log-update": { @@ -18272,9 +18292,9 @@ "dev": true }, "yaml": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", - "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yaml-ast-parser": { diff --git a/package.json b/package.json index 76273345a..6bf06ab40 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "apollo-federation-integration-testsuite": "file:federation-integration-testsuite-js" }, "devDependencies": { - "@graphql-codegen/cli": "1.21.2", + "@graphql-codegen/cli": "1.21.3", "@graphql-codegen/typescript": "1.21.1", "@graphql-codegen/typescript-operations": "1.17.15", "@rollup/plugin-commonjs": "17.1.0", From 948395ccbab7a2445351f70c57cd1536e5c6d801 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 14:08:35 +0000 Subject: [PATCH 05/12] chore(deps): update dependency @types/jest to v26.0.21 (#592) Co-authored-by: Renovate Bot --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index 917f803bc..9f1f9cf77 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6137,9 +6137,9 @@ } }, "@types/jest": { - "version": "26.0.20", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.20.tgz", - "integrity": "sha512-9zi2Y+5USJRxd0FsahERhBwlcvFh6D2GLQnY2FH2BzK8J9s9omvNHIbvABwIluXa0fD8XVKMLTO0aOEuUfACAA==", + "version": "26.0.21", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.21.tgz", + "integrity": "sha512-ab9TyM/69yg7eew9eOwKMUmvIZAKEGZYlq/dhe5/0IMUd/QLJv5ldRMdddSn+u22N13FP3s5jYyktxuBwY0kDA==", "dev": true, "requires": { "jest-diff": "^26.0.0", diff --git a/package.json b/package.json index 6bf06ab40..ca09502df 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "@rollup/plugin-node-resolve": "11.2.0", "@types/bunyan": "1.8.6", "@types/deep-freeze": "0.1.2", - "@types/jest": "26.0.20", + "@types/jest": "26.0.21", "@types/lodash.xorby": "4.7.6", "@types/loglevel": "1.5.4", "@types/nock": "10.0.3", From 00f9fca47377a1e4abf1ba0b07ff72f87fbc1959 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 15:21:59 +0000 Subject: [PATCH 06/12] chore(deps): update dependency @types/node to v12.20.6 (#593) Co-authored-by: Renovate Bot --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9f1f9cf77..a5a922434 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6248,9 +6248,9 @@ } }, "@types/node": { - "version": "12.20.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.5.tgz", - "integrity": "sha512-5Oy7tYZnu3a4pnJ//d4yVvOImExl4Vtwf0D40iKUlU+XlUsyV9iyFWyCFlwy489b72FMAik/EFwRkNLjjOdSPg==" + "version": "12.20.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.6.tgz", + "integrity": "sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA==" }, "@types/node-fetch": { "version": "2.5.8", diff --git a/package.json b/package.json index ca09502df..e2cc507d3 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "@types/lodash.xorby": "4.7.6", "@types/loglevel": "1.5.4", "@types/nock": "10.0.3", - "@types/node": "12.20.5", + "@types/node": "12.20.6", "@types/node-fetch": "2.5.8", "apollo-link": "1.2.14", "apollo-link-http": "1.5.17", From fe9105dd4154f7d217dda61bae6fca86dd95923b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 17:39:17 +0000 Subject: [PATCH 07/12] chore(deps): update dependency rollup to v2.42.1 (#594) Co-authored-by: Renovate Bot --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index a5a922434..752526d02 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16000,9 +16000,9 @@ } }, "rollup": { - "version": "2.41.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.41.2.tgz", - "integrity": "sha512-6u8fJJXJx6fmvKrAC9DHYZgONvSkz8S9b/VFBjoQ6dkKdHyPpPbpqiNl2Bao9XBzDHpq672X6sGZ9G1ZBqAHMg==", + "version": "2.42.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.42.1.tgz", + "integrity": "sha512-/y7M2ULg06JOXmMpPzhTeQroJSchy8lX8q6qrjqil0jmLz6ejCWbQzVnWTsdmMQRhfU0QcwtiW8iZlmrGXWV4g==", "dev": true, "requires": { "fsevents": "~2.3.1" diff --git a/package.json b/package.json index e2cc507d3..00ed9e4e6 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ "nock": "13.0.11", "node-fetch": "2.6.1", "prettier": "2.2.1", - "rollup": "2.41.2", + "rollup": "2.42.1", "rollup-plugin-node-polyfills": "0.2.1", "ts-jest": "26.5.3", "typescript": "4.2.3", From 1a5e5b61c49ecb1e374acab265c89e6519dce845 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 19:47:30 +0000 Subject: [PATCH 08/12] chore(deps): update dependency ts-jest to v26.5.4 (#595) Co-authored-by: Renovate Bot --- package-lock.json | 12 ++++++------ package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 752526d02..47b78288c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17403,9 +17403,9 @@ } }, "ts-jest": { - "version": "26.5.3", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.3.tgz", - "integrity": "sha512-nBiiFGNvtujdLryU7MiMQh1iPmnZ/QvOskBbD2kURiI1MwqvxlxNnaAB/z9TbslMqCsSbu5BXvSSQPc5tvHGeA==", + "version": "26.5.4", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.4.tgz", + "integrity": "sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg==", "dev": true, "requires": { "bs-logger": "0.x", @@ -17445,9 +17445,9 @@ "dev": true }, "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "20.2.7", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.7.tgz", + "integrity": "sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw==", "dev": true } } diff --git a/package.json b/package.json index 00ed9e4e6..a7dcc9f09 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "prettier": "2.2.1", "rollup": "2.42.1", "rollup-plugin-node-polyfills": "0.2.1", - "ts-jest": "26.5.3", + "ts-jest": "26.5.4", "typescript": "4.2.3", "wasm-pack": "0.9.1", "winston": "3.3.3", From 56c54f3004a54f0a137520cc3b329a180945385e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 20 Mar 2021 21:00:57 +0000 Subject: [PATCH 09/12] chore(deps): update rust crate anyhow to 1.0.39 (#596) Co-authored-by: Renovate Bot --- Cargo.lock | 4 ++-- harmonizer/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ad6d50658..8ece47bb1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -351,9 +351,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.38" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afddf7f520a80dbf76e6f50a35bca42a2331ef227a28b3b6dc5c2e2338d114b1" +checksum = "81cddc5f91628367664cc7c69714ff08deee8a3efc54623011c772544d7b2767" [[package]] name = "apollo-query-planner" diff --git a/harmonizer/Cargo.toml b/harmonizer/Cargo.toml index 928fd76e6..cfc4ae258 100644 --- a/harmonizer/Cargo.toml +++ b/harmonizer/Cargo.toml @@ -15,7 +15,7 @@ readme = "README.md" include = ["dist/**/*", "js/**/*", "src/**/*", "Cargo.toml"] [dependencies] -anyhow = "1.0.38" +anyhow = "1.0.39" deno_core = "0.81.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0.60" From 23966596e5e4d6f3dfe000b6f6e5cfe2157688de Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 21 Mar 2021 00:31:07 +0000 Subject: [PATCH 10/12] chore(deps): update rust crate tracing-bunyan-formatter to 0.2.0 (#598) Co-authored-by: Renovate Bot --- Cargo.lock | 4 ++-- stargate/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8ece47bb1..a1eb114ec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3374,9 +3374,9 @@ dependencies = [ [[package]] name = "tracing-bunyan-formatter" -version = "0.1.7" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06718867c20ea03700d41a9413610cccf5d772caea792f34cc73cdd43f0e14a6" +checksum = "05e6b1b6c038da11d8d704f93b3974b0394824cdcc8c818c48255183cf315fd5" dependencies = [ "chrono", "gethostname", diff --git a/stargate/Cargo.toml b/stargate/Cargo.toml index fa9bef778..c2833ce81 100644 --- a/stargate/Cargo.toml +++ b/stargate/Cargo.toml @@ -26,7 +26,7 @@ opentelemetry-jaeger = { version = "0.7.0", features = ["collector_client"] } thrift = "0.13.0" tracing = "0.1.0" tracing-actix-web = "0.2.1" -tracing-bunyan-formatter = "0.1.0" +tracing-bunyan-formatter = "0.2.0" tracing-futures = "0.2.4" tracing-log = { version = "0.1.1", features = ["env_logger"] } tracing-opentelemetry = "0.7.0" From 83e71e3895b088d68b79789c90ae891d6498b0c5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 21 Mar 2021 20:05:53 +0000 Subject: [PATCH 11/12] chore(deps): update rust crate deno_core to 0.82.0 (#599) Co-authored-by: Renovate Bot --- Cargo.lock | 11 ++--------- harmonizer/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a1eb114ec..d5cfb586f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -325,12 +325,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "align-data" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1926655ba000b19e21f0402be09a1d52d318c8a8a68622870bfb7af2a71315cd" - [[package]] name = "ansi_term" version = "0.11.0" @@ -1093,11 +1087,10 @@ checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" [[package]] name = "deno_core" -version = "0.81.0" +version = "0.82.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8b94cd3221f471517c728a8b0759ed35e520777725450a70317212c687a0493" +checksum = "d0f751d952989cbe03a11f643404fbad3f0d4af38d27d1aece431c48f1014e1a" dependencies = [ - "align-data", "anyhow", "futures", "indexmap", diff --git a/harmonizer/Cargo.toml b/harmonizer/Cargo.toml index cfc4ae258..186e09f9f 100644 --- a/harmonizer/Cargo.toml +++ b/harmonizer/Cargo.toml @@ -16,7 +16,7 @@ include = ["dist/**/*", "js/**/*", "src/**/*", "Cargo.toml"] [dependencies] anyhow = "1.0.39" -deno_core = "0.81.0" +deno_core = "0.82.0" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0.60" thiserror = "1.0.23" From a446b31360bd6855207eff36a53d84836496f34f Mon Sep 17 00:00:00 2001 From: David Glasser Date: Mon, 22 Mar 2021 11:01:12 -0700 Subject: [PATCH 12/12] Delete dependabot.yml We use Renovate instead. --- .github/dependabot.yml | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index 601332ba0..000000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,8 +0,0 @@ -version: 2 -updates: - - package-ecosystem: cargo - directory: "/" - schedule: - interval: "weekly" - reviewers: - - "apollographql/polaris"