lib/graphql/schema/member/has_deprecation_reason.rb in graphql-2.0.17.2 vs lib/graphql/schema/member/has_deprecation_reason.rb in graphql-2.0.18

- old
+ new

@@ -3,20 +3,19 @@ module GraphQL class Schema class Member module HasDeprecationReason # @return [String, nil] Explains why this member was deprecated (if present, this will be marked deprecated in introspection) - def deprecation_reason - dir = self.directives.find { |d| d.is_a?(GraphQL::Schema::Directive::Deprecated) } - dir && dir.arguments[:reason] # rubocop:disable Development/ContextIsPassedCop -- definition-related - end + attr_reader :deprecation_reason # Set the deprecation reason for this member, or remove it by assigning `nil` # @param text [String, nil] def deprecation_reason=(text) + @deprecation_reason = text if text.nil? remove_directive(GraphQL::Schema::Directive::Deprecated) else + # This removes a previously-attached directive, if there is one: directive(GraphQL::Schema::Directive::Deprecated, reason: text) end end end end