From f72dd103be46d649a34365bf4a3669c71df90daa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 3 Apr 2023 11:46:42 -0700 Subject: [PATCH] Version Packages (#7473) 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/server@4.6.0 ### Minor Changes - [#7465](https://github.com/apollographql/apollo-server/pull/7465) [`1e808146a`](https://github.com/apollographql/apollo-server/commit/1e808146a8043245d9c68969fa73e085d5b1ccbd) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Introduce new opt-in configuration option to mitigate v4 status code regression Apollo Server v4 accidentally started responding to requests with an invalid `variables` object with a 200 status code, where v3 previously responded with a 400. In order to not break current behavior (potentially breaking users who have creatively worked around this issue) and offer a mitigation, we've added the following configuration option which we recommend for all users. ```ts new ApolloServer({ // ... status400ForVariableCoercionErrors: true, }); ``` Specifically, this regression affects cases where _input variable coercion_ fails. Variables of an incorrect type (i.e. `String` instead of `Int`) or unexpectedly `null` are examples that fail variable coercion. Additionally, missing or incorrect fields on input objects as well as custom scalars that throw during validation will also fail variable coercion. For more specifics on variable coercion, see the "Input Coercion" sections in the [GraphQL spec](https://spec.graphql.org/June2018/#sec-Scalars). This will become the default behavior in Apollo Server v5 and the configuration option will be ignored / no longer needed. ### Patch Changes - [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users - [#7433](https://github.com/apollographql/apollo-server/pull/7433) [`e0db95b96`](https://github.com/apollographql/apollo-server/commit/e0db95b960eb975ebd11f90ead21a589bd3972c8) Thanks [@KGAdamCook](https://github.com/KGAdamCook)! - Previously, when users provided their own `documentStore`, Apollo Server used a random prefix per schema in order to guarantee there was no shared state from one schema to the next. Now Apollo Server uses a hash of the schema, which enables the provided document store to be shared if you choose to do so. ## @apollo/server-integration-testsuite@4.6.0 ### Patch Changes - [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users - Updated dependencies \[[`1e808146a`](https://github.com/apollographql/apollo-server/commit/1e808146a8043245d9c68969fa73e085d5b1ccbd), [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998), [`e0db95b96`](https://github.com/apollographql/apollo-server/commit/e0db95b960eb975ebd11f90ead21a589bd3972c8)]: - @apollo/server@4.6.0 ## @apollo/server-plugin-response-cache@4.1.2 ### Patch Changes - [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users Co-authored-by: github-actions[bot] --- .changeset/purple-paws-yell.md | 18 --------------- .changeset/shaggy-donkeys-joke.md | 7 ------ .changeset/wet-berries-report.md | 5 ----- package-lock.json | 10 ++++----- packages/integration-testsuite/CHANGELOG.md | 9 ++++++++ packages/integration-testsuite/package.json | 4 ++-- packages/plugin-response-cache/CHANGELOG.md | 6 +++++ packages/plugin-response-cache/package.json | 2 +- packages/server/CHANGELOG.md | 25 +++++++++++++++++++++ packages/server/package.json | 2 +- 10 files changed, 49 insertions(+), 39 deletions(-) delete mode 100644 .changeset/purple-paws-yell.md delete mode 100644 .changeset/shaggy-donkeys-joke.md delete mode 100644 .changeset/wet-berries-report.md diff --git a/.changeset/purple-paws-yell.md b/.changeset/purple-paws-yell.md deleted file mode 100644 index 86ed8997dc8..00000000000 --- a/.changeset/purple-paws-yell.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -'@apollo/server': minor ---- - -Introduce new opt-in configuration option to mitigate v4 status code regression - -Apollo Server v4 accidentally started responding to requests with an invalid `variables` object with a 200 status code, where v3 previously responded with a 400. In order to not break current behavior (potentially breaking users who have creatively worked around this issue) and offer a mitigation, we've added the following configuration option which we recommend for all users. - -```ts -new ApolloServer({ - // ... - status400ForVariableCoercionErrors: true, -}); -``` - -Specifically, this regression affects cases where _input variable coercion_ fails. Variables of an incorrect type (i.e. `String` instead of `Int`) or unexpectedly `null` are examples that fail variable coercion. Additionally, missing or incorrect fields on input objects as well as custom scalars that throw during validation will also fail variable coercion. For more specifics on variable coercion, see the "Input Coercion" sections in the [GraphQL spec](https://spec.graphql.org/June2018/#sec-Scalars). - -This will become the default behavior in Apollo Server v5 and the configuration option will be ignored / no longer needed. diff --git a/.changeset/shaggy-donkeys-joke.md b/.changeset/shaggy-donkeys-joke.md deleted file mode 100644 index 3c69830af0c..00000000000 --- a/.changeset/shaggy-donkeys-joke.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@apollo/server-integration-testsuite': patch -'@apollo/server-plugin-response-cache': patch -'@apollo/server': patch ---- - -Start building packages with TS 5.x, which should have no effect for users diff --git a/.changeset/wet-berries-report.md b/.changeset/wet-berries-report.md deleted file mode 100644 index 95c58203bc5..00000000000 --- a/.changeset/wet-berries-report.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@apollo/server': patch ---- - -Previously, when users provided their own `documentStore`, Apollo Server used a random prefix per schema in order to guarantee there was no shared state from one schema to the next. Now Apollo Server uses a hash of the schema, which enables the provided document store to be shared if you choose to do so. diff --git a/package-lock.json b/package-lock.json index e7b32807992..e9eaa76a579 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14475,12 +14475,12 @@ }, "packages/integration-testsuite": { "name": "@apollo/server-integration-testsuite", - "version": "4.5.0", + "version": "4.6.0", "license": "MIT", "dependencies": { "@apollo/cache-control-types": "^1.0.2", "@apollo/client": "^3.6.9", - "@apollo/server": "4.5.0", + "@apollo/server": "4.6.0", "@apollo/server-plugin-landing-page-graphql-playground": "^4.0.0", "@apollo/usage-reporting-protobuf": "^4.1.0", "@apollo/utils.createhash": "^2.0.0", @@ -14505,7 +14505,7 @@ }, "packages/plugin-response-cache": { "name": "@apollo/server-plugin-response-cache", - "version": "4.1.1", + "version": "4.1.2", "license": "MIT", "dependencies": { "@apollo/utils.createhash": "^2.0.0", @@ -14521,7 +14521,7 @@ }, "packages/server": { "name": "@apollo/server", - "version": "4.5.0", + "version": "4.6.0", "license": "MIT", "dependencies": { "@apollo/cache-control-types": "^1.0.2", @@ -14798,7 +14798,7 @@ "requires": { "@apollo/cache-control-types": "^1.0.2", "@apollo/client": "^3.6.9", - "@apollo/server": "4.5.0", + "@apollo/server": "4.6.0", "@apollo/server-plugin-landing-page-graphql-playground": "^4.0.0", "@apollo/usage-reporting-protobuf": "^4.1.0", "@apollo/utils.createhash": "^2.0.0", diff --git a/packages/integration-testsuite/CHANGELOG.md b/packages/integration-testsuite/CHANGELOG.md index 5521ac6c3fe..10acf55c663 100644 --- a/packages/integration-testsuite/CHANGELOG.md +++ b/packages/integration-testsuite/CHANGELOG.md @@ -1,5 +1,14 @@ # @apollo/server-integration-testsuite +## 4.6.0 + +### Patch Changes + +- [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users + +- Updated dependencies [[`1e808146a`](https://github.com/apollographql/apollo-server/commit/1e808146a8043245d9c68969fa73e085d5b1ccbd), [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998), [`e0db95b96`](https://github.com/apollographql/apollo-server/commit/e0db95b960eb975ebd11f90ead21a589bd3972c8)]: + - @apollo/server@4.6.0 + ## 4.5.0 ### Patch Changes diff --git a/packages/integration-testsuite/package.json b/packages/integration-testsuite/package.json index def7595c3ce..17de23fd735 100644 --- a/packages/integration-testsuite/package.json +++ b/packages/integration-testsuite/package.json @@ -1,6 +1,6 @@ { "name": "@apollo/server-integration-testsuite", - "version": "4.5.0", + "version": "4.6.0", "description": "Test suite for Apollo Server integrations", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -28,7 +28,7 @@ "dependencies": { "@apollo/cache-control-types": "^1.0.2", "@apollo/client": "^3.6.9", - "@apollo/server": "4.5.0", + "@apollo/server": "4.6.0", "@apollo/server-plugin-landing-page-graphql-playground": "^4.0.0", "@apollo/utils.keyvaluecache": "^2.1.0", "@apollo/utils.createhash": "^2.0.0", diff --git a/packages/plugin-response-cache/CHANGELOG.md b/packages/plugin-response-cache/CHANGELOG.md index 0ae5f824a31..78ae732948e 100644 --- a/packages/plugin-response-cache/CHANGELOG.md +++ b/packages/plugin-response-cache/CHANGELOG.md @@ -1,5 +1,11 @@ # @apollo/server-plugin-response-cache +## 4.1.2 + +### Patch Changes + +- [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users + ## 4.1.1 ### Patch Changes diff --git a/packages/plugin-response-cache/package.json b/packages/plugin-response-cache/package.json index 8d8a9dcfe32..6763f7241e5 100644 --- a/packages/plugin-response-cache/package.json +++ b/packages/plugin-response-cache/package.json @@ -1,6 +1,6 @@ { "name": "@apollo/server-plugin-response-cache", - "version": "4.1.1", + "version": "4.1.2", "description": "Apollo Server full query response cache", "type": "module", "main": "dist/cjs/index.js", diff --git a/packages/server/CHANGELOG.md b/packages/server/CHANGELOG.md index e74d879d2bc..4a30e41c673 100644 --- a/packages/server/CHANGELOG.md +++ b/packages/server/CHANGELOG.md @@ -1,5 +1,30 @@ # @apollo/server +## 4.6.0 + +### Minor Changes + +- [#7465](https://github.com/apollographql/apollo-server/pull/7465) [`1e808146a`](https://github.com/apollographql/apollo-server/commit/1e808146a8043245d9c68969fa73e085d5b1ccbd) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Introduce new opt-in configuration option to mitigate v4 status code regression + + Apollo Server v4 accidentally started responding to requests with an invalid `variables` object with a 200 status code, where v3 previously responded with a 400. In order to not break current behavior (potentially breaking users who have creatively worked around this issue) and offer a mitigation, we've added the following configuration option which we recommend for all users. + + ```ts + new ApolloServer({ + // ... + status400ForVariableCoercionErrors: true, + }); + ``` + + Specifically, this regression affects cases where _input variable coercion_ fails. Variables of an incorrect type (i.e. `String` instead of `Int`) or unexpectedly `null` are examples that fail variable coercion. Additionally, missing or incorrect fields on input objects as well as custom scalars that throw during validation will also fail variable coercion. For more specifics on variable coercion, see the "Input Coercion" sections in the [GraphQL spec](https://spec.graphql.org/June2018/#sec-Scalars). + + This will become the default behavior in Apollo Server v5 and the configuration option will be ignored / no longer needed. + +### Patch Changes + +- [#7454](https://github.com/apollographql/apollo-server/pull/7454) [`f6e3ae021`](https://github.com/apollographql/apollo-server/commit/f6e3ae021417c3b54200f8d3fcf4366dc3518998) Thanks [@trevor-scheer](https://github.com/trevor-scheer)! - Start building packages with TS 5.x, which should have no effect for users + +- [#7433](https://github.com/apollographql/apollo-server/pull/7433) [`e0db95b96`](https://github.com/apollographql/apollo-server/commit/e0db95b960eb975ebd11f90ead21a589bd3972c8) Thanks [@KGAdamCook](https://github.com/KGAdamCook)! - Previously, when users provided their own `documentStore`, Apollo Server used a random prefix per schema in order to guarantee there was no shared state from one schema to the next. Now Apollo Server uses a hash of the schema, which enables the provided document store to be shared if you choose to do so. + ## 4.5.0 ### Minor Changes diff --git a/packages/server/package.json b/packages/server/package.json index 287ca021a3f..83f043a8e6f 100644 --- a/packages/server/package.json +++ b/packages/server/package.json @@ -1,6 +1,6 @@ { "name": "@apollo/server", - "version": "4.5.0", + "version": "4.6.0", "description": "Core engine for Apollo GraphQL server", "type": "module", "main": "dist/cjs/index.js",