Skip to content

Releases: graphql/graphql-js

v0.4.18

09 Mar 02:26
Compare
Choose a tag to compare

New:

  • Adds validator to ensure variable names are unique (#296)

v0.4.17

09 Feb 08:26
Compare
Choose a tag to compare

Fixes:

  • Fix a case where the AST printer could erroneously exclude information from anonymous operations (#289)

v0.4.16

03 Feb 06:04
Compare
Choose a tag to compare

New:

  • Utilities for comparing GraphQL types are now exported directly. (aff18e6)

Fixes:

  • No longer parses documents which contain u2028 or u2029 characters, to comply with the spec. This is technically breaking, but these are so rare that I doubt anyone will encounter this.

v0.4.15

03 Feb 01:24
Compare
Choose a tag to compare

New:

  • The full GraphQL API is now exported from the top module. If you're building a tool that uses GraphQL.js, hopefully this makes it easier to import and use utilities in this library. (4547904)
  • Clearer error messages:
    • When a requested field cannot be found on an interface or union, we'll suggest an inline fragment. (#282)
    • When a variable isn't used, we'll include the name of the query that defined it.
    • When a field typed as List returns something that is not a list, the error will include the name of the type and field. (#276)
    • When an input type includes unknown information, ensure it's name is printed. (#261)

v0.4.14

01 Dec 08:19
Compare
Choose a tag to compare

New:

  • Original errors can now be retrieved from any GraphQLError with error.originalError #251.
  • visitWithTypeInfo now supports visitors which edit or break-early.
  • visitInParallel now experimentally supports visitors which edit or break-early.

Fixes:

  • No longer allows 52-bit integers, instead requiring 32-bit values as per the spec.
  • No more false-positive validation errors when validating a query which contains experimental type definitions #255.
  • visitInParallel now correctly skips subtrees when a visitor returns false #254.
  • Release now uses babel-runtime again, broken in 0.4.13, #246.

v0.4.13

17 Nov 20:10
Compare
Choose a tag to compare

New:

  • import { extendSchema } from 'graphql/utilities allows extending an existing schema with the GraphQL type definition language (#227)
  • When an Object type implements an Interface type, a field on the Object type can return a more specific type than the same field defined on the Interface type. This "covariant return types" is now also defined in the GraphQL Spec (#239)
  • Loosens the rule which requires overlapping fields to be unambiguously merged in the case that two same-named fields are statically known to not overlap due to being conditional to different types. This rule change has also been reflected in the GraphQL Spec (#229)
  • Removes the rule which requires overlapping fields to have equivalent directives. This rule change has also been reflected in the GraphQL Spec (#230)
  • Validation now ~25-30x faster due to a number of improvements including simplifications, algorithm improvements, memoization, and running validation rules in parallel.
    • Parallelizing rules will change the order in which validation errors are reported within a file.

Fixes:

  • Fixes issues when used in a Babel 6 environment (#228)
  • Validation error of incorrect variable placement now includes a reference to the variable definition for easier debugging.
  • Validation errors of ambiguous overlapping fields now includes clearer non-interleaved references to the overlapping fields.
  • Input object validation errors now include more accurate error messages documenting which input object field contains the error (#204)

v0.4.12

17 Nov 20:10
Compare
Choose a tag to compare

New:

  • Experimental customizable validation

v0.4.11

27 Oct 03:02
Compare
Choose a tag to compare

Fixes:

  • Validator could false positive and be overly verbose when spreading an unknown fragment (8c62789)

v0.4.10

27 Oct 02:34
Compare
Choose a tag to compare

New:

  • buildClientSchema() now supports deprecated fields #216
  • Custom directives now supported by GraphQLSchema #215
  • concatAST() utility added, which helps support validation of graphql fragments spread across multiple sources (3a6b4d1)

Fixes:

  • Nested input objects with similarly named keys could falsely fail validation #206

v0.4.9

22 Oct 05:53
Compare
Choose a tag to compare

New

  • Broadened legal use of interfaces to allow for additional arguments on implementing fields (see graphql/graphql-spec#110)