Changelog
Features
- Improve error handling 41
- Add ability to add custom errors (inheriting from `GraphQLError`)
- Expose all the function and classes
- Move modules from `graphql.core.*` to `graphql.*`
- Make tests relative to the directories
Breaking changes
Improve the executor to be closer to the reference implementation:
- Uses `Promise` instead of `Deferred` as it simplifies the implementation. Use parallel resolvers automatically as default behavior when available. Use `pypromise` package. Related PR: 59
GraphQL-js Commit Checklist
- Allow edit nodes on enter and on leave: https://github.com/graphql/graphql-js/commit/ecfdb3bb3e90755a7bff6155af50591d52e75625 + https://github.com/graphql/graphql-js/commit/d2c005afc87353eceadc03592e74bd6e44063e8e
- Nit: fix missing quote in error message: https://github.com/graphql/graphql-js/commit/db0924a91f0a6c4cea8ff9a93713cbfe69c5ae8f
- Add test for parseLiteral on ComplexScalar: https://github.com/graphql/graphql-js/commit/b3a512787618cfbed20c9717daf2d69444bf7f33
- Extract completeListValue function from CompleteValue: https://github.com/graphql/graphql-js/compare/57d71e108afc0bdd205f5019fb8d0143b24b55b6...7a15a3f17452fadf2cc7d4f43fd41a7c24b38c8a + https://github.com/graphql/graphql-js/commit/533fc43f7d5836fc9b6a3eafde9801db9a3ee011
- [RFC] Proposed change to directive location introspection: https://github.com/graphql/graphql-js/commit/e89c19d2ce584f924c2e0e472a61bb805ce260d4
- Fix error message for missing operation + tests: https://github.com/graphql/graphql-js/commit/debf3d1fbffc6b31e3b8425a28d3478d8cc0be78 https://github.com/graphql/graphql-js/commit/3278e861837cd3f7d17eaec54f3f04b175300826
- [RFC] Directives in schema language: https://github.com/graphql/graphql-js/commit/fdafe32724f2d6dac1ba360f1a440c0e633e75d9
- Updating schema parser to more closely match current state of RFC: https://github.com/graphql/graphql-js/pull/323/commits/b0885a038ec0e654962d69fb910ac86659279579
- [RFC] Add Schema Definition to IDL https://github.com/graphql/graphql-js/commit/8379e71f7011fe044574f4bdef2a761d18d6cf2c
- Remove unused function parameters https://github.com/graphql/graphql-js/commit/43992e3a60d7bf8f5e7d2f29dfae302b5ba72eec
- Include test for extending a schema that uses Enums https://github.com/graphql/graphql-js/commit/37924d240d7e094382927e4f612d61ff7dda3cb3
- Cache client schema exe function, and include test for unreferenced interface https://github.com/graphql/graphql-js/commit/1083c7e0f3dbd6be801a12f688fe0959716c54ac
- Naming similarity https://github.com/graphql/graphql-js/commit/3f6a7f4ca9cd9242819e0e14fc7916635fbeeced
- Move getTypeOf to execute.js and rename to defaultResolveTypeFn to mirror defaultResolveFn https://github.com/graphql/graphql-js/commit/edc405a11508a110759ce53c9efb2eb6dd2d181c + https://github.com/graphql/graphql-js/commit/a781b556eea66bbf3cd82e438f560be9d9bec22c
- Add tests and refine default resolve function. https://github.com/graphql/graphql-js/commit/d506c23e413a0b2d5b6b169caca4af928996d1d9
- Add GraphQLSchema types field https://github.com/graphql/graphql-js/commit/6a1f23e1f9c1e6bf4cea837bc9bb6eae0fb5c382 + Fix test https://github.com/graphql/graphql-js/commit/09be751e995dd641f138f67ff9f420525950fad1
- [RFC] Add explicit context arg to graphql execution https://github.com/graphql/graphql-js/commit/d7cc6f9aed462588291bc821238650c98ad53580
- Improve coercion error messages https://github.com/graphql/graphql-js/commit/dea5aacca01f4429026bea3d97ea7cbc88b33bcf + Minor touch ups: https://github.com/graphql/graphql-js/commit/136630f8fd8778c4d2e61d07c0b1ec47f99c9bf6
- Clean up tests https://github.com/graphql/graphql-js/commit/8514211b674d1f282fdff73e412c289435ab6920
- Fix bug where include directive is ignored if skip is present. https://github.com/graphql/graphql-js/commit/d6da0bff7f877e6a4fb66119796809f9c207f841 + Spec compliant skip/include https://github.com/graphql/graphql-js/commit/47f87fa701cb33fc1fb0ca65b4668c7a14a5ad11
- Fix tests on abstract type invariant https://github.com/graphql/graphql-js/commit/cf5b2340f934c94b6c960d765d9fc26a02fb6250
- Remove non spec compliant test https://github.com/graphql/graphql-js/commit/07e627adda2b236e720ec352b21eb3043170c60f
- Add tests for type comparators https://github.com/graphql/graphql-js/commit/3201ebb825f7bab4ca4856238ade4603e15a5abc
- Add sanity checks for schema to allow only a single query, mutation, subscription in schema https://github.com/graphql/graphql-js/commit/ffe76c51c44922e2a24494ef0def9e3b999caacb
- RFC: Return type overlap validation https://github.com/graphql/graphql-js/commit/c034de91acce10d5c06d03bd332c6ebd45e2213c