The Graph of Everything - Federated architecture for any API service
MIT License
Bot releases are visible (Hide)
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
eade5bb9f: New noDeduplication
flag
By default, JSON Schema handler tries to deduplicate similar JSON Schema types;
Let's say we have the following JSON Schema;
{
"definitions": {
"Book": {
"type": "object",
"title": "Book",
"properties": {
"title": {
"type": "string"
},
"author": {
"type": "string"
},
"price": {
"type": "number"
},
"similarBooks": {
"type": "array",
"items": {
"$ref": "#/definitions/SimilarBook"
}
}
}
},
"SimilarBook": {
"type": "object",
"title": "Book",
"properties": {
"title": {
"type": "string"
},
"author": {
"type": "string"
},
"price": {
"type": "number"
},
"similarBooks": {
"type": "array",
"items": {
"$ref": "#/definitions/SimilarBook"
}
}
}
}
}
}
And the result will be the following by default;
type Book {
title: String
author: String
price: Float
similarBooks: [Book]
}
But if you set this flag true, it will not deduplicate similar JSON Schema types;
type Book {
title: String
author: String
price: Float
similarBooks: [SimilarBook]
}
type SimilarBook {
title: String
author: String
price: Float
similarBooks: [SimilarBook]
}
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
eade5bb9f: New noDeduplication
flag
By default, JSON Schema handler tries to deduplicate similar JSON Schema types;
Let's say we have the following JSON Schema;
{
"definitions": {
"Book": {
"type": "object",
"title": "Book",
"properties": {
"title": {
"type": "string"
},
"author": {
"type": "string"
},
"price": {
"type": "number"
},
"similarBooks": {
"type": "array",
"items": {
"$ref": "#/definitions/SimilarBook"
}
}
}
},
"SimilarBook": {
"type": "object",
"title": "Book",
"properties": {
"title": {
"type": "string"
},
"author": {
"type": "string"
},
"price": {
"type": "number"
},
"similarBooks": {
"type": "array",
"items": {
"$ref": "#/definitions/SimilarBook"
}
}
}
}
}
}
And the result will be the following by default;
type Book {
title: String
author: String
price: Float
similarBooks: [Book]
}
But if you set this flag true, it will not deduplicate similar JSON Schema types;
type Book {
title: String
author: String
price: Float
similarBooks: [SimilarBook]
}
type SimilarBook {
title: String
author: String
price: Float
similarBooks: [SimilarBook]
}
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
bcd9355ee: Breaking change in merger API;
Before a merger should return a GraphQLSchema
, not it needs to return SubschemaConfig
from @graphql-tools/delegate
package.
The idea is to prevent the schema from being wrap to reduce the execution complexity.
Now if merger returns an executor, it will be used directly as an executor inside Envelop's pipeline.
Also it can return transforms
which will be applied during execution while schema transforms are applied on build time without any modification in the resolvers.
If there are some root transforms, those are applied together with the source transforms on the execution level in case of a single source.
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
bcd9355ee: Breaking change in merger API;
Before a merger should return a GraphQLSchema
, not it needs to return SubschemaConfig
from @graphql-tools/delegate
package.
The idea is to prevent the schema from being wrap to reduce the execution complexity.
Now if merger returns an executor, it will be used directly as an executor inside Envelop's pipeline.
Also it can return transforms
which will be applied during execution while schema transforms are applied on build time without any modification in the resolvers.
If there are some root transforms, those are applied together with the source transforms on the execution level in case of a single source.
Published by github-actions[bot] over 2 years ago