Skip to content

Releases

v17.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 20:15

v17.1.0 (2026-11-04)

New Feature 🚀

Bug Fix 🐞

  • #4837 fix(VariablesInAllowedPositionRule): allow fragments with variables prior to operations (@yaacovCR)
  • #4838 fix(DeferStreamDirectiveOnRootFieldRule): handle fragment cycles (@yaacovCR)
  • #4839 fix(OverlappingFieldsCanMergeRule): require same variable definitions (@yaacovCR)
  • #4853 fix(OverlappingFieldsCanMerge): fix var scope for fragment comparison cache (@yaacovCR)
  • #4841 Skip deferred fragments in collectFields only when same directive is used (@robrichard)
  • #4859 test(incremental): document bugs in shared deferred work (@duckki)
  • #4868 fix(incremental): prevent lost or delayed successful shared results (@yaacovCR)
  • #4869 fix(incremental): prevent error completions for unannounced fragments (@yaacovCR)
  • #4865 fix(validation): keep argument defaults inside fragments (@SashaMIT)
  • #4879 fix(validation): keep collected fields separate by parent type (@yaacovCR)
  • #4895 fix(validation): bound conflict descriptions (@yaacovCR)
  • #4896 fix(validation): bound nested conflict locations (@yaacovCR)
  • #4898 perf(validation): prepare fragment spreads only for comparisons (@yaacovCR)
  • #4897 feat(validation): limit overlapping field complexity (@yaacovCR)
  • #4903 fix: rename maxTokens to maxLexicalTokens (@yaacovCR)
  • #4904 memoize pathToArray to reduce memory for multiple defers at the same path (@robrichard)
  • #4908 fix: pass parser options through buildSchema (@yaacovCR)
  • #4916 fix: bound shared fragment traversal in introspection validation (@yaacovCR)
  • #4929 fix: initialize subscription validation variables (@yaacovCR)
  • #4937 fix: skip disabled argument suggestions (@yaacovCR)
  • #4946 refactor: track fragment validation work (@yaacovCR)
  • #4949 refactor: account for subscription field collection (@yaacovCR)
  • #4951 refactor: account for field return type comparisons (@yaacovCR)
  • #4915 fix: align minified source location at chunk boundaries (@fallintoplace)
  • #4977 fix: keep minified EOF carets after the final character (@yaacovCR)
  • #4979 fix: reference ESM source maps from every emitted module (@yaacovCR)
  • #4980 fix: identify ESM modules in source map metadata (@yaacovCR)
  • #4983 fix: avoid inherited variable getters in nested literal values (@yaacovCR)

Docs 📝

4 PRs were merged

Polish 💅

69 PRs were merged
  • #4836 refactor: add map keyed by set membership (@yaacovCR)
  • #4843 polish(OverlappingFieldsCanMerge: add tests documenting existing behavior (@yaacovCR)
  • #4855 refactor(validation): add overlapping fields rule context (@yaacovCR)
  • #4856 refactor(validation): name the variable map type (@yaacovCR)
  • #4857 polish(validation): skip empty field comparisons (@yaacovCR)
  • #4851 test: accept non-null union implementing a nullable union (@jayphelps)
  • #4845 polish(validateInputValue): cover invalid values in iterable input (@vrana055)
  • #4844 polish(introspection): cover __Type.description on wrapping types (@vrana055)
  • #4860 docs: fix incorrect API doc examples and copy-pasted descriptions (@Cito)
  • #4867 refactor(incremental): extract maybeFinishGroup (@yaacovCR)
  • #4871 refactor(validation): rename NodeAndDef to FieldDetails (@yaacovCR)
  • #4872 refactor(validation): name field detail lists (@yaacovCR)
  • #4873 refactor(validation): rename NodeAndDefCollection to GroupedFieldSet (@yaacovCR)
  • #4874 refactor(validation): align field collection names with execution (@yaacovCR)
  • #4875 refactor(validation): convert FieldDetails tuples to objects (@yaacovCR)
  • #4876 refactor(validation): convert CollectFieldsResult tuples to objects (@yaacovCR)
  • #4877 refactor(validation): convert conflict tuples to objects (@yaacovCR)
  • #4878 refactor(validation): make unordered pair lookup independent of key order (@yaacovCR)
  • #4880 refactor(validation): rename VariableMap to VariableScope (@yaacovCR)
  • #4881 perf(validation): share field collections across scopes (@yaacovCR)
  • #4882 refactor(validation): check stream overlap in findConflict (@yaacovCR)
  • #4883 perf(validation): prepare field comparison data together (@yaacovCR)
  • #4885 perf(validation): reuse scope maps across equivalent fragment spreads (@yaacovCR)
  • #4886 refactor(validation): compare value structure directly (@yaacovCR)
  • #4888 refactor(validation): compare var...
Read more

v16.15.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 20:15

v16.15.0 (2026-11-04)

New Feature 🚀

Backports:

Bug Fix 🐞

  • #4900 Backport OverlappingFieldsCanMerge changes (v16) (@yaacovCR)
  • #4909 Backport maxLexicalTokens, maxComments, maxSourceLength parser options (v16) (@yaacovCR)
  • #4917 fix: bound shared fragment traversal in introspection validation (v16) (@yaacovCR)

Docs 📝

Internal 🏠

  • #4826 chore(release): protect latest release channels from v16 (@yaacovCR)

Committers: 1

v15.11.0

Choose a tag to compare

@github-actions github-actions released this 04 Nov 20:14

v15.11.0 (2026-11-04)

New Feature 🚀

Backported PRs:

Bug Fix 🐞

  • #4899 Backport OverlappingFieldsCanMerge changes (v15) (@yaacovCR)
  • #4910 Backport maxLexicalTokens, maxComments, maxSourceLength parser options (v15) (@yaacovCR)
  • #4918 fix: bound shared fragment traversal in introspection validation (v15) (@yaacovCR)

Committers: 1

v15.10.3

Choose a tag to compare

@github-actions github-actions released this 28 Aug 08:56

v15.10.3 (2026-08-28)

Internal 🏠

Committers: 1

v17.0.2

Choose a tag to compare

@github-actions github-actions released this 03 Jul 06:28

v17.0.2 (2026-07-03)

Bug Fix 🐞

  • #4832 fix: detect default-value changes on input object fields (@spokodev)

Polish 💅

  • #4829 fix(mapSchemaConfig): fix context for schema argument mapper (@yaacovCR)

Committers: 2

v17.0.1

Choose a tag to compare

@github-actions github-actions released this 16 Jun 19:43

v17.0.1 (2026-06-16)

Bug Fix 🐞

  • #4824 fix(diagnostics): emit asyncStart after promise settlement to match native tracePromise (@logaretm)

Internal 🏠

2 PRs were merged

Committers: 2

v17.0.0

Choose a tag to compare

@github-actions github-actions released this 15 Jun 17:11

v17.0.0 (2026-06-15)

New Feature 🚀

Bug Fix 🐞

  • #4799 fix: raise request error on invalid fragment variables (@yaacovCR)
  • #4800 fix: apply directives when SDL contains type definitions and extensions with directives (@yaacovCR)
  • #4564 OneOf Inhabitability (@jbellenger)
  • #4814 fix(KnownDirectivesRule): locations for input field arguments in extensions (@yaacovCR)
  • #4726 feat(validation): reject directive definition cycles (@yaacovCR)
  • #4815 Revert "feat(validation): reject directive definition cycles (#4726)" (@yaacovCR)

Docs 📝

11 PRs were merged

Polish 💅

2 PRs were merged

Internal 🏠

6 PRs were merged

Committers: 3

v16.14.2

Choose a tag to compare

@github-actions github-actions released this 09 Jun 09:08

v16.14.2 (2026-06-09)

Docs 📝

7 PRs were merged

Polish 💅

  • #4787 docs: update documentation for v17 release candidate (@yaacovCR)

Committers: 2

v17.0.0-rc.0

v17.0.0-rc.0 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jun 11:20

v17.0.0-rc.0 (2026-06-02)

New Feature 🚀

Bug Fix 🐞

  • #4761 fix: DeferStreamDirectiveOnRootField forbids fragments on abstract types (@robrichard)
  • #4762 fix: DeferStreamDirectiveOnValidOperations fragment tracking (@robrichard)
  • #4784 fix: do not copy over stack from error cause (@Malien)

Docs 📝

  • #4781 docs: improve deprecation information regarding originalError and cause (@yaacovCR)

Committers: 4

v17.0.0-beta.2

v17.0.0-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Jun 23:35

v17.0.0-beta.2 (2026-06-02)

Breaking Change 💥

  • #4751 build: strip private discriminator from package types (@yaacovCR)
  • #4752 fix: discriminate between GraphQLNonNull and GraphQLList (@yaacovCR)
  • #4770 refactor: extract ExecutionArgs types to separate file (@yaacovCR)

New Feature 🚀

  • #4485 Adopt Error.cause in favor of originalError (@Malien)

Bug Fix 🐞

Docs 📝

3 PRs were merged
  • #4742 docs: add v17 API docs lint coverage (@yaacovCR)
  • #4756 docs: hide private internals schema.__validationErrors and inputValue._memoizedCoercedDefaultValue (@yaacovCR)
  • #4758 docs: fix inline examples, deprecation descriptions, type category (@yaacovCR)

Polish 💅

Internal 🏠

3 PRs were merged

Committers: 2

⌂ 换网址