graphql-s2s
graphql-s2s copied to clipboard
Feature request: add a flag to transpileSchema to skip schema checks
Hello! I was trying to make type inheritance work in graphql and your library is perfect for this. There is just one small issue that doesn't let me use it out of the box: when I call transpileSchema - it runs some checks, for example this one: https://github.com/nicolasdao/graphql-s2s/blob/master/src/graphqls2s.js#L894. And it breaks in case of schema stiching.
In my pipeline I use .graphql files and I made a very simple loader:
const { transpileSchema } = require('graphql-s2s').graphqls2s;
module.exports = (source) => {
const schema = transpileSchema(source);
console.log(schema);
return schema;
}
this runs before graphql-tag loader and it works just fine if I comment out those interface checks. Would be nice if there was a flag that could ignore those checks if it's passed. I can probably contribute, but would be nice if you could point what other places should be affected by that flag.
Thanks a lot for your feature request @healqq. We're glad to hear that you find our lib helpful.
We'll deal with your request asap.
Have a great weekend.
Cheers,
Nic
Hi @healqq ,
Do you think you could give me some examples to recreate that issue? I need that example to build some unit tests and make sure all is ok.
Thanks.
Nic
@nicolasdao something like that should work:
// index.js
import { transpileSchema } from 'graphql-s2s';
const type = `
type Entity implements Identifiable {
id: Int!
}
`;
// Should not throw an exception that Identifiable is not defined
const schema = transpileSchema(type);
Awesome @healqq. Thanks.