graphql 2.5.9 → 2.5.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generators/graphql/detailed_trace_generator.rb +77 -0
  3. data/lib/generators/graphql/templates/create_graphql_detailed_traces.erb +10 -0
  4. data/lib/graphql/analysis.rb +20 -13
  5. data/lib/graphql/dashboard/application_controller.rb +41 -0
  6. data/lib/graphql/dashboard/landings_controller.rb +9 -0
  7. data/lib/graphql/dashboard/statics_controller.rb +31 -0
  8. data/lib/graphql/dashboard/subscriptions.rb +2 -1
  9. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/clients/_form.html.erb +1 -0
  10. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/clients/edit.html.erb +2 -2
  11. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/clients/index.html.erb +1 -1
  12. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/clients/new.html.erb +1 -1
  13. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/index_entries/index.html.erb +1 -1
  14. data/lib/graphql/dashboard/views/graphql/dashboard/operation_store/operations/show.html.erb +1 -1
  15. data/lib/graphql/dashboard/views/graphql/dashboard/subscriptions/topics/show.html.erb +1 -1
  16. data/lib/graphql/dashboard/views/layouts/graphql/dashboard/application.html.erb +7 -7
  17. data/lib/graphql/dashboard.rb +11 -73
  18. data/lib/graphql/dataloader/active_record_association_source.rb +14 -2
  19. data/lib/graphql/dataloader/async_dataloader.rb +22 -11
  20. data/lib/graphql/dataloader/null_dataloader.rb +54 -9
  21. data/lib/graphql/dataloader.rb +75 -23
  22. data/lib/graphql/date_encoding_error.rb +1 -1
  23. data/lib/graphql/execution/field_resolve_step.rb +631 -0
  24. data/lib/graphql/execution/finalize.rb +217 -0
  25. data/lib/graphql/execution/input_values.rb +261 -0
  26. data/lib/graphql/execution/interpreter/handles_raw_value.rb +6 -0
  27. data/lib/graphql/execution/interpreter/resolve.rb +10 -16
  28. data/lib/graphql/execution/interpreter/runtime/graphql_result.rb +13 -0
  29. data/lib/graphql/execution/interpreter/runtime.rb +28 -33
  30. data/lib/graphql/execution/interpreter.rb +8 -22
  31. data/lib/graphql/execution/lazy.rb +1 -1
  32. data/lib/graphql/execution/load_argument_step.rb +64 -0
  33. data/lib/graphql/execution/multiplex.rb +1 -1
  34. data/lib/graphql/execution/next.rb +90 -0
  35. data/lib/graphql/execution/prepare_object_step.rb +128 -0
  36. data/lib/graphql/execution/runner.rb +410 -0
  37. data/lib/graphql/execution/selections_step.rb +91 -0
  38. data/lib/graphql/execution.rb +8 -4
  39. data/lib/graphql/execution_error.rb +17 -10
  40. data/lib/graphql/introspection/directive_type.rb +7 -3
  41. data/lib/graphql/introspection/dynamic_fields.rb +5 -1
  42. data/lib/graphql/introspection/entry_points.rb +11 -3
  43. data/lib/graphql/introspection/enum_value_type.rb +5 -5
  44. data/lib/graphql/introspection/field_type.rb +13 -5
  45. data/lib/graphql/introspection/input_value_type.rb +21 -13
  46. data/lib/graphql/introspection/type_type.rb +64 -28
  47. data/lib/graphql/invalid_null_error.rb +11 -5
  48. data/lib/graphql/language/document_from_schema_definition.rb +2 -1
  49. data/lib/graphql/language/lexer.rb +20 -9
  50. data/lib/graphql/language/nodes.rb +5 -1
  51. data/lib/graphql/language/parser.rb +1 -0
  52. data/lib/graphql/language.rb +21 -12
  53. data/lib/graphql/pagination/connection.rb +2 -0
  54. data/lib/graphql/pagination/connections.rb +32 -0
  55. data/lib/graphql/query/context.rb +11 -4
  56. data/lib/graphql/query/null_context.rb +9 -3
  57. data/lib/graphql/query/partial.rb +18 -3
  58. data/lib/graphql/query.rb +10 -1
  59. data/lib/graphql/runtime_error.rb +6 -0
  60. data/lib/graphql/schema/addition.rb +3 -1
  61. data/lib/graphql/schema/argument.rb +17 -0
  62. data/lib/graphql/schema/build_from_definition.rb +15 -2
  63. data/lib/graphql/schema/directive.rb +45 -13
  64. data/lib/graphql/schema/field/connection_extension.rb +4 -37
  65. data/lib/graphql/schema/field/scope_extension.rb +18 -13
  66. data/lib/graphql/schema/field.rb +87 -48
  67. data/lib/graphql/schema/field_extension.rb +11 -8
  68. data/lib/graphql/schema/interface.rb +26 -0
  69. data/lib/graphql/schema/list.rb +5 -1
  70. data/lib/graphql/schema/member/base_dsl_methods.rb +1 -11
  71. data/lib/graphql/schema/member/has_arguments.rb +43 -14
  72. data/lib/graphql/schema/member/has_authorization.rb +35 -0
  73. data/lib/graphql/schema/member/has_dataloader.rb +37 -0
  74. data/lib/graphql/schema/member/has_fields.rb +86 -5
  75. data/lib/graphql/schema/member/has_interfaces.rb +2 -2
  76. data/lib/graphql/schema/member/type_system_helpers.rb +16 -2
  77. data/lib/graphql/schema/member.rb +5 -0
  78. data/lib/graphql/schema/non_null.rb +1 -1
  79. data/lib/graphql/schema/object.rb +1 -0
  80. data/lib/graphql/schema/ractor_shareable.rb +79 -0
  81. data/lib/graphql/schema/resolver.rb +60 -1
  82. data/lib/graphql/schema/subscription.rb +0 -2
  83. data/lib/graphql/schema/validator/required_validator.rb +45 -5
  84. data/lib/graphql/schema/visibility/migration.rb +2 -2
  85. data/lib/graphql/schema/visibility/profile.rb +140 -56
  86. data/lib/graphql/schema/visibility.rb +31 -18
  87. data/lib/graphql/schema/wrapper.rb +7 -1
  88. data/lib/graphql/schema.rb +108 -32
  89. data/lib/graphql/static_validation/all_rules.rb +1 -1
  90. data/lib/graphql/static_validation/base_visitor.rb +90 -66
  91. data/lib/graphql/static_validation/rules/argument_literals_are_compatible.rb +1 -1
  92. data/lib/graphql/static_validation/rules/argument_names_are_unique.rb +18 -6
  93. data/lib/graphql/static_validation/rules/arguments_are_defined.rb +5 -2
  94. data/lib/graphql/static_validation/rules/directives_are_defined.rb +5 -2
  95. data/lib/graphql/static_validation/rules/fields_are_defined_on_type.rb +4 -3
  96. data/lib/graphql/static_validation/rules/fields_have_appropriate_selections.rb +14 -4
  97. data/lib/graphql/static_validation/rules/fields_will_merge.rb +322 -256
  98. data/lib/graphql/static_validation/rules/fields_will_merge_error.rb +4 -4
  99. data/lib/graphql/static_validation/rules/fragment_spreads_are_possible.rb +3 -3
  100. data/lib/graphql/static_validation/rules/fragment_types_exist.rb +10 -7
  101. data/lib/graphql/static_validation/rules/required_arguments_are_present.rb +27 -7
  102. data/lib/graphql/static_validation/rules/unique_directives_per_location.rb +6 -2
  103. data/lib/graphql/static_validation/rules/variables_are_input_types.rb +12 -9
  104. data/lib/graphql/static_validation/validation_context.rb +1 -1
  105. data/lib/graphql/subscriptions/action_cable_subscriptions.rb +1 -0
  106. data/lib/graphql/subscriptions/default_subscription_resolve_extension.rb +34 -10
  107. data/lib/graphql/subscriptions/event.rb +1 -0
  108. data/lib/graphql/subscriptions.rb +36 -1
  109. data/lib/graphql/testing/helpers.rb +12 -9
  110. data/lib/graphql/testing/mock_action_cable.rb +111 -0
  111. data/lib/graphql/testing.rb +1 -0
  112. data/lib/graphql/tracing/detailed_trace/active_record_backend.rb +74 -0
  113. data/lib/graphql/tracing/detailed_trace.rb +70 -7
  114. data/lib/graphql/tracing/null_trace.rb +1 -1
  115. data/lib/graphql/tracing/perfetto_trace.rb +209 -79
  116. data/lib/graphql/tracing/sentry_trace.rb +3 -1
  117. data/lib/graphql/tracing/trace.rb +6 -0
  118. data/lib/graphql/type_kinds.rb +1 -0
  119. data/lib/graphql/types/relay/connection_behaviors.rb +8 -6
  120. data/lib/graphql/types/relay/edge_behaviors.rb +4 -3
  121. data/lib/graphql/types/relay/has_node_field.rb +13 -8
  122. data/lib/graphql/types/relay/has_nodes_field.rb +13 -8
  123. data/lib/graphql/types/relay/node_behaviors.rb +13 -2
  124. data/lib/graphql/unauthorized_error.rb +9 -1
  125. data/lib/graphql/version.rb +1 -1
  126. data/lib/graphql.rb +7 -3
  127. metadata +21 -3
@@ -14,6 +14,7 @@ module GraphQL
14
14
  @leaf = leaf
15
15
  @composite = fields? || abstract?
16
16
  @description = description
17
+ freeze
17
18
  end
18
19
 
19
20
  # Does this TypeKind have multiple possible implementers?
@@ -196,18 +196,20 @@ module GraphQL
196
196
  def edges
197
197
  # Assume that whatever authorization needed to happen
198
198
  # already happened at the connection level.
199
- current_runtime_state = Fiber[:__graphql_runtime_info]
200
- query_runtime_state = current_runtime_state[context.query]
201
- query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
199
+ if (current_runtime_state = Fiber[:__graphql_runtime_info])
200
+ query_runtime_state = current_runtime_state[context.query]
201
+ query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
202
+ end
202
203
  @object.edges
203
204
  end
204
205
 
205
206
  def nodes
206
207
  # Assume that whatever authorization needed to happen
207
208
  # already happened at the connection level.
208
- current_runtime_state = Fiber[:__graphql_runtime_info]
209
- query_runtime_state = current_runtime_state[context.query]
210
- query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
209
+ if (current_runtime_state = Fiber[:__graphql_runtime_info])
210
+ query_runtime_state = current_runtime_state[context.query]
211
+ query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
212
+ end
211
213
  @object.nodes
212
214
  end
213
215
  end
@@ -14,9 +14,10 @@ module GraphQL
14
14
  end
15
15
 
16
16
  def node
17
- current_runtime_state = Fiber[:__graphql_runtime_info]
18
- query_runtime_state = current_runtime_state[context.query]
19
- query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
17
+ if (current_runtime_state = Fiber[:__graphql_runtime_info])
18
+ query_runtime_state = current_runtime_state[context.query]
19
+ query_runtime_state.was_authorized_by_scope_items = @object.was_authorized_by_scope_items?
20
+ end
20
21
  @object.node
21
22
  end
22
23
 
@@ -7,6 +7,17 @@ module GraphQL
7
7
  module HasNodeField
8
8
  def self.included(child_class)
9
9
  child_class.field(**field_options, &field_block)
10
+ child_class.extend(ExecutionMethods)
11
+ end
12
+
13
+ module ExecutionMethods
14
+ def get_relay_node(context, id:)
15
+ context.schema.object_from_id(id, context)
16
+ end
17
+ end
18
+
19
+ def get_relay_node(id:)
20
+ self.class.get_relay_node(context, id: id)
10
21
  end
11
22
 
12
23
  class << self
@@ -17,6 +28,8 @@ module GraphQL
17
28
  null: true,
18
29
  description: "Fetches an object given its ID.",
19
30
  relay_node_field: true,
31
+ resolver_method: :get_relay_node,
32
+ resolve_static: :get_relay_node,
20
33
  }
21
34
  end
22
35
 
@@ -24,14 +37,6 @@ module GraphQL
24
37
  Proc.new {
25
38
  argument :id, "ID!",
26
39
  description: "ID of the object."
27
-
28
- def resolve(obj, args, ctx)
29
- ctx.schema.object_from_id(args[:id], ctx)
30
- end
31
-
32
- def resolve_field(obj, args, ctx)
33
- resolve(obj, args, ctx)
34
- end
35
40
  }
36
41
  end
37
42
  end
@@ -7,6 +7,17 @@ module GraphQL
7
7
  module HasNodesField
