fauna 1.3 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NGY2NjU0NzY0YjAxMGViODQ0YTRlYzBkOGFjM2JlNGJiZTJkYzY1Ng==
5
+ data.tar.gz: !binary |-
6
+ OGJjZmVhODYzNGNiM2RjMTRiMmEwYWQ3NDMyZmU5OWRkNjU5ZDhhYw==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ MTliY2Q1ZTRlNDIzMWNmNTAyOGQ4OWJmZDQwNmExZTViYjM3NzJjZGRiMWNk
10
+ OTk3NjA0M2MwODNkZTVlNzU5ZDhiNDZmMDg0ZTg1MzE2NWE0MDdmYjFkZjg2
11
+ ZGU3ZWRiZmUxYzE0MmJmNTc5M2IzYWFhOWFiYTE2NzdmNDY1YTM=
12
+ data.tar.gz: !binary |-
13
+ YzVjZTA3ZTE2ZTMyOTczMDZhOGZhYjBiZWRhMmMxMjgwNWY2NTE4OGQ0Mjhi
14
+ MmQ3YTJjNWQ1M2ZjZjg0OTA5NmVkOTZlN2NlY2QzZjFiODQ3NWQzYTQ3ZWMx
15
+ Y2U5NTJhOTgxNjUzODNhYjI4M2ZjMTM3MTE2ZGJhYTA1NjIzMjA=
checksums.yaml.gz.sig ADDED
Binary file
data.tar.gz.sig ADDED
@@ -0,0 +1,2 @@
1
+ H�j>ת��_�8��X�J/Ȏ^Y��ϵ�B��x�k-2*�Owr�a�2Ru߮�^���
2
+ �P��I~�$�����8�/����
data/CHANGELOG CHANGED
@@ -1,6 +1,10 @@
1
- v1.3 Add support for PATCH, minor error handling improvements.
1
+ v1.3.2 Fix patch.
2
2
 
3
- v1.2 Switch to Typhoeus HTTP client.
3
+ v1.3.1 Switch to Faraday http client.
4
+
5
+ v1.3.0 Add support for PATCH, minor error handling improvements.
6
+
7
+ v1.2.0 Switch to Typhoeus HTTP client.
4
8
 
5
9
  v1.1.1 Remove last bit of ORM-ness.
6
10
 
@@ -20,7 +24,7 @@ v0.1.2 Fauna::User.find_by_external_id returns a User or nil, not an Array.
20
24
 
21
25
  v0.1.1 Fix ActionDispatch::Reloader bug.
22
26
 
23
- v0.1. Refactor resource hierarchy. Add cache. Flesh out ActiveModel
27
+ v0.1.1 Refactor resource hierarchy. Add cache. Flesh out ActiveModel
24
28
  support.
25
29
 
26
- v0.0. First release.
30
+ v0.0.0 First release.
data/Rakefile CHANGED
@@ -3,12 +3,12 @@ require 'echoe'
3
3
  Echoe.new("fauna") do |p|
4
4
  p.author = "Fauna, Inc."
5
5
  p.project = "fauna"
6
- p.summary = "Experimental Ruby client for the Fauna database."
6
+ p.summary = "Ruby client for the Fauna distributed database."
7
7
  p.retain_gemspec = true
8
8
  p.require_signed
9
9
  p.certificate_chain = ["fauna-ruby.pem"]
10
10
  p.licenses = ["Mozilla Public License, Version 2.0 (MPL2)"]
11
- p.dependencies = ["typhoeus", "json"]
11
+ p.dependencies = ["faraday ~>0.9.0", "json ~>1.8.0"]
12
12
  p.development_dependencies = ["mocha", "echoe", "minitest ~>4.0"]
13
13
  end
14
14
 
data/fauna.gemspec CHANGED
@@ -1,13 +1,15 @@
1
1
  # -*- encoding: utf-8 -*-
2
+ # stub: fauna 1.3.2 ruby lib
2
3
 
3
4
  Gem::Specification.new do |s|
4
5
  s.name = "fauna"
5
- s.version = "1.3"
6
+ s.version = "1.3.2"
6
7
 
7
8
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
9
  s.authors = ["Fauna, Inc."]
9
- s.date = "2014-03-31"
10
- s.description = "Experimental Ruby client for the Fauna database."
10
+ s.cert_chain = ["/Users/eweaver/fauna/fauna-ruby/fauna-ruby.pem"]
11
+ s.date = "2014-05-15"
12
+ s.description = "Ruby client for the Fauna distributed database."
11
13
  s.email = ""
12
14
  s.extra_rdoc_files = ["CHANGELOG", "LICENSE", "README.md", "lib/fauna.rb", "lib/fauna/cache.rb", "lib/fauna/client.rb", "lib/fauna/connection.rb", "lib/fauna/named_resource.rb", "lib/fauna/rails.rb", "lib/fauna/resource.rb", "lib/fauna/set.rb", "lib/fauna/util.rb", "lib/tasks/fauna.rake"]
13
15
  s.files = ["CHANGELOG", "Gemfile", "LICENSE", "Manifest", "README.md", "Rakefile", "fauna-ruby.pem", "fauna.gemspec", "lib/fauna.rb", "lib/fauna/cache.rb", "lib/fauna/client.rb", "lib/fauna/connection.rb", "lib/fauna/named_resource.rb", "lib/fauna/rails.rb", "lib/fauna/resource.rb", "lib/fauna/set.rb", "lib/fauna/util.rb", "lib/tasks/fauna.rake", "test/class_test.rb", "test/client_test.rb", "test/connection_test.rb", "test/database_test.rb", "test/query_test.rb", "test/readme_test.rb", "test/set_test.rb", "test/test_helper.rb"]
@@ -16,29 +18,30 @@ Gem::Specification.new do |s|
16
18
  s.rdoc_options = ["--line-numbers", "--title", "Fauna", "--main", "README.md"]
17
19
  s.require_paths = ["lib"]
18
20
  s.rubyforge_project = "fauna"
19
- s.rubygems_version = "1.8.24"
20
- s.summary = "Experimental Ruby client for the Fauna database."
21
+ s.rubygems_version = "2.1.10"
22
+ s.signing_key = "/Users/eweaver/cloudburst/configuration/gem_certificates/gem-private_key.pem"
23
+ s.summary = "Ruby client for the Fauna distributed database."
21
24
  s.test_files = ["test/class_test.rb", "test/client_test.rb", "test/connection_test.rb", "test/database_test.rb", "test/query_test.rb", "test/readme_test.rb", "test/set_test.rb", "test/test_helper.rb"]
22
25
 
23
26
  if s.respond_to? :specification_version then
24
- s.specification_version = 3
27
+ s.specification_version = 4
25
28
 
26
29
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
27
- s.add_runtime_dependency(%q<typhoeus>, [">= 0"])
28
- s.add_runtime_dependency(%q<json>, [">= 0"])
30
+ s.add_runtime_dependency(%q<faraday>, ["~> 0.9.0"])
31
+ s.add_runtime_dependency(%q<json>, ["~> 1.8.0"])
29
32
  s.add_development_dependency(%q<mocha>, [">= 0"])
30
33
  s.add_development_dependency(%q<echoe>, [">= 0"])
31
34
  s.add_development_dependency(%q<minitest>, ["~> 4.0"])
32
35
  else
33
- s.add_dependency(%q<typhoeus>, [">= 0"])
34
- s.add_dependency(%q<json>, [">= 0"])
36
+ s.add_dependency(%q<faraday>, ["~> 0.9.0"])
37
+ s.add_dependency(%q<json>, ["~> 1.8.0"])
35
38
  s.add_dependency(%q<mocha>, [">= 0"])
36
39
  s.add_dependency(%q<echoe>, [">= 0"])
37
40
  s.add_dependency(%q<minitest>, ["~> 4.0"])
38
41
  end
39
42
  else
40
- s.add_dependency(%q<typhoeus>, [">= 0"])
41
- s.add_dependency(%q<json>, [">= 0"])
43
+ s.add_dependency(%q<faraday>, ["~> 0.9.0"])
44
+ s.add_dependency(%q<json>, ["~> 1.8.0"])
42
45
  s.add_dependency(%q<mocha>, [">= 0"])
43
46
  s.add_dependency(%q<echoe>, [">= 0"])
44
47
  s.add_dependency(%q<minitest>, ["~> 4.0"])
data/lib/fauna.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'json'
2
2
  require 'logger'
3
3
  require 'uri'
4
- require 'typhoeus'
4
+ require 'faraday'
5
5
  require 'cgi'
6
6
  require 'zlib'
7
7
 
@@ -1,21 +1,21 @@
1
1
  module Fauna
2
2
  class Connection
3
3
  class Error < RuntimeError
4
- attr_reader :error, :reason, :fields
4
+ attr_reader :error, :reason, :parameters
5
5
 
6
- def initialize(error, reason = nil, fields = {})
7
- if error.is_a? Hash
6
+ def initialize(error, reason = nil, parameters = {})
7
+ if error.is_a?(Hash)
8
8
  json = error
9
9
  @error = json['error']
10
10
  @reason = json['reason']
11
- @fields = json['fields'] || {}
11
+ @parameters = json['parameters'] || {}
12
12
  else
13
13
  @error = error
14
14
  @reason = reason
15
- @fields = fields
15
+ @parameters = parameters
16
16
  end
17
17
 
18
- super(@reason ? "#{@error}: #{@reason}" : @error)
18
+ super(@reason || @error)
19
19
  end
20
20
  end
21
21
 
@@ -26,40 +26,31 @@ module Fauna
26
26
  class MethodNotAllowed < Error; end
27
27
  class NetworkError < Error; end
28
28
 
29
- HANDLER = Proc.new do |res, body, _, _|
30
- case res.code
31
- when 200..299
32
- [res.headers, body]
33
- when 400
34
- raise BadRequest.new(JSON.parse(body))
35
- when 401
36
- raise Unauthorized.new(JSON.parse(body))
37
- when 403
38
- raise PermissionDenied.new(JSON.parse(body))
39
- when 404
40
- raise NotFound.new(JSON.parse(body))
41
- when 405
42
- raise MethodNotAllowed.new(JSON.parse(body))
43
- else
44
- raise NetworkError, body
45
- end
46
- end
47
-
48
- attr_reader :domain, :scheme, :port, :credentials, :timeout
29
+ attr_reader :domain, :scheme, :port, :credentials, :timeout, :connection_timeout, :adapter, :logger
49
30
 
50
31
  def initialize(params={})
51
32
  @logger = params[:logger] || nil
52
33
  @domain = params[:domain] || "rest1.fauna.org"
53
34
  @scheme = params[:scheme] || "https"
54
35
  @port = params[:port] || (@scheme == "https" ? 443 : 80)
55
- @timeout = params[:timeout] || 60000
56
- @connecttimeout = params[:connecttimeout] || 60000
36
+ @timeout = params[:timeout] || 60
37
+ @connection_timeout = params[:connection_timeout] || 60
38
+ @adapter = params[:adapter] || Faraday.default_adapter
39
+ @credentials = params[:secret].to_s.split(":")
57
40
 
58
41
  if ENV["FAUNA_DEBUG"]
59
42
  @logger = Logger.new(STDERR)
60
- @debug = true
43
+ @logger.formatter = proc { |_, _, _, msg| "#{msg}\n" }
44
+ end
45
+
46
+ @conn = Faraday.new(
47
+ :url => "#{@scheme}://#{@domain}:#{@port}/",
48
+ :headers => { "Accept-Encoding" => "gzip", "Content-Type" => "application/json;charset=utf-8" },
49
+ :request => { :timeout => @timeout, :open_timeout => @connection_timeout }
50
+ ) do |conn|
51
+ conn.adapter(@adapter)
52
+ conn.basic_auth(@credentials[0].to_s, @credentials[1].to_s)
61
53
  end
