- Fixed a visitType error printing the name of the variable typeName rather than its value due to a template string being incorrectly formatted. [#783] ardatan#783
- Fixed duplicate fragments getting added during transform in
FilterToSchema
#778
-
Fixed an array cloning bug in the
RenameTypes
transform #756 -
Fixed a fragments bug in the
ReplaceFieldWithFragment
transform #763
-
Schema transforms and delegation
- Substantial rewrite of internals of
mergeSchemas
anddelegateToSchema
- A new API for schema transforms has been introduced: Docs
delegateToSchema
is now a public API: DocsdelegateToSchema
now accepts an object of named parameters; positional arguments are deprecateddelegateToSchema
no longer acceptsfragmentReplacements
; instead usetransforms
info.mergeInfo.delegateToSchema
is now the preferred delegation API, rather thaninfo.mergeInfo.delegate
- Substantial rewrite of internals of
-
Other changes
- Allow
extend interface
definitions in merged schemas PR #703 - Fix typo in
@deprecated
example inschema-directives.md
PR #706 - Fix timezone bug in test for
@date
directive PR #686 - Expose
defaultMergedResolver
for schema stitching PR #685 - Add
requireResolversForResolveType
to resolver validation options PR #698 - Add
inheritResolversFromInterfaces
option tomakeExecutableSchema
andaddResolveFunctionsToSchema
PR #720
- The
SchemaDirectiveVisitor
abstraction for implementing reusable schema@directive
s has landed. Read our blog post about this new functionality, and/or check out the documentation for even more examples. PR #640
- When concatenating errors maintain a reference to the original for use downstream Issue #480 PR #637
- Improve generic typings for several resolver-related interfaces PR #662
- Remove copied apollo-link code PR #670
- Handle undefined path in
getErrorsFromParent
PR #667
- Make iterall a runtime dependency PR #627
- Added support for lexical parser options PR #567
- Support
graphql@^0.13.0
PR #567 - Don't use
Symbol
in incompatible envs Issue #535 PR #631
- Pass through apollo-link-http errors to originalError PR #621
- Fix
error.path
could beundefined
for schema stitching PR #617
- Recreate enums and scalars for more consistent behaviour of merged schemas PR #613
makeExecutableSchema
andmergeSchema
now accept an array ofIResolver
PR #612 PR #576 PR #577- Fix
delegateToSchema.ts
to remove duplicate new variable definitions when delegating to schemas PR #607 - Fix duplicate subscriptions for schema stitching PR #609
- Also recreate
astNode
property for fields, not only types, when recreating schemas. PR #580 - Fix
delegateToSchema.js
to accept and move forward args with zero or false values PR #586
- Fix a bug where inline fragments got filtered in merged schemas when a type implemented multiple interfaces PR #546
- IEnumResolver value can be a
number
type PR #568
- Include
astNode
property in schema recreation PR #569
- Added GraphQL Subscriptions support for schema stitching and
makeRemoteExecutableSchema
PR #563 - Make
apollo-link
a direct dependency PR #561 - Update tests to use
[email protected]
docstring format PR #559
- Validate query before delegation PR #551
- Add guard against invalid schemas being constructed from AST PR #547
Update to add support for [email protected]
, and drop versions before 0.11
from the peer dependencies list. The graphql
package has some breaking changes you might need to be aware of, but there aren't any breaking changes in graphql-tools
itself, or common usage patterns, so we are shipping this as a minor version. We're also running tests on this package with both [email protected]
and [email protected]
until we confirm most users have updated.
- Visit the
graphql
releases page to keep track of for breaking changes to the underlying package. - PR #541
- (Experimental) Added support for custom directives on FIELD_DEFINITION that wrap resolvers with custom reusable logic. Issue #212 PR #518 and PR #529
- Allow passing in a string
schema
tomakeRemoteExecutableSchema
PR #521
- Merge schema now can accept resolvers in a plain object format, mergeInfo added to GraphQLResolveInfo object in merged schema resolvers PR #511
- Added basic support for custom Enums Issue #363 PR #507 Read the docs here
- Added basic subscription support for local schemas Issue #420 PR #463
- Fix input object default value not propagating to merged schema Issue #497 [PR #498](PR #463](ardatan#498)
- Add the option
resolverValidationOptions.allowResolversNotInSchema
to allow resolvers to be set even when they are not defined in the schemas PR #444 - Fix schema stitching bug when aliases are used with union types and fragments PR #482
- Remove
isTypeOf
guards from merged schemas PR #484
- Incompatible fragments are now properly filtered PR #470
- Made
resolvers
parameter optional formergeSchemas
Issue #461 PR #462 - Make it possible to define interfaces in schema extensions PR #464
- Upgraded versions of dependencies
- Fix one place where
apollo-link
was being used directly
- Removed direct dependency on Apollo Link, while keeping the API the same, to work around a Launchpad npm installation issue temporarily.
- Parse type, field, and argument descriptions in
typeFromAST
. This allows the descriptions to be part of the schema when using helpers likemergeSchemas()
.
- Add ability to pass types in extension strings Issue #427 PR #430
- Translate errors better in merged schema Issue #419 PR #425
- Fix alias issues Issue #415 PR #418
- Make
@types/graphql
a dev dependency and make it's version as flexible asgraphql
PR #421
- Fix inability to add recursive queries PR #413
- Change link API to pass GraphQL context as
graphqlContext
field of link context to avoid merging problems - Fix alias problems in schema merging PR #411
- Added support for passing an Apollo Link instead of a fetcher
- Add schema merging utilities PR #382
- Update package.json to allow GraphQL.js 0.11 Issue #394 PR #395
- Fix typings for resolver options: Issue #372 PR #374
- Use defaultFieldResolver from graphql-js package instead of own one PR #373
- Remove
lodash
dependency PR #356
- Improve mocking of union and interface types PR #332
- Add argument validation in
addMockFunctionsToSchema
for 'schema' property in parameter object PR #321
- Remove dependency on
graphql-subscription
and use an interface for PubSub PR #295 - Support schema AST as a type definition input PR #300
- Update graphql typings to 0.9.0 PR #298
- Update dependencies PR #287
- Restrict version range of graphql-js peer dependency to ^0.8.0 || ^0.9.0 PR #266
- Update graphql-js dependency to include 0.9.0 PR #264
- Fix logErrors option so it logs errors if resolve function returns a promise PR #262
- use function reference instead of string for concatenateTypeDefs. PR #252
- Migrate from
typed-graphql
to@types/graphql
. PR #249
addSchemaLevelResolveFunction
resolves once per operation type and not once globally. #220- Replace node-uuid with uuid package #227
- Fix issue that prevented usage of custom scalars as arguments #224
- Remove peer dependency on
graphql-subscriptions
. #210
- Accept an async function for the schema level resolver. (@ephemer in #199)
- Fix for new custom scalar support introduced in
0.8.1
. (@oricordeau in #203)
- Support custom scalar types developed for GraphQL.js, such as graphql-type-json. (@oricordeau in #189)
- Update default resolve function to match the one from GraphQL.js (@stubailo in #183)
- Move
typed-graphql
tooptionalDependencies
(@stubailo in #183) - Set new defaults for resolver validation to match GraphQL.js so that developers need to opt-in to advanced validation (@stubailo in #183):
requireResolversForArgs = false
*requireResolversForNonScalar = false
- Fix dependency on lodash
-
Various Bugfixes (@DxCx in #129) - Istanbul coverage was not working well due to Istanbul bug #549 - Bluebird promise was not converted well on tests - "console.warn" got overwritten on tests
-
Changed GraphQL typings requirement from peer to standard (@DxCx in #129)
-
Change the missing resolve function validator to show a warning instead of an error (@nicolaslopezj in #134)
-
Add missing type annotations to avoid typescript compiler errors when 'noImplicitAny' is enabled (@almilo in #133)
-
Fix issue in addMockFunctionsToSchema when preserveResolvers is true and connector/logger is used. (@DxCx in #121)
-
Fix multiple issues in addMockFunctionsToSchema when preserveResolvers is true (support for Promises, and props defined using Object.defineProperty) (@sebastienbarre in #115)
-
Make allowUndefinedInResolve true by default (@jbaxleyiii in #117)
-
Add
requireResolversForAllFields
resolver validation option (@nevir in #107)
- Make mocking partial objects match expected behavior (@sebastienbarre in #96)
- Improved behavior when mocking interfaces & unions (@itajaja in #102)
- Unpin babel-core version to solve build problem (PR #92)
- Added support for
extend
keyword to schemaGenerator (PR #90)
- Fix a bug with addSchemaLevelResolveFunction. It now runs once per tick (PR #91)
- Add addSchemaLevelResolveFunction to exports
- Remove dist folder before prepublish to make sure files deleted in source are not included in build
- Updated GraphQL dependency to 0.6.0
- Removed all tracer code, including
Tracer
,addTracingToResolvers
anddecorateWithTracer