Releases: graphql-hive/graphql-modules
Releases · graphql-hive/graphql-modules
v0.6.0
- Create ES Modules bundle for tree-shaking
- Apollo modules compability, that way you can make your app faster;
- See it on docs -> Integrate with Apollo Server
- No need to pass
contextforexpress-graphqlwhich increases the performance a lot
v0.4.2
v0.4.1
- Move
epoxy,sonarandutilstographql-toolkitand use it inside@graphql-modules/core.
56a96be - Do not search for subscribe method if it is not an object #303
- Resolve context if it is promise. This makes GraphQL Modules compatible with browser; #313
- Fix
onDisconnectHook - Clear cache before resetting the configuration object in case of multiple
forRootcall;
7334ffe
-Fix error handling in context build phase
0.4.0
- Remove circular dep support and using name in definitions are also removed
🚀 BREAKING CHANGE! ; circular deps must be fixed in the projects which uses old version - Reimplement
forRootandforChildlogic - Remove
modulesMap - Generate more readable module names
- Reimplement and optimize schema merge logic
- Remove
mergeModules - Add more unit tests
- Implement better
directiveResolverslogic - Make sure session is deleted from memory when WS connection is terminated
- Custom logger definition enhancement
- Move
composeResolverstoutils resolversfield is now able to take an array of resolvers.
import { GraphQLModule } from '@graphql-modules/core';
import { loadResolversFiles, loadSchemaFiles } from '@graphql-modules/sonar';
export const UserModule = new GraphQLModule({
typeDefs: loadSchemaFiles(__dirname + '/schema/'),
resolvers: loadResolversFiles(__dirname + '/resolvers/'),
});- FIX: Call
middlewareimmediately after schema built - FIX: Expose
ModuleSessionInfo - Add Default
ProviderScopeoption;defaultProviderScope - Performance Improvements; initial schema construction and context builder is way faster. (80% / 90% short response time)
v0.3.0
core
- Subscriptions Support w/ onConnect hook #267
- Add
configandnamefield inModuleSessionInfo - Better error handling for undefined service identifier
- Better error handling for context builder
- 🚀 BREAKING CHANGE! Able to use
Injectin a property and useInjectFunctionfor factory functions instead ofInject
@Injectable()
class SomeProvider {
@Inject(SomeOtherProvider)
someOtherProvider: SomeOtherProvider;
}resolvers: InjectFunction(SomeProvider)(someProvider => ({
foo: () => someProvider.foo()
}))- 🚀BREAKING CHANGE! Now
sessionname is used for the network request object passed from GraphQL-Server to prevent confusion betweenrequestandreqofexpress. - 🚀BREAKING CHANGE!
CommunicationBridgeis now deprecated; you can usePubSubimplementations recommended by Apollo.- You can see the docs for details and changes in the API.
v0.2.18
epoxy
- Fixed issues with merging GraphQL schemas that uses
extend typesyntax (#238)
core
- Fixed issues with context merging (#229)
- Fixed issues with Apollo
dataSourcesintegration (#229) - Support
resolverValidationOptions(https://www.apollographql.com/docs/graphql-tools/generate-schema.html#makeExecutableSchema) - Prevent illegal resolver invocation and use way to access children cache (24aa36a)
- Fixes for modules cache (d74cc12)
- Ignore
scalarresolvers during resolvers wrapping (76f0fc4)
di
- Fixed issues with exported
ProviderScope(now exported as validenum)
v0.2.17
- DI package is now seperated;
-
- Injectable and Inject are now in
@graphql-modules/diinstead of@graphql-modules/core
- Injectable and Inject are now in
- Do not add an extra schema definition to the final typeDefs.
- Introduce
configRequiredoption; if it is true, it won't be able to generate schema without a valid configuration. directiveResolverssupport- Injection for factory functions using
Injectdecorator-like function. - Middleware option to mutate schema and injector
- Fix schema merging
- Do not emit scalars
v0.2.10
core
- Fix IResolver typings
- You can disable circular imports
-
mergeCircularImports: false
- You can manipulate
schemaand other generated parts of module using middleware -
middleware: ({ schema }) => { /*some logic*/ return { schema }; }
epoxy
- Extension nodes are now supported
-
extend type Something
- SchemaDefinition generation are now optional
-
useSchemaDefinition