NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3292 most downloaded on npm
A set of utils for faster development of GraphQL tools
Last release 15 days ago
08 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
3654 releases · first in 2020
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
If the argument uses a variable definition on the gateway request, keep and re-use it as-is.
#1948 584a293 Thanks @Tolsee! - Respect existing variable definitions from the gateway request;
query ($var1: String = "default") {
rootField(arg1: $var1)
}
query ($arg1: String = "default") {
rootField(arg1: 2) {
someField(arg2: $arg1)
}
}
In that case it should be delegated as:
query ($arg1: String = "default", $rootField_arg1: String = "default") {
rootField(arg1: $rootField_arg1) {
someField(arg2: $arg1)
}
}
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Do not pass percent(x) labels to the progressive override handler
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
If you have a subgraph schema like below;
#1901 e92c5a9 Thanks @ardatan! - Do not add required fields if they are already present in the original selection set.
For example in Federation;
If you have a subgraph schema like below;
type Book @key(fields: "upc otherUpc shop { id }") {
upc: ID!
otherUpc: ID!
shop: Shop!
}
type Shop @key(fields: "id") {
id: ID!
name: String!
location: Location!
}
And when you send a mutation like below;
mutation {
buyBook(input: { bookUpc: "test" }) {
book {
upc
otherUpc
shop {
id
name
location {
address1
city
state
}
}
}
}
}
Previously, the gateway would add the required key fields again to the selection set when resolving the type like below;
mutation {
buyBook(input: { bookUpc: "test" }) {
book {
upc
otherUpc
- upc
- otherUpc
- shop { id } # from the key fields
shop {
id
name
location {
address1
city
state
}
}
}
}
}
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Updated dependency `@graphql-tools/utils@^11.0.0` ↗︎ (from ^10.10.3, in dependencies)
#1842 93aa767 Thanks @dependabot! - dependencies updates:
@graphql-tools/utils@^11.0.0 ↗︎ (from ^10.10.3, in dependencies)Updated dependencies [93aa767]:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
When delegating requests with variables that include nested arrays, ensure that null values are preserved and passed correctly to the subschema. This
#1835 dcd8f0e Thanks @ardatan! - Delegate variable values correctly;
When delegating requests with variables that include nested arrays, ensure that null values are preserved and passed correctly to the subschema. This fix addresses issues where null values in nested arrays were not handled properly during delegation.
Let's say we have the following schema;
makeExecutableSchema({
typeDefs: /* GraphQL */ `
type Query {
test(input: InputType!): [String!]
}
input InputType {
value: [String!]
}
`,
resolvers: {
Query: {
test: (_, args) => {
// Returns the incoming variable value
return args.input.value;
},
},
}
});
When delegating a query with a variable like:
{
"query": "query Test($value: [String!]) { test(input: { value: $value } ) }",
"variables": { "value": null }
}
And the result was
{
"data": {
"test": []
}
}
But with this fix, the result will correctly be:
{
"data": {
"test": null
}
}
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →