graphql 2.0.18 → 2.0.20
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.
Potentially problematic release.
This version of graphql might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/lib/graphql/execution/interpreter/runtime.rb +7 -11
- data/lib/graphql/language/lexer.rb +6 -6
- data/lib/graphql/language/nodes.rb +26 -8
- data/lib/graphql/language/parser.rb +31 -30
- data/lib/graphql/language/parser.y +30 -29
- data/lib/graphql/query/context.rb +32 -36
- data/lib/graphql/schema/field.rb +2 -0
- data/lib/graphql/schema/member/base_dsl_methods.rb +13 -11
- data/lib/graphql/schema/member/has_ast_node.rb +12 -0
- data/lib/graphql/schema/member/has_directives.rb +11 -4
- data/lib/graphql/schema/member/has_fields.rb +1 -0
- data/lib/graphql/schema/member/relay_shortcuts.rb +19 -0
- data/lib/graphql/schema/member/type_system_helpers.rb +1 -1
- data/lib/graphql/schema/timeout.rb +1 -1
- data/lib/graphql/schema.rb +13 -9
- data/lib/graphql/tracing/appsignal_trace.rb +7 -2
- data/lib/graphql/types/relay/base_connection.rb +1 -1
- data/lib/graphql/types/relay/connection_behaviors.rb +24 -2
- data/lib/graphql/types/relay/edge_behaviors.rb +16 -2
- data/lib/graphql/types/relay/node_behaviors.rb +7 -1
- data/lib/graphql/types/relay/page_info_behaviors.rb +7 -2
- data/lib/graphql/types/relay.rb +0 -1
- data/lib/graphql/version.rb +1 -1
- data/lib/graphql.rb +8 -4
- metadata +20 -9
- data/lib/graphql/graphql_ext.bundle +0 -0
- data/lib/graphql/language/lexer.ri +0 -744
- data/lib/graphql/types/relay/default_relay.rb +0 -27
@@ -72,18 +72,6 @@ module GraphQL
|
|
72
72
|
# @return [Array<String, Integer>] The current position in the result
|
73
73
|
attr_reader :path
|
74
74
|
|
75
|
-
module EmptyScopedContext
|
76
|
-
EMPTY_HASH = {}.freeze
|
77
|
-
|
78
|
-
def self.key?(k)
|
79
|
-
false
|
80
|
-
end
|
81
|
-
|
82
|
-
def self.merged_context
|
83
|
-
EMPTY_HASH
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
75
|
# Make a new context which delegates key lookup to `values`
|
88
76
|
# @param query [GraphQL::Query] the query who owns this context
|
89
77
|
# @param values [Hash] A hash of arbitrary values which will be accessible at query-time
|
@@ -99,28 +87,35 @@ module GraphQL
|
|
99
87
|
@path = []
|
100
88
|
@value = nil
|
101
89
|
@context = self # for SharedMethods TODO delete sharedmethods
|
102
|
-
@scoped_context =
|
90
|
+
@scoped_context = ScopedContext.new(self)
|
103
91
|
end
|
104
92
|
|
105
93
|
class ScopedContext
|
94
|
+
NO_PATH = [].freeze
|
95
|
+
NO_CONTEXT = {}.freeze
|
96
|
+
|
106
97
|
def initialize(query_context)
|
107
98
|
@query_context = query_context
|
108
|
-
@scoped_contexts =
|
109
|
-
@all_keys =
|
110
|
-
@no_path = [].freeze
|
99
|
+
@scoped_contexts = nil
|
100
|
+
@all_keys = nil
|
111
101
|
end
|
112
102
|
|
113
103
|
def merged_context
|
114
|
-
|
115
|
-
|
116
|
-
|
104
|
+
if @scoped_contexts.nil?
|
105
|
+
NO_CONTEXT
|
106
|
+
else
|
107
|
+
merged_ctx = {}
|
108
|
+
each_present_path_ctx do |path_ctx|
|
109
|
+
merged_ctx = path_ctx.merge(merged_ctx)
|
110
|
+
end
|
111
|
+
merged_ctx
|
117
112
|
end
|
118
|
-
merged_ctx
|
119
113
|
end
|
120
114
|
|
121
115
|
def merge!(hash)
|
116
|
+
@all_keys ||= Set.new
|
122
117
|
@all_keys.merge(hash.keys)
|
123
|
-
ctx = @scoped_contexts
|
118
|
+
ctx = @scoped_contexts ||= {}
|
124
119
|
current_path.each do |path_part|
|
125
120
|
ctx = ctx[path_part] ||= { parent: ctx }
|
126
121
|
end
|
@@ -129,7 +124,7 @@ module GraphQL
|
|
129
124
|
end
|
130
125
|
|
131
126
|
def key?(key)
|
132
|
-
if @all_keys.include?(key)
|
127
|
+
if @all_keys && @all_keys.include?(key)
|
133
128
|
each_present_path_ctx do |path_ctx|
|
134
129
|
if path_ctx.key?(key)
|
135
130
|
return true
|
@@ -149,7 +144,7 @@ module GraphQL
|
|
149
144
|
end
|
150
145
|
|
151
146
|
def current_path
|
152
|
-
@query_context.current_path ||
|
147
|
+
@query_context.current_path || NO_PATH
|
153
148
|
end
|
154
149
|
|
155
150
|
def dig(key, *other_keys)
|
@@ -172,19 +167,23 @@ module GraphQL
|
|
172
167
|
# but look up the tree for previously-assigned scoped values
|
173
168
|
def each_present_path_ctx
|
174
169
|
ctx = @scoped_contexts
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
170
|
+
if ctx.nil?
|
171
|
+
# no-op
|
172
|
+
else
|
173
|
+
current_path.each do |path_part|
|
174
|
+
if ctx.key?(path_part)
|
175
|
+
ctx = ctx[path_part]
|
176
|
+
else
|
177
|
+
break
|
178
|
+
end
|
180
179
|
end
|
181
|
-
end
|
182
180
|
|
183
|
-
|
184
|
-
|
185
|
-
|
181
|
+
while ctx
|
182
|
+
if (scoped_ctx = ctx[:scoped_context])
|
183
|
+
yield(scoped_ctx)
|
184
|
+
end
|
185
|
+
ctx = ctx[:parent]
|
186
186
|
end
|
187
|
-
ctx = ctx[:parent]
|
188
187
|
end
|
189
188
|
end
|
190
189
|
end
|
@@ -329,9 +328,6 @@ module GraphQL
|
|
329
328
|
end
|
330
329
|
|
331
330
|
def scoped_merge!(hash)
|
332
|
-
if @scoped_context == EmptyScopedContext
|
333
|
-
@scoped_context = ScopedContext.new(self)
|
334
|
-
end
|
335
331
|
@scoped_context.merge!(hash)
|
336
332
|
end
|
337
333
|
|
data/lib/graphql/schema/field.rb
CHANGED
@@ -46,7 +46,7 @@ module GraphQL
|
|
46
46
|
elsif defined?(@description)
|
47
47
|
@description
|
48
48
|
else
|
49
|
-
nil
|
49
|
+
@description = nil
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
@@ -56,8 +56,12 @@ module GraphQL
|
|
56
56
|
def inherited(child_class)
|
57
57
|
child_class.introspection(introspection)
|
58
58
|
child_class.description(description)
|
59
|
-
|
59
|
+
child_class.default_graphql_name = nil
|
60
|
+
|
61
|
+
if defined?(@graphql_name) && @graphql_name && (self.name.nil? || graphql_name != default_graphql_name)
|
60
62
|
child_class.graphql_name(graphql_name)
|
63
|
+
else
|
64
|
+
child_class.graphql_name = nil
|
61
65
|
end
|
62
66
|
super
|
63
67
|
end
|
@@ -98,7 +102,8 @@ module GraphQL
|
|
98
102
|
def default_graphql_name
|
99
103
|
@default_graphql_name ||= begin
|
100
104
|
raise GraphQL::RequiredImplementationMissingError, 'Anonymous class should declare a `graphql_name`' if name.nil?
|
101
|
-
-name.split("::").last.sub(/Type\Z/, "")
|
105
|
+
-name.split("::").last.sub(/Type\Z/, "")
|
106
|
+
end
|
102
107
|
end
|
103
108
|
|
104
109
|
def visible?(context)
|
@@ -109,16 +114,13 @@ module GraphQL
|
|
109
114
|
true
|
110
115
|
end
|
111
116
|
|
112
|
-
|
113
|
-
|
114
|
-
|
117
|
+
def default_relay
|
118
|
+
false
|
119
|
+
end
|
115
120
|
|
116
|
-
|
121
|
+
protected
|
117
122
|
|
118
|
-
|
119
|
-
super
|
120
|
-
subclass.default_graphql_name = nil
|
121
|
-
end
|
123
|
+
attr_writer :default_graphql_name, :graphql_name
|
122
124
|
end
|
123
125
|
end
|
124
126
|
end
|
@@ -3,6 +3,16 @@ module GraphQL
|
|
3
3
|
class Schema
|
4
4
|
class Member
|
5
5
|
module HasAstNode
|
6
|
+
def self.extended(child_cls)
|
7
|
+
super
|
8
|
+
child_cls.ast_node = nil
|
9
|
+
end
|
10
|
+
|
11
|
+
def inherited(child_cls)
|
12
|
+
super
|
13
|
+
child_cls.ast_node = nil
|
14
|
+
end
|
15
|
+
|
6
16
|
# If this schema was parsed from a `.graphql` file (or other SDL),
|
7
17
|
# this is the AST node that defined this part of the schema.
|
8
18
|
def ast_node(new_ast_node = nil)
|
@@ -14,6 +24,8 @@ module GraphQL
|
|
14
24
|
nil
|
15
25
|
end
|
16
26
|
end
|
27
|
+
|
28
|
+
attr_writer :ast_node
|
17
29
|
end
|
18
30
|
end
|
19
31
|
end
|
@@ -4,6 +4,16 @@ module GraphQL
|
|
4
4
|
class Schema
|
5
5
|
class Member
|
6
6
|
module HasDirectives
|
7
|
+
def self.extended(child_cls)
|
8
|
+
super
|
9
|
+
child_cls.module_eval { self.own_directives = nil }
|
10
|
+
end
|
11
|
+
|
12
|
+
def inherited(child_cls)
|
13
|
+
super
|
14
|
+
child_cls.own_directives = nil
|
15
|
+
end
|
16
|
+
|
7
17
|
# Create an instance of `dir_class` for `self`, using `options`.
|
8
18
|
#
|
9
19
|
# It removes a previously-attached instance of `dir_class`, if there is one.
|
@@ -101,12 +111,9 @@ module GraphQL
|
|
101
111
|
end
|
102
112
|
end
|
103
113
|
|
104
|
-
|
105
114
|
protected
|
106
115
|
|
107
|
-
|
108
|
-
@own_directives
|
109
|
-
end
|
116
|
+
attr_accessor :own_directives
|
110
117
|
end
|
111
118
|
end
|
112
119
|
end
|
@@ -6,6 +6,7 @@ module GraphQL
|
|
6
6
|
module RelayShortcuts
|
7
7
|
def edge_type_class(new_edge_type_class = nil)
|
8
8
|
if new_edge_type_class
|
9
|
+
initialize_relay_metadata
|
9
10
|
@edge_type_class = new_edge_type_class
|
10
11
|
else
|
11
12
|
# Don't call `ancestor.edge_type_class`
|
@@ -22,6 +23,7 @@ module GraphQL
|
|
22
23
|
|
23
24
|
def connection_type_class(new_connection_type_class = nil)
|
24
25
|
if new_connection_type_class
|
26
|
+
initialize_relay_metadata
|
25
27
|
@connection_type_class = new_connection_type_class
|
26
28
|
else
|
27
29
|
# Don't call `ancestor.connection_type_class`
|
@@ -37,6 +39,7 @@ module GraphQL
|
|
37
39
|
end
|
38
40
|
|
39
41
|
def edge_type
|
42
|
+
initialize_relay_metadata
|
40
43
|
@edge_type ||= begin
|
41
44
|
edge_name = self.graphql_name + "Edge"
|
42
45
|
node_type_class = self
|
@@ -48,6 +51,7 @@ module GraphQL
|
|
48
51
|
end
|
49
52
|
|
50
53
|
def connection_type
|
54
|
+
initialize_relay_metadata
|
51
55
|
@connection_type ||= begin
|
52
56
|
conn_name = self.graphql_name + "Connection"
|
53
57
|
edge_type_class = self.edge_type
|
@@ -67,6 +71,21 @@ module GraphQL
|
|
67
71
|
def configured_edge_type_class
|
68
72
|
@edge_type_class
|
69
73
|
end
|
74
|
+
|
75
|
+
attr_writer :edge_type, :connection_type, :connection_type_class, :edge_type_class
|
76
|
+
|
77
|
+
private
|
78
|
+
|
79
|
+
# If one of thse values is accessed, initialize all the instance variables to retain
|
80
|
+
# a consistent object shape.
|
81
|
+
def initialize_relay_metadata
|
82
|
+
if !defined?(@connection_type)
|
83
|
+
@connection_type = nil
|
84
|
+
@edge_type = nil
|
85
|
+
@connection_type_class = nil
|
86
|
+
@edge_type_class = nil
|
87
|
+
end
|
88
|
+
end
|
70
89
|
end
|
71
90
|
end
|
72
91
|
end
|
data/lib/graphql/schema.rb
CHANGED
@@ -147,7 +147,12 @@ module GraphQL
|
|
147
147
|
if new_class
|
148
148
|
@trace_class = new_class
|
149
149
|
elsif !defined?(@trace_class)
|
150
|
-
|
150
|
+
parent_trace_class = if superclass.respond_to?(:trace_class)
|
151
|
+
superclass.trace_class
|
152
|
+
else
|
153
|
+
GraphQL::Tracing::Trace
|
154
|
+
end
|
155
|
+
@trace_class = Class.new(parent_trace_class)
|
151
156
|
end
|
152
157
|
@trace_class
|
153
158
|
end
|
@@ -794,11 +799,7 @@ module GraphQL
|
|
794
799
|
end
|
795
800
|
|
796
801
|
if resolved_type.nil? || (resolved_type.is_a?(Module) && resolved_type.respond_to?(:kind))
|
797
|
-
|
798
|
-
[resolved_type, resolved_value]
|
799
|
-
else
|
800
|
-
resolved_type
|
801
|
-
end
|
802
|
+
[resolved_type, resolved_value]
|
802
803
|
else
|
803
804
|
raise ".resolve_type should return a type definition, but got #{resolved_type.inspect} (#{resolved_type.class}) from `resolve_type(#{type}, #{obj}, #{ctx})`"
|
804
805
|
end
|
@@ -955,14 +956,17 @@ module GraphQL
|
|
955
956
|
# @param options [Hash] Keywords that will be passed to the tracing class during `#initialize`
|
956
957
|
# @return [void]
|
957
958
|
def trace_with(trace_mod, **options)
|
958
|
-
|
959
|
-
@trace_options.merge!(options)
|
959
|
+
trace_options.merge!(options)
|
960
960
|
trace_class.include(trace_mod)
|
961
961
|
end
|
962
962
|
|
963
|
+
def trace_options
|
964
|
+
@trace_options ||= superclass.respond_to?(:trace_options) ? superclass.trace_options.dup : {}
|
965
|
+
end
|
966
|
+
|
963
967
|
def new_trace(**options)
|
964
968
|
if defined?(@trace_options)
|
965
|
-
options =
|
969
|
+
options = trace_options.merge(options)
|
966
970
|
end
|
967
971
|
trace_class.new(**options)
|
968
972
|
end
|
@@ -5,7 +5,6 @@ module GraphQL
|
|
5
5
|
module AppsignalTrace
|
6
6
|
include PlatformTrace
|
7
7
|
|
8
|
-
|
9
8
|
# @param set_action_name [Boolean] If true, the GraphQL operation name will be used as the transaction name.
|
10
9
|
# This is not advised if you run more than one query per HTTP request, for example, with `graphql-client` or multiplexing.
|
11
10
|
# It can also be specified per-query with `context[:set_appsignal_action_name]`.
|
@@ -46,7 +45,13 @@ module GraphQL
|
|
46
45
|
|
47
46
|
def platform_execute_field(platform_key)
|
48
47
|
Appsignal.instrument(platform_key) do
|
49
|
-
|
48
|
+
yield
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
def platform_authorized(platform_key)
|
53
|
+
Appsignal.instrument(platform_key) do
|
54
|
+
yield
|
50
55
|
end
|
51
56
|
end
|
52
57
|
|
@@ -35,7 +35,7 @@ module GraphQL
|
|
35
35
|
# # Alternatively, you can call the class methods followed by your edge type
|
36
36
|
# # edges_nullable true
|
37
37
|
# # edge_nullable true
|
38
|
-
# #
|
38
|
+
# # node_nullable true
|
39
39
|
# # has_nodes_field true
|
40
40
|
# # edge_type Types::PostEdge
|
41
41
|
# end
|
@@ -9,16 +9,34 @@ module GraphQL
|
|
9
9
|
|
10
10
|
def self.included(child_class)
|
11
11
|
child_class.extend(ClassMethods)
|
12
|
-
child_class.extend(Relay::DefaultRelay)
|
13
|
-
child_class.default_relay(true)
|
14
12
|
child_class.has_nodes_field(true)
|
15
13
|
child_class.node_nullable(true)
|
16
14
|
child_class.edges_nullable(true)
|
17
15
|
child_class.edge_nullable(true)
|
16
|
+
child_class.module_eval {
|
17
|
+
self.edge_type = nil
|
18
|
+
self.node_type = nil
|
19
|
+
self.edge_class = nil
|
20
|
+
}
|
18
21
|
add_page_info_field(child_class)
|
19
22
|
end
|
20
23
|
|
21
24
|
module ClassMethods
|
25
|
+
def inherited(child_class)
|
26
|
+
super
|
27
|
+
child_class.has_nodes_field(has_nodes_field)
|
28
|
+
child_class.node_nullable(node_nullable)
|
29
|
+
child_class.edges_nullable(edges_nullable)
|
30
|
+
child_class.edge_nullable(edge_nullable)
|
31
|
+
child_class.edge_type = nil
|
32
|
+
child_class.node_type = nil
|
33
|
+
child_class.edge_class = nil
|
34
|
+
end
|
35
|
+
|
36
|
+
def default_relay?
|
37
|
+
true
|
38
|
+
end
|
39
|
+
|
22
40
|
# @return [Class]
|
23
41
|
attr_reader :node_type
|
24
42
|
|
@@ -124,6 +142,10 @@ module GraphQL
|
|
124
142
|
end
|
125
143
|
end
|
126
144
|
|
145
|
+
protected
|
146
|
+
|
147
|
+
attr_writer :edge_type, :node_type, :edge_class
|
148
|
+
|
127
149
|
private
|
128
150
|
|
129
151
|
def define_nodes_field(nullable, field_options: nil)
|
@@ -8,11 +8,21 @@ module GraphQL
|
|
8
8
|
child_class.description("An edge in a connection.")
|
9
9
|
child_class.field(:cursor, String, null: false, description: "A cursor for use in pagination.")
|
10
10
|
child_class.extend(ClassMethods)
|
11
|
-
child_class.
|
11
|
+
child_class.class_eval { self.node_type = nil }
|
12
12
|
child_class.node_nullable(true)
|
13
13
|
end
|
14
14
|
|
15
15
|
module ClassMethods
|
16
|
+
def inherited(child_class)
|
17
|
+
super
|
18
|
+
child_class.node_type = nil
|
19
|
+
child_class.node_nullable = nil
|
20
|
+
end
|
21
|
+
|
22
|
+
def default_relay?
|
23
|
+
true
|
24
|
+
end
|
25
|
+
|
16
26
|
# Get or set the Object type that this edge wraps.
|
17
27
|
#
|
18
28
|
# @param node_type [Class] A `Schema::Object` subclass
|
@@ -49,11 +59,15 @@ module GraphQL
|
|
49
59
|
# Use `node_nullable(false)` in your base class to make non-null `node` field.
|
50
60
|
def node_nullable(new_value = nil)
|
51
61
|
if new_value.nil?
|
52
|
-
|
62
|
+
@node_nullable != nil ? @node_nullable : superclass.node_nullable
|
53
63
|
else
|
54
64
|
@node_nullable = new_value
|
55
65
|
end
|
56
66
|
end
|
67
|
+
|
68
|
+
protected
|
69
|
+
|
70
|
+
attr_writer :node_type, :node_nullable
|
57
71
|
end
|
58
72
|
end
|
59
73
|
end
|
@@ -5,7 +5,7 @@ module GraphQL
|
|
5
5
|
module Relay
|
6
6
|
module NodeBehaviors
|
7
7
|
def self.included(child_module)
|
8
|
-
child_module.extend(
|
8
|
+
child_module.extend(ClassMethods)
|
9
9
|
child_module.description("An object with an ID.")
|
10
10
|
child_module.field(:id, ID, null: false, description: "ID of the object.", resolver_method: :default_global_id)
|
11
11
|
end
|
@@ -13,6 +13,12 @@ module GraphQL
|
|
13
13
|
def default_global_id
|
14
14
|
context.schema.id_from_object(object, self.class, context)
|
15
15
|
end
|
16
|
+
|
17
|
+
module ClassMethods
|
18
|
+
def default_relay?
|
19
|
+
true
|
20
|
+
end
|
21
|
+
end
|
16
22
|
end
|
17
23
|
end
|
18
24
|
end
|
@@ -4,8 +4,7 @@ module GraphQL
|
|
4
4
|
module Relay
|
5
5
|
module PageInfoBehaviors
|
6
6
|
def self.included(child_class)
|
7
|
-
child_class.extend
|
8
|
-
|
7
|
+
child_class.extend ClassMethods
|
9
8
|
child_class.description "Information about pagination in a connection."
|
10
9
|
child_class.field :has_next_page, Boolean, null: false,
|
11
10
|
description: "When paginating forwards, are there more items?"
|
@@ -20,6 +19,12 @@ module GraphQL
|
|
20
19
|
description: "When paginating forwards, the cursor to continue."
|
21
20
|
end
|
22
21
|
end
|
22
|
+
|
23
|
+
module ClassMethods
|
24
|
+
def default_relay?
|
25
|
+
true
|
26
|
+
end
|
27
|
+
end
|
23
28
|
end
|
24
29
|
end
|
25
30
|
end
|
data/lib/graphql/types/relay.rb
CHANGED
data/lib/graphql/version.rb
CHANGED
data/lib/graphql.rb
CHANGED
@@ -43,7 +43,7 @@ This is probably a bug in GraphQL-Ruby, please report this error on GitHub: http
|
|
43
43
|
# @param graphql_string [String] a GraphQL query string or schema definition
|
44
44
|
# @return [GraphQL::Language::Nodes::Document]
|
45
45
|
def self.parse(graphql_string, trace: GraphQL::Tracing::NullTrace)
|
46
|
-
|
46
|
+
default_parser.parse(graphql_string, trace: trace)
|
47
47
|
end
|
48
48
|
|
49
49
|
# Read the contents of `filename` and parse them as GraphQL
|
@@ -51,15 +51,19 @@ This is probably a bug in GraphQL-Ruby, please report this error on GitHub: http
|
|
51
51
|
# @return [GraphQL::Language::Nodes::Document]
|
52
52
|
def self.parse_file(filename)
|
53
53
|
content = File.read(filename)
|
54
|
-
|
54
|
+
default_parser.parse(content, filename: filename)
|
55
|
+
end
|
56
|
+
|
57
|
+
# @return [Array<Array>]
|
58
|
+
def self.scan(graphql_string)
|
59
|
+
default_parser.scan(graphql_string)
|
55
60
|
end
|
56
61
|
|
57
62
|
def self.parse_with_racc(string, filename: nil, trace: GraphQL::Tracing::NullTrace)
|
58
63
|
GraphQL::Language::Parser.parse(string, filename: filename, trace: trace)
|
59
64
|
end
|
60
65
|
|
61
|
-
|
62
|
-
def self.scan(graphql_string)
|
66
|
+
def self.scan_with_ruby(graphql_string)
|
63
67
|
GraphQL::Language::Lexer.tokenize(graphql_string)
|
64
68
|
end
|
65
69
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: graphql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.20
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Mosolgo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03-
|
11
|
+
date: 2023-03-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: benchmark-ips
|
@@ -112,16 +112,30 @@ dependencies:
|
|
112
112
|
name: rake
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- - "
|
115
|
+
- - ">="
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
117
|
+
version: '0'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- - "
|
122
|
+
- - ">="
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rake-compiler
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: rubocop
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -317,7 +331,6 @@ files:
|
|
317
331
|
- lib/graphql/execution/multiplex.rb
|
318
332
|
- lib/graphql/execution_error.rb
|
319
333
|
- lib/graphql/filter.rb
|
320
|
-
- lib/graphql/graphql_ext.bundle
|
321
334
|
- lib/graphql/integer_decoding_error.rb
|
322
335
|
- lib/graphql/integer_encoding_error.rb
|
323
336
|
- lib/graphql/introspection.rb
|
@@ -342,7 +355,6 @@ files:
|
|
342
355
|
- lib/graphql/language/document_from_schema_definition.rb
|
343
356
|
- lib/graphql/language/generation.rb
|
344
357
|
- lib/graphql/language/lexer.rb
|
345
|
-
- lib/graphql/language/lexer.ri
|
346
358
|
- lib/graphql/language/nodes.rb
|
347
359
|
- lib/graphql/language/parser.rb
|
348
360
|
- lib/graphql/language/parser.y
|
@@ -570,7 +582,6 @@ files:
|
|
570
582
|
- lib/graphql/types/relay/base_connection.rb
|
571
583
|
- lib/graphql/types/relay/base_edge.rb
|
572
584
|
- lib/graphql/types/relay/connection_behaviors.rb
|
573
|
-
- lib/graphql/types/relay/default_relay.rb
|
574
585
|
- lib/graphql/types/relay/edge_behaviors.rb
|
575
586
|
- lib/graphql/types/relay/has_node_field.rb
|
576
587
|
- lib/graphql/types/relay/has_nodes_field.rb
|
Binary file
|