Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Sep 6, 2025

This PR contains the following updates:

Package Change Age Confidence
@graphql-tools/delegate (source) ^9.0.32 || ^10.0.0^9.0.32 || ^10.0.0 || ^12.0.0 age confidence
@graphql-tools/utils (source) ^10.0.0^11.0.0 age confidence
@graphql-tools/utils (source) ^9.2.1 || ^10.0.0^9.2.1 || ^10.0.0 || ^11.0.0 age confidence
@graphql-tools/wrap (source) ^9.4.2 || ^10.0.0^9.4.2 || ^10.0.0 || ^11.0.0 age confidence

Release Notes

graphql-hive/gateway (@​graphql-tools/delegate)

v12.0.3

Compare Source

Patch Changes
  • #​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
        }
    }

v12.0.2

Compare Source

Patch Changes
  • da8b8e3 Thanks @​ardatan! - Use getDefinedRootType instead of schema.getRootType for GraphQL v15 compatibility

v12.0.1

Compare Source

Patch Changes

v12.0.0

Compare Source

Major Changes
  • #​1708 bc6cddd Thanks @​ardatan! - Breaking changes in createRequest function;

    • No more sourceParentType, sourceFieldName, variableDefinitions, variableValues and targetRootValue
    • targetRootValue has been renamed to rootValue
    • targetSchema is a required option now and args is also accepted as a map of the arguments of the target field
    • fragments is now an array of FragmentDefinitionNode instead of a record { [fragmentName: string]: FragmentDefinitionNode }

    Breaking changes in delegateRequest and delegateToSchema functions;

    • No more transformedSchema option, it has been renamed to targetSchema
    • targetSchema is a required option now
Patch Changes
  • #​1727 1dbc653 Thanks @​ardatan! - Avoid extra __typename in the root selection

    query {
    - __typename
      hello
    }
  • #​1743 b520eb2 Thanks @​ardatan! - Handle leftovers recursively but in async
    Fixes requires-circular test suite's second case on federation audit repository

v11.1.3

Compare Source

Patch Changes

v11.1.2

Compare Source

Patch Changes

v11.1.1

Compare Source

Patch Changes

v11.1.0

Compare Source

Minor Changes
  • #​1624 a8458b2 Thanks @​ardatan! - Progressive Override for Safer Field Migrations

    Introduces Progressive Override, allowing you to safely migrate fields between subgraphs using the @override directive with a label. Control the rollout using custom logic in the gateway (e.g., percentage, headers) or the built-in percent(x) label for gradual, incremental traffic migration.

    Detailed documentation can be found here.

Patch Changes

v11.0.1

Compare Source

Patch Changes

v11.0.0

Compare Source

Major Changes
Minor Changes
Patch Changes
ardatan/graphql-tools (@​graphql-tools/utils)

v11.0.0

Compare Source

Major Changes
  • #​7685
    6f3776c
    Thanks @​ardatan! - Support "federation/subgraph style" schemas in
    astFromSchema and printSchemaWithDirectives

    If a GraphQLSchema doesn't have any defined operation types, we should print the schema
    definition as an extension rather than omitting it entirely. They are not a valid schema on their
    own, but they are valid subgraph schemas in a federation setup, and it is possible to build such
    schemas with assumeValid options.

    // A schema without defined root types
    buildSchema(
      /* GraphQL */ `
        extend schema @​link(url: "https://specs.apollo.dev/federation/v2.0", import: ["@​key"])
    
        type User @​key(fields: "id") {
          id: ID!
          username: String
        }
      `,
      { assumeValid: true, assumeValidSDL: true }
    )

    POTENTIAL BREAKING CHANGE: This can be a breaking change because now the schema above will be
    printed as the input, previously extend schema was converted to schema {}.

v10.11.0

Compare Source

Minor Changes
  • #​7588
    2118a80
    Thanks @​EmrysMyrddin! - Add optional schema coordinate in error
    extensions. This extension allows to precisely identify the source of the error by automated tools
    like tracing or monitoring.

    This new feature is opt-in, you have to enable it using schemaCoordinateInErrors executor
    option.

    Caution: This feature, when enabled, will expose information about your schema. If you need to
    keep your schema private and secret, you should strip this attribute at serialization time before
    sending errors to the client.

    import { parse } from 'graphql'
    import { normalizedExecutor } from '@​graphql-tools/executor'
    import { getSchemaCoordinate } from '@​graphql-tools/utils'
    import schema from './schema'
    
    const result = await normalizedExecutor({
      schema,
      document: parse(`...`),
      schemaCoordinateInErrors: true // enable adding schema coordinate to graphql errors
    })
    
    if (result.errors) {
      for (const error of result.errors) {
        console.log('Error in resolver ', error.coordinate, ':', error.message)
        // or with `getSchemaCoordinate` util, to workaround types if needed
        console.log('Error in resolver', getSchemaCoordinate(error), ':', error.message)
      }
    }