62
- @credentials = params[:secret].to_s
63
54
  end
64
55
 
65
56
  def get(ref, query = {})
@@ -116,44 +107,49 @@ module Fauna
116
107
  end
117
108
 
118
109
  def execute(action, ref, data = nil, query = nil)
119
- request = Typhoeus::Request.new(
120
- url(ref),
121
- :method => action,
122
- :timeout_ms => @timeout,
123
- :connecttimeout_ms => @connecttimeout,
124
- :headers => { "Accept-Encoding" => "gzip" }
125
- )
126
- request.options[:params] = query if query.is_a?(Hash)
127
-
128
- if data.is_a?(Hash)
129
- request.options[:headers].merge!("Content-Type" => "application/json;charset=utf-8")
130
- request.options[:body] = data.to_json
131
- end
132
-
133
- body = ""
134
110
  if @logger
135
- log(2) { "Fauna #{action.to_s.upcase} /#{ref}#{query_string_for_logging(query)}" }
136
- log(4) { "Credentials: #{@credentials}" } if @debug
137
- log(4) { "Request JSON: #{JSON.pretty_generate(data)}" } if @debug && data
111
+ log(0) { "Fauna #{action.to_s.upcase} /#{ref}#{query_string_for_logging(query)}" }
112
+ log(2) { "Credentials: #{@credentials}" }
113
+ log(2) { "Request JSON: #{JSON.pretty_generate(data)}" } if data
138
114
 
139
115
  t0, r0 = Process.times, Time.now
140
- request.run
116
+ response = execute_without_logging(action, ref, data, query)
141
117
  t1, r1 = Process.times, Time.now
142
- body = inflate(request.response)
118
+ body = inflate(response)
143
119
 
144
120
  real = r1.to_f - r0.to_f
145
121
  cpu = (t1.utime - t0.utime) + (t1.stime - t0.stime) + (t1.cutime - t0.cutime) + (t1.cstime - t0.cstime)
146
- log(4) { ["Response headers: #{JSON.pretty_generate(request.response.headers)}", "Response JSON: #{body}"] } if @debug
147
- log(4) { "Response (#{request.response.code}): API processing #{request.response.headers["X-HTTP-Request-Processing-Time"]}ms, network latency #{((real - cpu)*1000).to_i}ms, local processing #{(cpu*1000).to_i}ms" }
122
+ log(2) { ["Response headers: #{JSON.pretty_generate(response.headers)}", "Response JSON: #{body}"] }
123
+ log(2) { "Response (#{response.status}): API processing #{response.headers["X-HTTP-Request-Processing-Time"]}ms, network latency #{((real - cpu)*1000).to_i}ms, local processing #{(cpu*1000).to_i}ms" }
124
+ else
125
+ response = execute_without_logging(action, ref, data, query)
126
+ body = inflate(response)
127
+ end
128
+
129
+ case response.status
130
+ when 200..299
131
+ [response.headers, body]
132
+ when 400
133
+ raise BadRequest.new(JSON.parse(body))
134
+ when 401
135
+ raise Unauthorized.new(JSON.parse(body))
136
+ when 403
137
+ raise PermissionDenied.new(JSON.parse(body))
138
+ when 404
139
+ raise NotFound.new(JSON.parse(body))
140
+ when 405
141
+ raise MethodNotAllowed.new(JSON.parse(body))
148
142
  else
149
- request.run
150
- body = inflate(request.response)
143
+ raise NetworkError, body
151
144
  end
152
- HANDLER.call(request.response, body)
153
145
  end
154
146
 
155
- def url(ref)
156
- "#{@scheme}://#{@credentials}@#{@domain}:#{@port}/#{ref}"
147
+ def execute_without_logging(action, ref, data, query)
148
+ @conn.send(action) do |req|
149
+ req.params = query if query.is_a?(Hash)
150
+ req.body = data.to_json if data.is_a?(Hash)
151
+ req.url(ref)
152
+ end
157
153
  end
158
154
  end
159
155
  end
@@ -12,14 +12,14 @@ module Fauna
12
12
 