8
8
  def self.included(child_class)
9
9
  child_class.field(**field_options, &field_block)
10
+ child_class.extend(ExecutionMethods)
11
+ end
12
+
13
+ module ExecutionMethods
14
+ def get_relay_nodes(context, ids:)
15
+ ids.map { |id| context.schema.object_from_id(id, context) }
16
+ end
17
+ end
18
+
19
+ def get_relay_nodes(ids:)
20
+ self.class.get_relay_nodes(context, ids: ids)
10
21
  end
11
22
 
12
23
  class << self
@@ -17,6 +28,8 @@ module GraphQL
17
28
  null: false,
18
29
  description: "Fetches a list of objects given a list of IDs.",
19
30
  relay_nodes_field: true,
31
+ resolver_method: :get_relay_nodes,
32
+ resolve_static: :get_relay_nodes
20
33
  }
21
34
  end
22
35
 
@@ -24,14 +37,6 @@ module GraphQL
24
37
  Proc.new {
25
38
  argument :ids, "[ID!]!",
26
39
  description: "IDs of the objects."
27
-
28
- def resolve(obj, args, ctx)
29
- args[:ids].map { |id| ctx.schema.object_from_id(id, ctx) }
30
- end
31
-
32
- def resolve_field(obj, args, ctx)
33
- resolve(obj, args, ctx)
34
- end
35
40
  }
36
41
  end
37
42
  end
@@ -6,12 +6,13 @@ module GraphQL
6
6
  module NodeBehaviors
7
7
  def self.included(child_module)
8
8
  child_module.extend(ClassMethods)
9
+ child_module.extend(ExecutionMethods)
9
10
  child_module.description("An object with an ID.")
10
- child_module.field(:id, ID, null: false, description: "ID of the object.", resolver_method: :default_global_id)
11
+ child_module.field(:id, ID, null: false, description: "ID of the object.", resolver_method: :default_global_id, resolve_each: :default_global_id)
11
12
  end
12
13
 
13
14
  def default_global_id
14
- context.schema.id_from_object(object, self.class, context)
15
+ self.class.default_global_id(object, context)
15
16
  end
16
17
 
17
18
  module ClassMethods
@@ -19,6 +20,16 @@ module GraphQL
19
20
  true
20
21
  end
21
22
  end
23
+
24
+ module ExecutionMethods
25
+ def default_global_id(object, context)
26
+ context.schema.id_from_object(object, self, context)
27
+ end
28
+
29
+ def included(child_class)
30
+ child_class.extend(ExecutionMethods)
31
+ end
32
+ end
22
33
  end
23
34
  end
24
35
  end
@@ -4,7 +4,7 @@ module GraphQL
4
4
  # It's passed to {Schema.unauthorized_object}.
5
5
  #
6
6
  # Alternatively, custom code in `authorized?` may raise this error. It will be routed the same way.
7
- class UnauthorizedError < GraphQL::Error
7
+ class UnauthorizedError < GraphQL::RuntimeError
8
8
  # @return [Object] the application object that failed the authorization check
9
9
  attr_reader :object
10
10
 
@@ -19,11 +19,19 @@ module GraphQL
19
19
  raise ArgumentError, "#{self.class.name} requires either a message or keywords"
20
20
  end
21
21
 
22
+ @path = nil
22
23
  @object = object
23
24
  @type = type
24
25
  @context = context
26
+ @ast_nodes = nil
25
27
  message ||= "An instance of #{object.class} failed #{type.graphql_name}'s authorization check"
26
28
  super(message)
27
29
  end
30
+
31
+ attr_accessor :path, :ast_nodes
32
+
33
+ def finalize_graphql_result(query, result_data, key)
34
+ result_data[key] = nil
35
+ end
28
36
  end
29
37
  end
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module GraphQL
3
- VERSION = "2.5.9"
3
+ VERSION = "2.5.26"
4
4
  end
data/lib/graphql.rb CHANGED
@@ -4,7 +4,7 @@ require "json"
4
4
  require "set"
5
5
  require "singleton"
6
6
  require "forwardable"
7
- require "fiber/storage"
7
+ require "fiber/storage" if RUBY_VERSION < "3.2.0"
8
8
  require "graphql/autoload"
9
9
 
10
10
  module GraphQL
@@ -72,7 +72,7 @@ This is probably a bug in GraphQL-Ruby, please report this error on GitHub: http
72
72
  GraphQL::Language::Lexer.tokenize(graphql_string)
73
73
  end
74
74
 
75
- NOT_CONFIGURED = Object.new
75
+ NOT_CONFIGURED = Object.new.freeze
76
76
  private_constant :NOT_CONFIGURED
77
77
  module EmptyObjects
78
78
  EMPTY_HASH = {}.freeze
@@ -119,6 +119,7 @@ This is probably a bug in GraphQL-Ruby, please report this error on GitHub: http
119
119
  autoload :ParseError, "graphql/parse_error"
120
120
  autoload :Backtrace, "graphql/backtrace"
121
121
 
122
+ autoload :RuntimeError, "graphql/runtime_error"
122
123
  autoload :UnauthorizedError, "graphql/unauthorized_error"
123
124
  autoload :UnauthorizedEnumValueError, "graphql/unauthorized_enum_value_error"
124
125
  autoload :UnauthorizedFieldError, "graphql/unauthorized_field_error"
@@ -126,7 +127,10 @@ This is probably a bug in GraphQL-Ruby, please report this error on GitHub: http
126
127
  autoload :Testing, "graphql/testing"
127
128
  autoload :Current, "graphql/current"
128
129
  if defined?(::Rails::Engine)
129
- autoload :Dashboard, 'graphql/dashboard'
130
+ # This needs to be defined before Rails runs `add_routing_paths`,
131
+ # otherwise GraphQL::Dashboard's routes won't have been gathered for loading
132
+ # when that initializer runs.
133
+ require 'graphql/dashboard'
130
134
  end
131
135
  end
132
136
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphql
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.9
4
+ version: 2.5.26
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Mosolgo
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-06-06 00:00:00.000000000 Z
10
+ date: 2026-04-27 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: base64
@@ -383,6 +383,7 @@ files:
383
383
  - ".yardopts"
384
384
  - MIT-LICENSE
385
385
  - lib/generators/graphql/core.rb
386
+ - lib/generators/graphql/detailed_trace_generator.rb
386
387
  - lib/generators/graphql/enum_generator.rb
387
388
  - lib/generators/graphql/field_extractor.rb
388
389
  - lib/generators/graphql/input_generator.rb
@@ -412,6 +413,7 @@ files:
412
413
  - lib/generators/graphql/templates/base_resolver.erb
413
414
  - lib/generators/graphql/templates/base_scalar.erb
414
415
  - lib/generators/graphql/templates/base_union.erb
416
+ - lib/generators/graphql/templates/create_graphql_detailed_traces.erb
415
417
  - lib/generators/graphql/templates/enum.erb
416
418
  - lib/generators/graphql/templates/graphql_controller.erb
417
419
  - lib/generators/graphql/templates/input.erb
@@ -446,8 +448,10 @@ files:
446
448
  - lib/graphql/coercion_error.rb
447
449
  - lib/graphql/current.rb
448
450
  - lib/graphql/dashboard.rb
451
+ - lib/graphql/dashboard/application_controller.rb
449
452
  - lib/graphql/dashboard/detailed_traces.rb
450
453
  - lib/graphql/dashboard/installable.rb
454
+ - lib/graphql/dashboard/landings_controller.rb
451
455
  - lib/graphql/dashboard/limiters.rb
452
456
  - lib/graphql/dashboard/operation_store.rb
453
457
  - lib/graphql/dashboard/statics/bootstrap-5.3.3.min.css
@@ -457,6 +461,7 @@ files:
457
461
  - lib/graphql/dashboard/statics/dashboard.js
458
462
  - lib/graphql/dashboard/statics/header-icon.png
459
463
  - lib/graphql/dashboard/statics/icon.png
464
+ - lib/graphql/dashboard/statics_controller.rb
460
465
  - lib/graphql/dashboard/subscriptions.rb
461
466
  - lib/graphql/dashboard/views/graphql/dashboard/detailed_traces/traces/index.html.erb
462
467
  - lib/graphql/dashboard/views/graphql/dashboard/landings/show.html.erb
@@ -488,6 +493,9 @@ files:
488
493
  - lib/graphql/execution.rb
489
494
  - lib/graphql/execution/directive_checks.rb
