Skip to content

apollo-compiler@1.33.0

Choose a tag to compare

@tninesling tninesling released this 03 Sep 21:11
· 5 commits to main since this release
5ebcc40

1.33.0 - 2026-09-03

Features

  • Validate @defer directive usage - duckki, pull/1069

    Adds validation for the @defer rules from the GraphQL Defer & Stream draft
    (graphql-spec#1110). apollo-compiler previously had no @defer validation,
    so operations the spec forbids passed silently.

    Three rules are validated, matching graphql-js's specifiedRules:

    • Every @defer(label:) value must be a static string (not a variable) and
      unique across the document.
    • @defer is not allowed on root selections of mutation or subscription
      operations.
    • Inside a subscription, any @defer not statically removed by
      @skip/@include must be disable-able via an if argument set to false
      or a variable.

    @defer is not a built-in directive in apollo-compiler, so a schema using it
    must declare the directive. @stream is out of scope.

Fixes

  • Validate that root operations use different types - tninesling, pull/1071

    The GraphQL spec requires the query, mutation, and subscription root
    operations of a schema to use distinct Object types. Schemas that reused a
    type across root operations previously validated successfully; they are now
    rejected.

Maintenance

  • Update serial_test dev-dependency to v4 - pull/1073

    Dev-dependency only; no effect on library consumers. Note that building the
    apollo-rs test suite now requires rustc 1.93.1 or newer.