13
13
  def self.hydrate(struct)
14
14
  obj = resource_subclass(struct['class']).allocate
15
- obj.instance_variable_set '@struct', struct
15
+ obj.instance_variable_set('@struct', struct)
16
16
  obj
17
17
  end
18
18
 
19
19
  def self.new(fauna_class, attrs = {})
20
20
  obj = resource_subclass(fauna_class).allocate
21
- obj.instance_variable_set '@struct', { 'ref' => nil, 'ts' => nil, 'deleted' => false, 'class' => fauna_class }
22
- obj.send(:assign, attrs)
21
+ obj.instance_variable_set('@struct', { 'ref' => nil, 'ts' => nil, 'deleted' => false, 'class' => fauna_class })
22
+ obj.struct = attrs
23
23
  obj
24
24
  end
25
25
 
@@ -32,7 +32,6 @@ module Fauna
32
32
  end
33
33
 
34
34
  attr_reader :struct
35
-
36
35
  alias :to_hash :struct
37
36
 
38
37
  def ts
@@ -100,7 +99,7 @@ module Fauna
100
99
  def persisted?; !(new_record? || deleted?) end
101
100
 
102
101
  def save
103
- @struct = (new_record? ? post : put).to_hash
102
+ new_record? ? post : put
104
103
  end
105
104
 
106
105
  def delete
@@ -110,24 +109,30 @@ module Fauna
110
109
  nil
111
110
  end
112
111
 
113
- private
112
+ def put
113
+ @struct = Fauna::Client.put(ref, struct).to_hash
114
+ end
115
+
116
+ def patch
117
+ @struct = Fauna::Client.patch(ref, struct).to_hash
118
+ end
119
+
120
+ def post
121
+ @struct = Fauna::Client.post(fauna_class, struct).to_hash
122
+ end
114
123
 
115
124
  # TODO: make this configurable, and possible to invert to a white list
116
125
  UNASSIGNABLE_ATTRIBUTES = %w(ts deleted fauna_class).inject({}) { |h, attr| h.update attr => true }
117
126
 
118
- def assign(attributes)
119
- attributes.each do |name, val|
127
+ DEFAULT_ATTRIBUTES = {"data" => {}, "references" => {}, "constraints" => {} }
128
+
129
+ def struct=(attributes)
130
+ DEFAULT_ATTRIBUTES.merge(attributes).each do |name, val|
120
131
  send "#{name}=", val unless UNASSIGNABLE_ATTRIBUTES[name.to_s]
121
132
  end
122
133
  end
123
134
 
124
- def put
125
- Fauna::Client.put(ref, struct)
126
- end
127
-
128
- def post
129
- Fauna::Client.post(fauna_class, struct)
130
- end
135
+ private
131
136
 
132
137
  def getter_method(method)
133
138
  field = method.to_s
data/lib/fauna/set.rb CHANGED
@@ -123,21 +123,26 @@ module Fauna
123
123
  def self.add(set, resource, time = nil)
124
124
  set = set.ref if set.respond_to? :ref
125
125
  resource = resource.ref if resource.respond_to? :ref
126
- event = time ? "/events/#{Fauna.usecs_from_time(time)}/create" : ''
127
- Fauna::Client.put("#{set}/#{resource}#{event}")
126
+ if time
127
+ Fauna::Client.put("#{set}/#{resource}/events/#{Fauna.usecs_from_time(time)}/create")
128
+ else
129
+ Fauna::Client.put("#{set}/#{resource}")
130
+ end
128
131
  end
129
132
 
130
133
  def self.remove(set, resource, time = nil)
131
134
  set = set.ref if set.respond_to? :ref
132
135
  resource = resource.ref if resource.respond_to? :ref
133
- event = time ? "/events/#{Fauna.usecs_from_time(time)}/delete" : ''
134
- Fauna::Client.put("#{set}/#{resource}#{event}")
136
+ if time
137
+ Fauna::Client.put("#{set}/#{resource}/events/#{Fauna.usecs_from_time(time)}/delete")
138
+ else
139
+ Fauna::Client.delete("#{set}/#{resource}")
140
+ end
135
141
  end
136
142
  end
137
143
 
138
144
  class SetPage < Fauna::Resource
139
145
  include Enumerable
140
- undef :count
141
146
 
142
147
  def refs
143
148
  @refs ||= struct['resources']
@@ -151,13 +156,13 @@ module Fauna
151
156
  refs.empty?
152
157
  end
153
158
 
159
+ def fauna_count; struct['count'] end
154
160
  def length; refs.length end
155
161
  def size; refs.size end
156
162
  end
157
163
 
158
164
  class EventsPage < Fauna::Resource
159
165
  include Enumerable
160
- undef :count
161
166
 
162
167
  def events
163
168
  @events ||= struct['events'].map { |e| Event.new(e) }
@@ -171,6 +176,7 @@ module Fauna
171
176
  events.empty?
172
177
  end
173
178
 
179
+ def fauna_count; struct['count'] end
174
180
  def length; events.length end
175
181
  def size; events.size end
176
182
  end
data/test/set_test.rb CHANGED
@@ -14,7 +14,7 @@ class SetTest < MiniTest::Unit::TestCase
14
14
  page = @posts.page
15
15
  assert_equal "#{@model.ref}/sets/posts", page.ref
16
16
  assert_equal 0, page.refs.size
17
- assert_equal 0, page.count
17
+ assert_equal 0, page.fauna_count
18
18
  end
19
19
 
20
20
  def test_pagination
@@ -26,7 +26,7 @@ class SetTest < MiniTest::Unit::TestCase
26
26
 
27
27
  page1 = @posts.page(:size => 2)
28
28
  assert_equal 2, page1.refs.size
29
- assert_equal 5, page1.count
29
+ assert_equal 5, page1.fauna_count
30
30
  page2 = @posts.page(:size => 2, :before => page1.before)
31
31
  assert_equal 2, page2.refs.size
32
32
  page3 = @posts.page(:size => 2, :before => page2.before)
@@ -38,7 +38,7 @@ class SetTest < MiniTest::Unit::TestCase
38
38
  assert_equal 2, page5.refs.size
39
39
  page6 = @posts.page(:size => 2, :after => page5.after)
40
40
  assert_equal 1, page6.refs.size
41
- assert_equal 5, page6.count
41
+ assert_equal 5, page6.fauna_count
42
42
  end
43
43
 
44
44
  def test_any
metadata CHANGED
@@ -1,97 +1,115 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fauna
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.3'
5
- prerelease:
4
+ version: 1.3.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Fauna, Inc.
9
- autorequire:
8
+ autorequire:
10
9
  bindir: bin
11
- cert_chain: []
12
- date: 2014-03-31 00:00:00.000000000 Z
10
+ cert_chain:
11
+ - !binary |-
12
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURhRENDQWxDZ0F3SUJB
13
+ Z0lCQVRBTkJna3Foa2lHOXcwQkFRVUZBREE5TVEwd0N3WURWUVFEREFSbGRt
14
+ RnUKTVJnd0ZnWUtDWkltaVpQeUxHUUJHUllJWTJ4dmRXUmlkWEl4RWpBUUJn
15
+ b0praWFKay9Jc1pBRVpGZ0p6ZERBZQpGdzB4TXpFeE1EUXlNREkxTURWYUZ3
16
+ MHhOREV4TURReU1ESTFNRFZhTUQweERUQUxCZ05WQkFNTUJHVjJZVzR4CkdE
17
+ QVdCZ29Ka2lhSmsvSXNaQUVaRmdoamJHOTFaR0oxY2pFU01CQUdDZ21TSm9t
18
+ VDhpeGtBUmtXQW5OME1JSUIKSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4
19
+ QU1JSUJDZ0tDQVFFQXVHNHEySWRUdGxjNy9JSmtXUG5iT0FGdAp5c0tjM1ht
20
+ TEhzamVTWFhTUGRRMW1iMmNEWHZ5RFM4VGt6anJnRG9KOTZSUjJ4cmg3YmZr
21
+ SEFNSmhTVk1oc1BNCnJuWVM3ZkRzLy9YMWg2ZlJZQmpqaHFHZVFoQ0wxeHJT
22
+ NS9JNHZLYjdBamdGbnVVYk1aL0gwK2ljMkljMnpUbloKanR0U1FaL1FPbFl5
23
+ Y3RyWW9UekFGZFB3TCtkT3hza095QW1BYnRWL3BWM293Y1hwQ2hSVC90cGhD
24
+ N3U2OXNPaworSWpXc013ckJDYkVkai9KbWg0YTUyUW50QXdQV3g0S3J0MHpt
25
+ OGVWMy9ValNPYkIzQlIxcFovaTVJc1NMUHMxCmx3TUE2eXdiZnhCVFA1OVhj
26
+ Z0F5aGZWM3JSUVhiK3ZqcGY3T0x1T0NKT1VJTjhHRXdiNUhOakZvL1VWZGl3
27
+ SUQKQVFBQm8zTXdjVEFKQmdOVkhSTUVBakFBTUFzR0ExVWREd1FFQXdJRXNE
28
+ QWRCZ05WSFE0RUZnUVViVENxeXlkbgowUm02bm5nZjE1S3RDRU1jMzdzd0d3
29
+ WURWUjBSQkJRd0VvRVFaWFpoYmtCamJHOTFaR0oxY2k1emREQWJCZ05WCkhS
30
+ SUVGREFTZ1JCbGRtRnVRR05zYjNWa1luVnlMbk4wTUEwR0NTcUdTSWIzRFFF
31
+ QkJRVUFBNElCQVFCZ2dHR2IKMEFveUYwUW9memtQSW11aE4xVUY2ZUcvUmRZ
32
+ T0hxaVVvdnVSTi85SWJseUtBYVpBSWwxbUlzcGZDYXY4RVZ3bwpTQzZ2ejRP
33
+ YUlWcFM3UWRJMDRvTE5IeGhtQzZDNVRUQk9OdGRkRGw5M00rOXVXVmlwRDV1
34
+ VlBrdGNIV0crYktuCjJMMWxVeWtRWHI4cmE0NVRxQVVaL1ArWXY3NlU4a1Vz
35
+ VkcySEU1Z2wvQ2dCNStWMXFrcG41TTRDQURzdlN2UEEKcUVBVFp2dytLVXp6
36
+ TUNVaVZ6cStUNmxEcnJDdCtzRDNOWmx2RzRCRDJQcFF1UHREZjFpNjFEVWMr
37
+ NXMyTndtMgp0NHVxTkY3c3dCV1MwbjQwL2htbjV1OHBUMkpWc3V3YW03OUdH
38
+ aEptTmZDZFBDY0NiZ3Bocm9leFJjcndkVVJYCmx5MDBYZGYxZ0RWQnhSb1IK
39
+ LS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
40
+ date: 2014-05-15 00:00:00.000000000 Z
13
41
  dependencies:
14
42
  - !ruby/object:Gem::Dependency
15
- name: typhoeus
16
- version_requirements: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - '>='
19
- - !ruby/object:Gem::Version
20
- version: '0'
21
- none: false
43
+ name: faraday
22
44
  requirement: !ruby/object:Gem::Requirement
23
45
  requirements:
24
- - - '>='
46
+ - - ~>
25
47
  - !ruby/object:Gem::Version
26
- version: '0'
27
- none: false
28
- prerelease: false
48
+ version: 0.9.0
29
49
  type: :runtime
30
- - !ruby/object:Gem::Dependency
31
- name: json
50
+ prerelease: false
32
51
  version_requirements: !ruby/object:Gem::Requirement
33
52
  requirements:
34
- - - '>='
53
+ - - ~>
35
54
  - !ruby/object:Gem::Version
36
- version: '0'
37
- none: false
55
+ version: 0.9.0
56
+ - !ruby/object:Gem::Dependency
57
+ name: json
38
58
  requirement: !ruby/object:Gem::Requirement
39
59
  requirements:
40
- - - '>='
60
+ - - ~>
41
61
  - !ruby/object:Gem::Version
42
- version: '0'
43
- none: false
44
- prerelease: false
62
+ version: 1.8.0
45
63
  type: :runtime
46
- - !ruby/object:Gem::Dependency
47
- name: mocha
64
+ prerelease: false
48
65
  version_requirements: !ruby/object:Gem::Requirement
49
66
  requirements:
50
- - - '>='
67
+ - - ~>
51
68
  - !ruby/object:Gem::Version
52
- version: '0'
53
- none: false
69
+ version: 1.8.0
70
+ - !ruby/object:Gem::Dependency
71
+ name: mocha
54
72
  requirement: !ruby/object:Gem::Requirement
55
73
  requirements:
56
- - - '>='
74
+ - - ! '>='
57
75
  - !ruby/object:Gem::Version
58
76
  version: '0'
59
- none: false
60
- prerelease: false
61
77
  type: :development
62
- - !ruby/object:Gem::Dependency
63
- name: echoe
78
+ prerelease: false
64
79
  version_requirements: !ruby/object:Gem::Requirement
65
80
  requirements:
66
- - - '>='
81
+ - - ! '>='
67
82
  - !ruby/object:Gem::Version
68
83
  version: '0'
69
- none: false
84
+ - !ruby/object:Gem::Dependency
85
+ name: echoe
70
86
  requirement: !ruby/object:Gem::Requirement
71
87
  requirements:
72
- - - '>='
88
+ - - ! '>='
73
89
  - !ruby/object:Gem::Version
74
90
  version: '0'
75
- none: false
76
- prerelease: false
77
91
  type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ! '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
78
98
  - !ruby/object:Gem::Dependency
79
99
  name: minitest
80
- version_requirements: !ruby/object:Gem::Requirement
100
+ requirement: !ruby/object:Gem::Requirement
81
101
  requirements:
82
102
  - - ~>
83
103
  - !ruby/object:Gem::Version
84
104
  version: '4.0'
85
- none: false
86
- requirement: !ruby/object:Gem::Requirement
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
87
108
  requirements:
88
109
  - - ~>
89
110
  - !ruby/object:Gem::Version
90
111
  version: '4.0'
91
- none: false
92
- prerelease: false
93
- type: :development
94
- description: Experimental Ruby client for the Fauna database.
112
+ description: Ruby client for the Fauna distributed database.
95
113
  email: ''
96
114
  executables: []
97
115
  extensions: []
@@ -139,7 +157,8 @@ files:
139
157
  homepage: http://fauna.github.com/fauna/
140
158
  licenses:
141
159
  - Mozilla Public License, Version 2.0 (MPL2)
142
- post_install_message:
160
+ metadata: {}
161
+ post_install_message:
143
162
  rdoc_options:
144
163
  - --line-numbers
145
164
  - --title
@@ -150,22 +169,20 @@ require_paths:
150
169
  - lib
151
170
  required_ruby_version: !ruby/object:Gem::Requirement
152
171
  requirements:
153
- - - '>='
172
+ - - ! '>='
154
173
  - !ruby/object:Gem::Version
155
174
  version: '0'
156
- none: false
157
175
  required_rubygems_version: !ruby/object:Gem::Requirement
158
176
  requirements:
159
- - - '>='
177
+ - - ! '>='
160
178
  - !ruby/object:Gem::Version
161
179
  version: '1.2'
162
- none: false
163
180
  requirements: []
164
181
  rubyforge_project: fauna
165
- rubygems_version: 1.8.24
166
- signing_key:
167
- specification_version: 3
168
- summary: Experimental Ruby client for the Fauna database.
182
+ rubygems_version: 2.1.10
183
+ signing_key:
184
+ specification_version: 4
185
+ summary: Ruby client for the Fauna distributed database.
169
186
  test_files:
170
187
  - test/class_test.rb
171
188
  - test/client_test.rb
metadata.gz.sig ADDED
Binary file