490
495
  - lib/graphql/execution/errors.rb
496
+ - lib/graphql/execution/field_resolve_step.rb
497
+ - lib/graphql/execution/finalize.rb
498
+ - lib/graphql/execution/input_values.rb
491
499
  - lib/graphql/execution/interpreter.rb
492
500
  - lib/graphql/execution/interpreter/argument_value.rb
493
501
  - lib/graphql/execution/interpreter/arguments.rb
@@ -499,8 +507,13 @@ files:
499
507
  - lib/graphql/execution/interpreter/runtime/graphql_result.rb
500
508
  - lib/graphql/execution/lazy.rb
501
509
  - lib/graphql/execution/lazy/lazy_method_map.rb
510
+ - lib/graphql/execution/load_argument_step.rb
502
511
  - lib/graphql/execution/lookahead.rb
503
512
  - lib/graphql/execution/multiplex.rb
513
+ - lib/graphql/execution/next.rb
514
+ - lib/graphql/execution/prepare_object_step.rb
515
+ - lib/graphql/execution/runner.rb
516
+ - lib/graphql/execution/selections_step.rb
504
517
  - lib/graphql/execution_error.rb
505
518
  - lib/graphql/integer_decoding_error.rb
506
519
  - lib/graphql/integer_encoding_error.rb
@@ -566,6 +579,7 @@ files:
566
579
  - lib/graphql/rubocop/graphql/default_required_true.rb
567
580
  - lib/graphql/rubocop/graphql/field_type_in_block.rb
568
581
  - lib/graphql/rubocop/graphql/root_types_in_block.rb
582
+ - lib/graphql/runtime_error.rb
569
583
  - lib/graphql/runtime_type_error.rb
570
584
  - lib/graphql/schema.rb
571
585
  - lib/graphql/schema/addition.rb
@@ -606,6 +620,7 @@ files:
606
620
  - lib/graphql/schema/member/graphql_type_names.rb
607
621
  - lib/graphql/schema/member/has_arguments.rb
608
622
  - lib/graphql/schema/member/has_ast_node.rb
623
+ - lib/graphql/schema/member/has_authorization.rb
609
624
  - lib/graphql/schema/member/has_dataloader.rb
610
625
  - lib/graphql/schema/member/has_deprecation_reason.rb
611
626
  - lib/graphql/schema/member/has_directives.rb
@@ -622,6 +637,7 @@ files:
622
637
  - lib/graphql/schema/non_null.rb
623
638
  - lib/graphql/schema/object.rb
624
639
  - lib/graphql/schema/printer.rb
640
+ - lib/graphql/schema/ractor_shareable.rb
625
641
  - lib/graphql/schema/relay_classic_mutation.rb
626
642
  - lib/graphql/schema/resolver.rb
627
643
  - lib/graphql/schema/resolver/has_payload_type.rb
@@ -728,6 +744,7 @@ files:
728
744
  - lib/graphql/subscriptions/serialize.rb
729
745
  - lib/graphql/testing.rb
730
746
  - lib/graphql/testing/helpers.rb
747
+ - lib/graphql/testing/mock_action_cable.rb
731
748
  - lib/graphql/tracing.rb
732
749
  - lib/graphql/tracing/active_support_notifications_trace.rb
733
750
  - lib/graphql/tracing/active_support_notifications_tracing.rb
@@ -739,6 +756,7 @@ files:
739
756
  - lib/graphql/tracing/data_dog_trace.rb
740
757
  - lib/graphql/tracing/data_dog_tracing.rb
741
758
  - lib/graphql/tracing/detailed_trace.rb
759
+ - lib/graphql/tracing/detailed_trace/active_record_backend.rb
742
760
  - lib/graphql/tracing/detailed_trace/memory_backend.rb
743
761
  - lib/graphql/tracing/detailed_trace/redis_backend.rb
744
762
  - lib/graphql/tracing/legacy_hooks_trace.rb
@@ -816,7 +834,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
816
834
  - !ruby/object:Gem::Version
817
835
  version: '0'
818
836
  requirements: []
819
- rubygems_version: 3.6.8
837
+ rubygems_version: 4.0.6
820
838
  specification_version: 4
821
839
  summary: A GraphQL language and runtime for Ruby
822
840
  test_files: []