You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to run MOST MINIMALISTIC gateway but I am running into false positive error when one of the dependencies is thinking that Use Objet type is "extension" type.
Error: A valid schema couldn't be composed. The following composition errors were found:
[auth] Type "User" is an extension type, but there is no type definition for "User" in any subgraph.
Auth Module:
@ObjectType()
@Directive('@key(fields: "id")') // this line breaks the gateway
export class User {
@Field((type) => ID)
id: number
@Field()
name: string
@Field()
email: string
}
@Resolver(() => User)
export class UserResolver {
constructor(private userService: UserService) {}
@Query((returns) => [User])
users() {
return this.userService.findAll()
}
}
@Module({
imports: [
WrappedConfigModule,
HomeModule,
GraphQLModule.forRoot<ApolloFederationDriverConfig>({
driver: ApolloFederationDriver,
playground: true,
autoSchemaFile: true,
introspection: true,
plugins: [ApolloServerPluginInlineTrace()],
}),
UserModule,
],
})
export class AppModule {}
I decided to patch this file and call it a day. The bug is likely not caused here but by @Directive('@key(fields: "id")') directive - either the decorator is problematic or the underlying tech.
`--- node_modules/@apollo/federation-internals/dist/schemaUpgrader.js.bak 2024-06-03 14:05:31
+++ node_modules/@apollo/federation-internals/dist/schemaUpgrader.js 2024-06-03 14:05:54
@@ -286,7 +286,7 @@
return;
}
}
- this.addError(error_1.ERRORS.EXTENSION_WITH_NO_BASE.err(`Type "${type}" is an extension type, but there is no type definition for "${type}" in any subgraph.`, { nodes: extensionAST }));
+ // this.addError(error_1.ERRORS.EXTENSION_WITH_NO_BASE.err(`Type "${type}" is an extension type, but there is no type definition for "${type}" in any subgraph.`, { nodes: extensionAST }));
}
preUpgradeValidations() {
for (const type of this.schema.types()) {
`
Issue Description
I am trying to run MOST MINIMALISTIC gateway but I am running into false positive error when one of the dependencies is thinking that Use Objet type is "extension" type.
Auth Module:
Events Module:
Gateway Module:
Link to Reproduction
https://github.com/developer239/nest-microservices-example/tree/v2
Reproduction Steps
The text was updated successfully, but these errors were encountered: