Allow deprecation of input values (field args, directive args, input fields)#805
Merged
Allow deprecation of input values (field args, directive args, input fields)#805
Conversation
sungam3r
reviewed
Dec 3, 2020
maartenvanvliet
added a commit
to maartenvanvliet/absinthe
that referenced
this pull request
Dec 20, 2020
Absinthe already supported deprecating args/input fields and this PR exposes that in the introspection query to match the spec. Also some tests were added for deprecating stuff. See graphql/graphql-spec#805 for the spec update
jturkel
reviewed
Mar 29, 2021
51f2fed to
f96b562
Compare
Collaborator
|
@smitt04 would you mind signing the CLA (linked above) for your contribution? |
Collaborator
|
I've applied some editorial here, and I think this is good to go from a spec text point of view. The previous PR was moved to RFC2 and as discussed here graphql/graphql-wg#639 we have some next steps. Notably on the JS side there is a missing piece compared to what this RFC proposes, tracked here: graphql/graphql-js#3048 There was also a question about validation being correct or having the right "breaking/dangerous changes" protections in place. @IvanGoncharov or other authors here have context on that? |
e5d241d to
6c81ed8
Compare
Member
|
@IvanGoncharov Do we have any validation rule changes so that it is invalid to deprecate required arguments or required input fields? |
This was referenced Apr 3, 2023
Zain-Bin-Arshad
added a commit
to Zain-Bin-Arshad/graphql-ruby
that referenced
this pull request
Mar 19, 2024
It is now safe to remove this warning, this is merged and isn't a proposal anymore, see more graphql/graphql-spec#805
12 tasks
This was referenced Sep 8, 2025
tyranron
added a commit
to graphql-rust/juniper
that referenced
this pull request
Sep 12, 2025
…raphql/graphql-spec#525, graphql/graphql-spec#805) - allow `#[graphql(deprecated)]` and `#[deprecated]` attributes on struct fields in `#[derive(GraphQLInputObject)]` macro - allow `#[graphql(deprecated)]` attribute on method arguments in `#[graphql_object]` and `#[graphql_interface]` macros - allow `@deprecated` directive on arguments and input object fields - add `__InputValue.isDeprecated` and `__InputValue.deprecationReason` fields - add `includeDeprecated` argument to `__Type.inputFields`, `__Field.args` and `__Directive.args` fields - make `includeDeprecated` argument of `__Type.fields`, `__Type.enumValues`, `__Type.inputFields`, `__Field.args` and `__Directive.args` fields non-`Null` (graphql/graphql-spec#1142) - add `schema::meta::Argument::deprecation_status` field - make `@deprecated(reason:)` argument non-`Null` (graphql/graphql-spec#1040) Additionally: - add `__Type.isOneOf` field (graphql/graphql-spec#825) - add `SCHEMA`, `OBJECT`, `ARGUMENT_DEFINITION`, `INTERFACE`, `UNION`, `ENUM`, `INPUT_OBJECT` and `INPUT_FIELD_DEFINITION` values to `__DirectiveLocation` enum - update canonical introspection query to 16.11.0 version of GraphQL.js - fix incorrect `__Type.specifiedByUrl` field name to `__Type.specifiedByURL` - fix missing `@specifiedBy(url:)` directive in SDL generated by `RootNode::as_sdl()` and `RootNode::as_document()` methods
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Continuation of #525 by @smitt04
Revisits #197 by @dylanahsmith