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 +15 -0
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +2 -0
- data/CHANGELOG +8 -4
- data/Rakefile +2 -2
- data/fauna.gemspec +15 -12
- data/lib/fauna.rb +1 -1
- data/lib/fauna/connection.rb +53 -57
- data/lib/fauna/resource.rb +20 -15
- data/lib/fauna/set.rb +12 -6
- data/test/set_test.rb +3 -3
- metadata +73 -56
- metadata.gz.sig +0 -0
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
data/CHANGELOG
CHANGED
@@ -1,6 +1,10 @@
|
|
1
|
-
v1.3
|
1
|
+
v1.3.2 Fix patch.
|
2
2
|
|
3
|
-
v1.
|
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 = "
|
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 = ["
|
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.
|
10
|
-
s.
|
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.
|
20
|
-
s.
|
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 =
|
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<
|
28
|
-
s.add_runtime_dependency(%q<json>, ["
|
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<
|
34
|
-
s.add_dependency(%q<json>, ["
|
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<
|
41
|
-
s.add_dependency(%q<json>, ["
|
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
data/lib/fauna/connection.rb
CHANGED
@@ -1,21 +1,21 @@
|
|
1
1
|
module Fauna
|
2
2
|
class Connection
|
3
3
|
class Error < RuntimeError
|
4
|
-
attr_reader :error, :reason, :
|
4
|
+
attr_reader :error, :reason, :parameters
|
5
5
|
|
6
|
-
def initialize(error, reason = nil,
|
7
|
-
if error.is_a?
|
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
|
-
@
|
11
|
+
@parameters = json['parameters'] || {}
|
12
12
|
else
|
13
13
|
@error = error
|
14
14
|
@reason = reason
|
15
|
-
@
|
15
|
+
@parameters = parameters
|
16
16
|
end
|
17
17
|
|
18
|
-
super(@reason
|
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
|
-
|
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] ||
|
56
|
-
@
|
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
|
-
@
|
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(
|
136
|
-
log(
|
137
|
-
log(
|
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
|
-
|
116
|
+
response = execute_without_logging(action, ref, data, query)
|
141
117
|
t1, r1 = Process.times, Time.now
|
142
|
-
body = inflate(
|
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(
|
147
|
-
log(
|
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
|
-
|
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
|
156
|
-
|
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
|
data/lib/fauna/resource.rb
CHANGED
@@ -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
|
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
|
22
|
-
obj.
|
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
|
-
|
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
|
-
|
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
|
-
|
119
|
-
|
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
|
-
|
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
|
-
|
127
|
-
|
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
|
-
|
134
|
-
|
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.
|
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.
|
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.
|
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:
|
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
|
-
|
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:
|
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:
|
27
|
-
none: false
|
28
|
-
prerelease: false
|
48
|
+
version: 0.9.0
|
29
49
|
type: :runtime
|
30
|
-
|
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:
|
37
|
-
|
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:
|
43
|
-
none: false
|
44
|
-
prerelease: false
|
62
|
+
version: 1.8.0
|
45
63
|
type: :runtime
|
46
|
-
|
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:
|
53
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
100
|
+
requirement: !ruby/object:Gem::Requirement
|
81
101
|
requirements:
|
82
102
|
- - ~>
|
83
103
|
- !ruby/object:Gem::Version
|
84
104
|
version: '4.0'
|
85
|
-
|
86
|
-
|
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
|
-
|
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
|
-
|
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.
|
166
|
-
signing_key:
|
167
|
-
specification_version:
|
168
|
-
summary:
|
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
|