Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[email protected] #837

Merged
merged 1 commit into from
Feb 14, 2024
Merged

[email protected] #837

merged 1 commit into from
Feb 14, 2024

Conversation

goto-bus-stop
Copy link
Member

After #836

This release includes a critical fix to overflow protection in validation.

Features

  • New field merging validation implementation - goto-bus-stop, pull/816
    • Uses the much more scalable XING algorithm.
    • This also fixes some invalid selections that were previously accepted by apollo-compiler.
    • Selections in fragment definitions are now only validated in the context of the operations they
      are used in, reducing duplicate error reports for invalid fragments. This means invalid unused
      fragments do not produce field merging errors, but they will still raise a different error because
      fragments being unused is also an error according to the spec.
  • Add owned IntoIterator for DirectiveList types - SimonSapin, pull/826

Fixes

  • Actually run RecursionGuard in release mode - SimonSapin, pull/827
    • Due to a debug_assert!() oversight, stack overflow protection in validation did not run
      in release mode.
  • Accept enum values as input for custom scalars - goto-bus-stop, pull/835
    • Custom scalars accept any kind of input value. apollo-compiler used to raise a validation error when
      an enum value was used directly for a custom scalar. However, using an enum value nested inside an
      object or list was accepted. Now enum values are always accepted where a custom scalar is expected.

Maintenance

@goto-bus-stop goto-bus-stop merged commit 41b69c2 into main Feb 14, 2024
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants