NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3076 most downloaded on npm
Fork of GraphQL.js' execute function
Last release 3 days ago
01 Oct 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
941 releases · first in 2022
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
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
Updated dependency `@graphql-tools/utils@^10.6.1` ↗︎ (from ^10.6.0, in dependencies)
696a0d5
Thanks @renovate! - dependencies updates:
@graphql-tools/utils@^10.6.1 ↗︎
(from ^10.6.0, in dependencies)1b24656]:
Nothing published for this version
Updated dependencies [`1e02935`]:
1e02935]:
Nothing published for this version
Updated dependencies [`414e404`]:
414e404]:
Nothing published for this version
Nothing published for this version
Updated dependencies [`dc5043b`]:
dc5043b]:
Nothing published for this version
Nothing published for this version
Nothing published for this version
Updated dependencies [`cf2ce5e`]:
cf2ce5e]:
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
Updated dependencies [`a867bbc`]:
Nothing published for this version
Nothing published for this version
Nothing published for this version
`33e8146` Thanks @ardatan! - Ability to create critical errors that prevents to return a partial results
33e8146
Thanks @ardatan! - Ability to create critical errors that prevents
to return a partial results
import { CRITICAL_ERROR } from '@graphql-tools/executor'
const schema = makeExecutableSchema({
typeDefs: `
type Query {
hello: String
}
`,
resolvers: {
Query: {
hello: () =>
new GraphQLError('Critical error', {
extensions: {
[CRITICAL_ERROR]: true
}
})
}
}
})
This will prevent to return a partial results and will return an error instead.
const result = await execute({
schema,
document: parse(`{ hello }`)
})
expect(result).toEqual({
errors: [
{
message: 'Critical error'
}
],
data: null // Instead of { hello: null }
})
Nothing published for this version
Nothing published for this version
Errors thrown in the parseValue function for custom scalars were not propagated correctly using the originalError property of the GraphQLError on inva
#6306
74f995f
Thanks @n1ru4l! - Properly propagate the original error in custom
scalars.
Errors thrown in the parseValue function for custom scalars were not propagated correctly using
the originalError property of the GraphQLError on invalid input. As a result, error codes from
the extensions.code were not propagated correctly.
Updated dependencies
[66c99d9]:
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
So if a type resolver returns a type instead of type name which is required since graphql@16, the executor should handle it correctly.
#6280
7dcd0af
Thanks @ardatan! - Since the executor is version agnostic, it should
respect the schemas created with older versions.
So if a type resolver returns a type instead of type name which is required since graphql@16,
the executor should handle it correctly.
See the following example:
// Assume that the following code is executed with `graphql@15`
import { execute } from '@graphql-tools/executor'
const BarType = new GraphQLObjectType({
name: 'Bar',
fields: {
bar: {
type: GraphQLString,
resolve: () => 'bar'
}
}
})
const BazType = new GraphQLObjectType({
name: 'Baz',
fields: {
baz: {
type: GraphQLString,
resolve: () => 'baz'
}
}
})
const BarBazType = new GraphQLUnionType({
name: 'BarBaz',
types: [BarType, BazType],
// This is the resolver that returns the type instead of type name
resolveType(obj) {
if ('bar' in obj) {
return BarType
}
if ('baz' in obj) {
return BazType
}
}
})
const QueryType = new GraphQLObjectType({
name: 'Query',
fields: {
barBaz: {
type: BarBazType,
resolve: () => ({ bar: 'bar' })
}
}
})
const schema = new GraphQLSchema({
query: QueryType
})
const result = await execute({
schema,
document: parse(/* GraphQL */ `
query {
barBaz {
... on Bar {
bar
}
... on Baz {
baz
}
}
}
`)
})
expect(result).toEqual({
data: {
barBaz: {
bar: 'bar'
}
}
})
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →