|
1 |
| -# What's New in graphql-js v17? |
| 1 | +# What's New in `graphql-js` v17? |
2 | 2 |
|
3 |
| -## Specification Changes |
| 3 | +## Changes by Way of the Specification |
4 | 4 |
|
5 | 5 | ### New Experimental Features
|
6 | 6 |
|
7 | 7 | #### Experimental Support for Incremental Delivery
|
8 | 8 |
|
| 9 | +- [Spec PR](https://github.com/graphql/graphql-spec/pull/1110) / [RFC](https://github.com/graphql/graphql-wg/blob/main/rfcs/DeferStream.md) |
9 | 10 | - enabled only when using `experimentalExecuteIncrementally()`, use of a schema or operation with `@defer`/`@stream` directives within `execute()` will now throw.
|
10 | 11 | - enable early execution with the new `enableEarlyExecution` configuration option for `experimentalExecuteIncrementally()`.
|
11 | 12 |
|
12 | 13 | #### Experimental Support for Fragment Arguments
|
13 | 14 |
|
| 15 | +- [Spec PR](https://github.com/graphql/graphql-spec/pull/1081) / [RFC](https://github.com/graphql/graphql-wg/blob/main/rfcs/DeferStream.md) |
14 | 16 | - enable with the new `experimentalFragmentArguments` configuration option for `parse()`.
|
15 | 17 | - new experimental `Kind.FRAGMENT_ARGUMENT` for visiting
|
16 | 18 | - new experimental `TypeInfo` methods and options for handling fragment arguments.
|
17 | 19 | - coerce AST via new function `coerceInputLiteral()` with experimental fragment variables argument (as opposed to deprecated `valueFromAST()` function).
|
18 | 20 |
|
19 |
| -### Clarifications |
| 21 | +### Specification Clarifications |
20 | 22 |
|
21 |
| -- Fix ambiguity around when schema definition may be omitted (#3839) |
22 |
| -- No reusing root types (#3453) |
| 23 | +#### Fix ambiguity around when schema definition may be omitted |
| 24 | + |
| 25 | +- [Spec PR](https://github.com/graphql/graphql-spec/pull/987) |
| 26 | +- Schema definition will include only the proper root types. |
| 27 | + |
| 28 | +### Implementation Fixes |
| 29 | + |
| 30 | +#### Enforcing uniqueness of root types |
| 31 | + |
| 32 | +- `graphql-js` now properly enforces that the schema's root types must be unique. |
23 | 33 |
|
24 | 34 | ## New API features
|
25 | 35 |
|
|
48 | 58 | - Remove deprecated positional arguments for the `GraphQLError` constructor.
|
49 | 59 | - Remove deprecated distinct Enum types: `KindEnum`, `TokenKindEnum`, and `DirectiveLocationEnum`.
|
50 | 60 | - Remove deprecated `getVisitFn()` helper function, use `getEnterLeaveForKind()` instead.
|
51 |
| -- Remove deprecated `formatError()` and `printError()` helper sfunctions, use `error.toString()` and `error.toJSON()` methods instead. |
| 61 | +- Remove deprecated `formatError()` and `printError()` helper functions, use `error.toString()` and `error.toJSON()` methods instead. |
52 | 62 | - Remove deprecated positional arguments for `createSourceEventStream()`.
|
0 commit comments