graphql-client 0.4.3 → 0.5.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cfa44a10bde5cd3e810def4e88b2b923317579b4
4
- data.tar.gz: 891e83b4477895b58d12f54b00f99c0d87fbb8bc
3
+ metadata.gz: 98bdf4494c17b18e8f9f39cf5f1d59c3865bde59
4
+ data.tar.gz: f1c0a8d916b5c9dc6730b255e5463aa07f8e53a0
5
5
  SHA512:
6
- metadata.gz: a160d9f68d736a4b3663b0f81b0d5c989efbb4725ae3927b0e2545b814e5d1b2167579c8c666a324113f627b84b397177a58665433ce8e4a89cea8b2ee897e2e
7
- data.tar.gz: d1c2e1ee4189490748fbe2ac18935230d86c07948f5df1e791bb333317b1f94cdb9efea5f560bf7a5591f7b5f74e0102bb9eaf8c1310023e32d3359143182218
6
+ metadata.gz: c29b0f488f7a35afb150b94cf83b7d2325fc8c9d4c1b2bc40e3656c921b3275f85fe572829d1628ae56caac4b7afeb5565c97551f48ecf85c647e69a861a9896
7
+ data.tar.gz: 8a0cef5bb0fef3b61516be4c57835ac30707a16a058328c97391e712110be60f72fe436011fa7985bc7eb0f1e176d72ce08fb5a4fe4f3a38790fa36e1e921440
@@ -78,7 +78,7 @@ module GraphQL
78
78
  result
79
79
  end
80
80
 
81
- def initialize(schema: nil, execute: nil, enforce_collocated_callers: false)
81
+ def initialize(schema:, execute: nil, enforce_collocated_callers: false)
82
82
  @schema = self.class.load_schema(schema)
83
83
  @execute = execute
84
84
  @document = GraphQL::Language::Nodes::Document.new(definitions: [])
@@ -233,25 +233,21 @@ module GraphQL
233
233
 
234
234
  document_dependencies = Language::Nodes::Document.new(definitions: doc.definitions + definition_dependencies.to_a)
235
235
 
236
- if @schema
237
- rules = GraphQL::StaticValidation::ALL_RULES - [GraphQL::StaticValidation::FragmentsAreUsed]
238
- validator = GraphQL::StaticValidation::Validator.new(schema: @schema, rules: rules)
239
- query = GraphQL::Query.new(@schema, document: document_dependencies)
240
-
241
- errors = validator.validate(query)
242
- errors.fetch(:errors).each do |error|
243
- error_hash = error.to_h
244
- validation_line = error_hash["locations"][0]["line"]
245
- error = ValidationError.new(error_hash["message"])
246
- error.set_backtrace(["#{filename}:#{lineno + validation_line}"] + caller)
247
- raise error
248
- end
249
-
250
- document_types = DocumentTypes.analyze_types(@schema, doc).freeze
251
- else
252
- document_types = {}.freeze
236
+ rules = GraphQL::StaticValidation::ALL_RULES - [GraphQL::StaticValidation::FragmentsAreUsed]
237
+ validator = GraphQL::StaticValidation::Validator.new(schema: self.schema, rules: rules)
238
+ query = GraphQL::Query.new(self.schema, document: document_dependencies)
239
+
240
+ errors = validator.validate(query)
241
+ errors.fetch(:errors).each do |error|
242
+ error_hash = error.to_h
243
+ validation_line = error_hash["locations"][0]["line"]
244
+ error = ValidationError.new(error_hash["message"])
245
+ error.set_backtrace(["#{filename}:#{lineno + validation_line}"] + caller)
246
+ raise error
253
247
  end
254
248
 
249
+ document_types = DocumentTypes.analyze_types(self.schema, doc).freeze
250
+
255
251
  QueryTypename.insert_typename_fields(doc, types: document_types)
256
252
 
257
253
  definitions = {}
@@ -259,7 +255,7 @@ module GraphQL
259
255
  node.name = nil if node.name == "__anonymous__"
260
256
  sliced_document = Language::DefinitionSlice.slice(document_dependencies, node.name)
261
257
  definition = Definition.for(
262
- schema: @schema,
258
+ schema: self.schema,
263
259
  node: node,
264
260
  document: sliced_document,
265
261
  document_types: document_types,
@@ -58,6 +58,8 @@ module GraphQL
58
58
  def execute(document:, operation_name: nil, variables: {}, context: {})
59
59
  request = Net::HTTP::Post.new(uri.request_uri)
60
60
 
61
+ request.basic_auth(uri.user, uri.password) if uri.user || uri.password
62
+
61
63
  request["Accept"] = "application/json"
62
64
  request["Content-Type"] = "application/json"
63
65
  headers(context).each { |name, value| request[name] = value }
@@ -104,16 +104,6 @@ module GraphQL
104
104
  end
105
105
  RUBY
106
106
  field_readers << "#{field_alias}?".to_sym
107
-
108
- next unless field == "edges"
109
- class_eval <<-RUBY, __FILE__, __LINE__
110
- def each_node
111
- return enum_for(:each_node) unless block_given?
112
- edges.each { |edge| yield edge.node }
113
- self
114
- end
115
- RUBY
116
- field_readers << :each_node
117
107
  end
118
108
 
119
109
  assigns = @fields.map do |field, klass|
@@ -54,8 +54,6 @@ module RuboCop
54
54
  names << underscore_name = ActiveSupport::Inflector.underscore(name)
55
55
  names << "#{underscore_name}?"
56
56
 
57
- names << "each_node" if name == "edges" || name == "node"
58
-
59
57
  names
60
58
  end
61
59
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphql-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GitHub
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-04 00:00:00.000000000 Z
11
+ date: 2017-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -166,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
166
  version: '0'
167
167
  requirements: []
168
168
  rubyforge_project:
169
- rubygems_version: 2.5.2
169
+ rubygems_version: 2.5.1
170
170
  signing_key:
171
171
  specification_version: 4
172
172
  summary: GraphQL Client