27 KiB
Change log
4.0.8
- Update
peerDependenciesrange forgraphqlto includegraphql@15.x.
4.0.7
- Filter
extensionsprior to passing them tobuildASTSchema, in an effort to provide minimum compatibilty forgraphql@14-compatible schemas with the upcominggraphql@15release. This PR does not, however, bring support for newergraphql@15features like interfaces implementing interfaces. #1284
4.0.6
- Use
getIntrospectionQueryinstead of deprecatedintrospectionQueryconstant from graphql-js @derek-miller in #1228
4.0.5
- Fixes a bug where schemas with scalars could not be merged when passed to
mergeSchemasas a string orGraphQLSchema.
@hayes in #1062 - Make
mergeSchemasoptionally merge directive definitions.
@freiksenet in #1003 - Allow user-provided
buildSchemaoptions.
@trevor-scheer in #1154
4.0.4
- Make
WrapQuerywork for non-root fields
@mdlavin in #1007 - Update resolvers.md to clarify array usage
@alvin777 in #1005 - Add missing property to
mergeSchemasapi reference.
@PlayMa256 in #1014 - Documentation updates for mockServer
@dougshamoo in #1012 - Fix default merged resolver behavior
@mfix22 in #983 - Use
TArgsgeneric whereverIFieldResolveris used.
@brikou in #955 - Include deprecations from string SDL in mergeSchemas.
@evans in #1041
4.0.3
- Replaced broken link in docs homepage with Launchpad example
@kriss1897 in #965 - Fix invalid query in schema delegation example.
@nico29 in #980 - Update package.json
repositoryfield.
@dlukeomalley in #979 - Add support for passing a parsed schema ast to
mergeSchemas
@ganemone in #977 - Changes to
extractExtensionDefinitionsto supportgraphql-jsunion and enum extensions.
@jansuchy in #951 - Add docs for
mockServer(closes #951)
@mfix22 in PR #982 - Fix regression where custom scalars were incorrectly replaced while recreating schema with
visitSchema.
@tgriesser in #985
4.0.2
- Fix regression in enum input mapping.
@tgriesser in #974
4.0.1
- Fix regression in enum internal value mapping.
@tgriesser in #973
4.0.0
- Support
graphqland@types/graphql14.x.
NOTE:graphql14 includes breaking changes. We're bumping the major version ofgraphql-toolsto accommodate those breaking changes. If you're planning on usinggraphql14 withgraphql-tools4.0.0, please make sure you've reviewed thegraphqlbreaking changes list. @hwillson in #953 - Fix template strings usage in guessSchemaByRootField error message.
@nagelflorian in #936 - Update
IFieldResolverto allow typed input args.
@luk3thomas in #932 - Changes to
extractExtensionDefinitionsto properly supportgraphql-jsinput extensions.
@jure in #948 - Stop automatically shallow cloning (via object spread syntax) transformed subscription results. Transformed subscription results are not always objects, which means object spreading can lead to invalid results.
@ericlewis in #928 - Re-use errors with an
extensionsproperty to make compatible with Apollo Server and it's built-in errors.
@edorsey in #925 - Documentation updates.
@Amorites in #944
@trevor-scheer in #946
@dnalborczyk in #934
@zcei in #933
v3.1.1
- Revert the added
casualdependency for mocking, since it was causing issues for people usinggraphql-toolsin the browser.
v3.1.0
- Loosens the apollo-link dependency PR #765
- Use
getDescriptionfromgraphql-jspackage PR #672 - Update
IResolversto use source & context generics and to support all resolver use cases. #896 WrapQuery'swrapperparam can now return a SelectionSet. PR #902 Issue #901- Add null to return type of directive visitors in the TypeScript definition.
- Make sure mergeSchemas keeps Enum descriptions and deprecation status. PR 898
- Add
inheritResolversFromInterfacesoption tomergeSchemasPR #812 - Added filtering of empty selection sets in FilterToSchema #827
- Add support for overlapping fragments in ReplaceFieldWithFragment. #894
delegateToSchemanow behaves likeinfo.mergeInfo.delegateToSchemafor fragment handling Issue #876 PR #885- Make schema transforms work with subscriptions, make it so that subscription errors don't disappear when using mergeSchemas #793 #780
v3.0.5
- Update apollo-link to 1.2.2 #785
v3.0.4
- Make sure
dist/generateisn't excluded when published.
v3.0.3
- Pass on operation name when stitching schemas. Issue #522 PR #849
- Fixed errors that occurred when a fragment field argument used a variable defined in the parent query. Issue #753 PR #806
v3.0.2
- Fixed duplicate fragments getting added during transform in
FilterToSchema#778 - Fixed a visitType error printing the name of the variable typeName rather than its value due to a template string being incorrectly formatted. #783
v3.0.1
-
Fixed an array cloning bug in the
RenameTypestransform #756 -
Fixed a fragments bug in the
ReplaceFieldWithFragmenttransform #763
v3.0.0
-
Schema transforms and delegation
- Substantial rewrite of internals of
mergeSchemasanddelegateToSchema - A new API for schema transforms has been introduced: Docs
delegateToSchemais now a public API: DocsdelegateToSchemanow accepts an object of named parameters; positional arguments are deprecateddelegateToSchemano longer acceptsfragmentReplacements; instead usetransformsinfo.mergeInfo.delegateToSchemais now the preferred delegation API, rather thaninfo.mergeInfo.delegate
- Substantial rewrite of internals of
-
Other changes
v2.24.0
- Allow
extend interfacedefinitions in merged schemas PR #703 - Fix typo in
@deprecatedexample inschema-directives.mdPR #706 - Fix timezone bug in test for
@datedirective PR #686 - Expose
defaultMergedResolverfor schema stitching PR #685 - Add
requireResolversForResolveTypeto resolver validation options PR #698 - Add
inheritResolversFromInterfacesoption tomakeExecutableSchemaandaddResolveFunctionsToSchemaPR #720
v2.23.0
- The
SchemaDirectiveVisitorabstraction for implementing reusable schema@directives has landed. Read our blog post about this new functionality, and/or check out the documentation for even more examples. PR #640
v2.22.0
- 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
getErrorsFromParentPR #667
v2.21.0
- Make iterall a runtime dependency PR #627
- Added support for lexical parser options PR #567
- Support
graphql@^0.13.0PR #567 - Don't use
Symbolin incompatible envs Issue #535 PR #631
v2.20.2
- Pass through apollo-link-http errors to originalError PR #621
v2.20.1
- Fix
error.pathcould beundefinedfor schema stitching PR #617
v2.20.0
- Recreate enums and scalars for more consistent behaviour of merged schemas PR #613
makeExecutableSchemaandmergeSchemanow accept an array ofIResolverPR #612 PR #576 PR #577- Fix
delegateToSchema.tsto remove duplicate new variable definitions when delegating to schemas PR #607 - Fix duplicate subscriptions for schema stitching PR #609
v2.19.0
- Also recreate
astNodeproperty for fields, not only types, when recreating schemas. PR #580 - Fix
delegateToSchema.jsto accept and move forward args with zero or false values PR #586
v2.18.0
- Fix a bug where inline fragments got filtered in merged schemas when a type implemented multiple interfaces PR #546
- IEnumResolver value can be a
numbertype PR #568
v2.17.0
- Include
astNodeproperty in schema recreation PR #569
v2.16.0
- Added GraphQL Subscriptions support for schema stitching and
makeRemoteExecutableSchemaPR #563 - Make
apollo-linka direct dependency PR #561 - Update tests to use
graphql-js@0.12docstring format PR #559
v2.15.0
- Validate query before delegation PR #551
v2.14.1
- Add guard against invalid schemas being constructed from AST PR #547
v2.14.0
Update to add support for graphql@0.12, 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 graphql@0.11 and graphql@0.12 until we confirm most users have updated.
- Visit the
graphqlreleases page to keep track of for breaking changes to the underlying package. - PR #541
v2.13.0
- (Experimental) Added support for custom directives on FIELD_DEFINITION that wrap resolvers with custom reusable logic. Issue #212 PR #518 and PR #529
v2.12.0
- Allow passing in a string
schematomakeRemoteExecutableSchemaPR #521
v2.11.0
- Merge schema now can accept resolvers in a plain object format, mergeInfo added to GraphQLResolveInfo object in merged schema resolvers PR #511
v2.10.0
- Added basic support for custom Enums Issue #363 PR #507 Read the docs here
v2.9.0
- 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](https://github.com/apollographql/graphql-tools/pull/498)
v2.8.0
- Add the option
resolverValidationOptions.allowResolversNotInSchemato 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
isTypeOfguards from merged schemas PR #484
v2.7.2
- Incompatible fragments are now properly filtered PR #470
v2.7.1
- Made
resolversparameter optional formergeSchemasIssue #461 PR #462 - Make it possible to define interfaces in schema extensions PR #464
v2.7.0
- Upgraded versions of dependencies
v2.6.1
- Fix one place where
apollo-linkwas being used directly
v2.6.0
- 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().
v2.5.0
- Add ability to pass types in extension strings Issue #427 PR #430
v2.4.0
- Translate errors better in merged schema Issue #419 PR #425
v2.3.0
- Fix alias issues Issue #415 PR #418
- Make
@types/graphqla dev dependency and make it's version as flexible asgraphqlPR #421
v2.2.1
- Fix inability to add recursive queries PR #413
v2.2.0
- Change link API to pass GraphQL context as
graphqlContextfield of link context to avoid merging problems - Fix alias problems in schema merging PR #411
v2.1.0
- Added support for passing an Apollo Link instead of a fetcher
v2.0.0
- Add schema merging utilities PR #382
v1.2.3
- Update package.json to allow GraphQL.js 0.11 Issue #394 PR #395
v1.2.1
- Fix typings for resolver options: Issue #372 PR #374
v.1.2.0
- Use defaultFieldResolver from graphql-js package instead of own one PR #373
- Remove
lodashdependency PR #356
v.1.1.0
- Improve mocking of union and interface types PR #332
v1.0.0
- Add argument validation in
addMockFunctionsToSchemafor 'schema' property in parameter object PR #321
v0.11.0
- Remove dependency on
graphql-subscriptionand 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
v0.10.1
- Update dependencies PR #287
v0.10.0
- Restrict version range of graphql-js peer dependency to ^0.8.0 || ^0.9.0 PR #266
v0.9.2
- 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
v0.9.1
- use function reference instead of string for concatenateTypeDefs. PR #252
v0.9.0
- Migrate from
typed-graphqlto@types/graphql. PR #249
v0.8.4
addSchemaLevelResolveFunctionresolves 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
v0.8.3
- Remove peer dependency on
graphql-subscriptions. #210
v0.8.2
- 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)
v0.8.1
- Support custom scalar types developed for GraphQL.js, such as graphql-type-json. (@oricordeau in #189)
v0.8.0
- Update default resolve function to match the one from GraphQL.js (@stubailo in #183)
- Move
typed-graphqltooptionalDependencies(@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
v0.7.2
v0.7.1
- Fix dependency on lodash
v0.7.0
-
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)
v0.6.6
-
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
requireResolversForAllFieldsresolver validation option (@nevir in #107)
v0.6.4
- Make mocking partial objects match expected behavior (@sebastienbarre in #96)
- Improved behavior when mocking interfaces & unions (@itajaja in #102)
v0.6.3
- Unpin babel-core version to solve build problem (PR #92)
- Added support for
extendkeyword to schemaGenerator (PR #90)
v0.6.2
- Fix a bug with addSchemaLevelResolveFunction. It now runs once per tick (PR #91)
v0.5.2
- Add addSchemaLevelResolveFunction to exports
- Remove dist folder before prepublish to make sure files deleted in source are not included in build
v0.5.1
- Updated GraphQL dependency to 0.6.0
- Removed all tracer code, including
Tracer,addTracingToResolversanddecorateWithTracer