Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Nov 12, 2025

This PR contains the following updates:

Package Change Age Confidence
@graphql-inspector/core (source) 6.4.1 -> 7.0.0 age confidence

Release Notes

graphql-hive/graphql-inspector (@​graphql-inspector/core)

v7.0.0

Major Changes
  • #​2893
    ef13125
    Thanks @​jdolle! - This is a major change to @graphql-inspector/core
    and introduces a new @graphql-inspector/patch package, which applies changes output from diff
    on top of a schema -- essentially rebasing these changes onto any schema.

    These changes include:

    • Numerous adjustments to Change types to create more accurate severity levels, such as a boolean
      indicating if the change applies to a new type or an existing type.
    • Adjustmented the "path" on several change types in order to consistently map to the exact AST
      node being changed. For example, EnumValueDeprecationReasonAdded's path previously referenced
      the enumValue (e.g. EnumName.value), not the deprecated directive (e.g.
      EnumName.value.@​deprecated).
    • Added new attributes in order to provide enough context for a new "@​graphql-inspector/patch"
      function to apply changes accurately.
    • Added support for repeatable directives
    • Includes all nested changes in diff output when a new node is added. This can dramatically
      increase the number of changes listed which can be noisy, but it makes it possible for
      "@​graphql-inspector/patch" to apply all changes from a schema. This can be optionally filtered
      using a newly exported DiffRule.simplifyChanges rule.

    For example, given an existing schema:

    type User {
      id: ID!
      name: String!
    }

    And a diff schema:

    type User {
      id: ID!
      name: String!
      address: Address
    }
    
    type Address {
      line1: String!
      line2: String!
    }

    Then previously the output would be:

    [
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Type 'Address' was added",
        "meta": {
          "addedTypeKind": "ObjectTypeDefinition",
          "addedTypeName": "Address"
        },
        "path": "Address",
        "type": "TYPE_ADDED"
      },
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Field 'address' was added to object type 'User'",
        "meta": {
          "addedFieldName": "address",
          "addedFieldReturnType": "Address",
          "typeName": "User",
          "typeType": "object type"
        },
        "path": "User.address",
        "type": "FIELD_ADDED"
      }
    ]

    But now the output also includes the fields inside the new Address type:

    [
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Type 'Address' was added",
        "meta": {
          "addedTypeKind": "ObjectTypeDefinition",
          "addedTypeName": "Address"
        },
        "path": "Address",
        "type": "TYPE_ADDED"
      },
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Field 'line1' was added to object type 'Address'",
        "meta": {
          "addedFieldName": "line1",
          "addedFieldReturnType": "String!",
          "typeName": "Address",
          "typeType": "object type"
        },
        "path": "Address.line1",
        "type": "FIELD_ADDED"
      },
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Field 'line2' was added to object type 'Address'",
        "meta": {
          "addedFieldName": "line2",
          "addedFieldReturnType": "String!",
          "typeName": "Address",
          "typeType": "object type"
        },
        "path": "Address.line2",
        "type": "FIELD_ADDED"
      },
      {
        "criticality": {
          "level": "NON_BREAKING"
        },
        "message": "Field 'address' was added to object type 'User'",
        "meta": {
          "addedFieldName": "address",
          "addedFieldReturnType": "Address",
          "typeName": "User",
          "typeType": "object type"
        },
        "path": "User.address",
        "type": "FIELD_ADDED"
      }
    ]

    These additional changes can be filtered using a new rule:

    import { diff, DiffRule } from '@​graphql-inspector/core'
    
    const changes = await diff(a, b, [DiffRule.simplifyChanges])
Minor Changes
  • #​2900
    2fc8b25
    Thanks @​emileriksson! - Apollo Federation v2 support.
    Introduced built-in Federation v2 directives and a new CLI flag --federationV2 to enable
    processing schemas that use them.

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.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

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

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 12, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Learn more:

@github-actions
Copy link
Contributor

🚀 Snapshot Release (alpha)

The latest changes of this PR are available as alpha on npm (based on the declared changesets):

Package Version Info
@graphql-mesh/cli 0.100.19-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/config 0.108.19-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/graphql 0.104.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/grpc 0.108.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/json-schema 0.109.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/mysql 0.105.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/neo4j 0.107.15-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/odata 0.106.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/openapi 0.109.24-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/postgraphile 0.104.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/raml 0.109.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/soap 0.107.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/supergraph 0.10.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/thrift 0.106.18-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/merger-bare 0.105.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/merger-stitching 0.105.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/migrate-config-cli 1.7.5-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/store 0.104.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@omnigraph/odata 0.2.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎
@graphql-mesh/transport-odata 0.2.17-alpha-20251112194955-38e54c793920acbfc96a64a3a44cbd09eeebc6a2 npm ↗︎ unpkg ↗︎

@github-actions
Copy link
Contributor

💻 Website Preview

The latest changes are available as preview in: https://d8dd7a40.graphql-mesh.pages.dev

@renovate
Copy link
Contributor Author

renovate bot commented Nov 12, 2025

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

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