v10.10.3

Compare Source

Patch Changes
  • #​7683
    2fe123a
    Thanks @​ardatan! - Revert
    #​7683 which can cause unexpected breaking changes so
    as before the schema extension node will always be converted to a schema definition node

v10.10.2

Compare Source

Patch Changes
  • #​7679
    dddc5f6
    Thanks @​ardatan! - Support "federation/subgraph style" schemas in
    astFromSchema and printSchemaWithDirectives

    If a GraphQLSchema doesn't have any defined operation types, we should print the schema
    definition as an extension rather than omitting it entirely. They are not a valid schema on their
    own, but they are valid subgraph schemas in a federation setup, and it is possible to build such
    schemas with assumeValid options.

    // A schema without defined root types
    buildSchema(
      /* GraphQL */ `
        extend schema @​link(url: "https://specs.apollo.dev/federation/v2.0", import: ["@​key"])
    
        type User @​key(fields: "id") {
          id: ID!
          username: String
        }
      `,
      { assumeValid: true, assumeValidSDL: true }
    )

v10.10.1

Compare Source

Patch Changes

v10.10.0

Compare Source

Minor Changes
  • #​5269
    fded91e
    Thanks @​uroslates! - Add default values to the arguments

    When the schema is like following;

    type Query {
        getAllPages(currentPage: Int = 0, pageSize: Int = 10, pageType: getAllPages_pageType = ContentPage, sort: String = "asc"): PagesList
    }
    
    enum getAllPages_pageType {
        ContentPage
        CategoryPage
        CatalogPage
    }
    
    type PagesList {
        ...
    }

    The generated operation will be like following;

    query getAllPages_query($currentPage: Int = 0, $pageSize: Int = 10, $pageType: getAllPages_pageType = ContentPage, $sort: String = "asc") {
        getAllPages(currentPage: $currentPage, pageSize: $pageSize, pageType: $pageType, sort: $sort) {
            ...
        }
    }
Patch Changes
  • #​7012
    fd105f4
    Thanks @​ardatan! - Fix the bug in mergeDeep;

    The following inputs and outputs are corrected;

    • mergeDeep([{a:2}, undefined]) - Any nullish values should be ignored so it should return
      {a:2}
    • mergeDeep([]) - no sources should return undefined
    • mergeDeep([undefined]) - no sources should return undefined
  • #​5294
    3b99a9b
    Thanks @​n1ru4l! - Do not map builtin scalars

v10.9.1

Compare Source

Patch Changes

v10.9.0

Compare Source

Minor Changes
  • #​7281
    53db005
    Thanks @​EmrysMyrddin! - Add optional subgraphName preoperty
    to the ExecutionRequest interface for usage in Gateways like Hive Gateway.
Patch Changes

v10.8.6

Compare Source

Patch Changes

v10.8.5

Compare Source

Patch Changes

v10.8.4

Compare Source

Patch Changes

v10.8.3

Compare Source

Patch Changes

v10.8.2

Compare Source

Patch Changes
graphql-hive/gateway (@​graphql-tools/wrap)

v11.1.3

Compare Source

Patch Changes

v11.1.2

Compare Source

Patch Changes

v11.1.1

Compare Source

Patch Changes

v11.1.0

Compare Source

Minor Changes
Patch Changes

v11.0.5

Compare Source

Patch Changes

v11.0.4

Compare Source

Patch Changes

v11.0.3

Compare Source

Patch Changes

v11.0.2

Compare Source

Patch Changes

v11.0.1

Compare Source

Patch Changes

v11.0.0

Compare Source

Major Changes
Patch Changes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies label Sep 6, 2025
@changeset-bot
Copy link

changeset-bot bot commented Sep 6, 2025

⚠️ No Changeset found

Latest commit: 9847e01

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from 68bbede to 2330275 Compare September 15, 2025 18:47
@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from 2330275 to de362ae Compare September 25, 2025 16:50
@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from de362ae to 285050f Compare October 22, 2025 13:01
@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from 285050f to c6000fc Compare December 1, 2025 13:08
@renovate renovate bot changed the title chore(deps): update graphql-tools to v11 (major) chore(deps): update graphql-tools (major) Dec 1, 2025
@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from c6000fc to 263d0d9 Compare December 31, 2025 13:12
@renovate renovate bot force-pushed the renovate/major-graphql-tools branch from 263d0d9 to 9847e01 Compare January 7, 2026 01:34
@renovate renovate bot changed the title chore(deps): update graphql-tools (major) fix(deps): update graphql-tools (major) Jan 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant