fauna 1.2 → 1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +3 -1
- data/Gemfile +1 -1
- data/README.md +3 -3
- data/Rakefile +2 -2
- data/fauna.gemspec +9 -12
- data/lib/fauna.rb +1 -0
- data/lib/fauna/cache.rb +8 -0
- data/lib/fauna/client.rb +4 -0
- data/lib/fauna/connection.rb +57 -26
- data/lib/fauna/resource.rb +2 -1
- data/test/class_test.rb +2 -0
- data/test/client_test.rb +1 -1
- data/test/connection_test.rb +15 -0
- data/test/database_test.rb +12 -3
- data/test/test_helper.rb +6 -0
- metadata +54 -71
- checksums.yaml +0 -15
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- metadata.gz.sig +0 -0
data/CHANGELOG
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -89,13 +89,13 @@ fields:
|
|
89
89
|
|
90
90
|
```ruby
|
91
91
|
Fauna::Client.context($fauna) do
|
92
|
-
user = Fauna::Resource.create('users', constraints: "taran77")
|
92
|
+
user = Fauna::Resource.create('users', constraints: {"username" => "taran77"})
|
93
93
|
|
94
94
|
# fields
|
95
95
|
user.ref # => "users/123"
|
96
96
|
user.ts # => 2013-01-30 13:02:46 -0800
|
97
|
-
user.deleted
|
98
|
-
user.constraints # => "taran77"
|
97
|
+
user.deleted? # => false
|
98
|
+
user.constraints # => {"username" => "taran77"}
|
99
99
|
|
100
100
|
# data and references
|
101
101
|
user.data # => {}
|
data/Rakefile
CHANGED
@@ -3,13 +3,13 @@ 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 = "Experimental Ruby client for the Fauna 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
11
|
p.dependencies = ["typhoeus", "json"]
|
12
|
-
p.development_dependencies = ["mocha", "echoe", "minitest"]
|
12
|
+
p.development_dependencies = ["mocha", "echoe", "minitest ~>4.0"]
|
13
13
|
end
|
14
14
|
|
15
15
|
task :beautify do
|
data/fauna.gemspec
CHANGED
@@ -1,15 +1,13 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
-
# stub: fauna 1.2 ruby lib
|
3
2
|
|
4
3
|
Gem::Specification.new do |s|
|
5
4
|
s.name = "fauna"
|
6
|
-
s.version = "1.
|
5
|
+
s.version = "1.3"
|
7
6
|
|
8
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
9
8
|
s.authors = ["Fauna, Inc."]
|
10
|
-
s.
|
11
|
-
s.
|
12
|
-
s.description = "Official Ruby client for the Fauna API."
|
9
|
+
s.date = "2014-03-31"
|
10
|
+
s.description = "Experimental Ruby client for the Fauna database."
|
13
11
|
s.email = ""
|
14
12
|
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"]
|
15
13
|
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"]
|
@@ -18,32 +16,31 @@ Gem::Specification.new do |s|
|
|
18
16
|
s.rdoc_options = ["--line-numbers", "--title", "Fauna", "--main", "README.md"]
|
19
17
|
s.require_paths = ["lib"]
|
20
18
|
s.rubyforge_project = "fauna"
|
21
|
-
s.rubygems_version = "
|
22
|
-
s.
|
23
|
-
s.summary = "Official Ruby client for the Fauna API."
|
19
|
+
s.rubygems_version = "1.8.24"
|
20
|
+
s.summary = "Experimental Ruby client for the Fauna database."
|
24
21
|
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"]
|
25
22
|
|
26
23
|
if s.respond_to? :specification_version then
|
27
|
-
s.specification_version =
|
24
|
+
s.specification_version = 3
|
28
25
|
|
29
26
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
30
27
|
s.add_runtime_dependency(%q<typhoeus>, [">= 0"])
|
31
28
|
s.add_runtime_dependency(%q<json>, [">= 0"])
|
32
29
|
s.add_development_dependency(%q<mocha>, [">= 0"])
|
33
30
|
s.add_development_dependency(%q<echoe>, [">= 0"])
|
34
|
-
s.add_development_dependency(%q<minitest>, ["
|
31
|
+
s.add_development_dependency(%q<minitest>, ["~> 4.0"])
|
35
32
|
else
|
36
33
|
s.add_dependency(%q<typhoeus>, [">= 0"])
|
37
34
|
s.add_dependency(%q<json>, [">= 0"])
|
38
35
|
s.add_dependency(%q<mocha>, [">= 0"])
|
39
36
|
s.add_dependency(%q<echoe>, [">= 0"])
|
40
|
-
s.add_dependency(%q<minitest>, ["
|
37
|
+
s.add_dependency(%q<minitest>, ["~> 4.0"])
|
41
38
|
end
|
42
39
|
else
|
43
40
|
s.add_dependency(%q<typhoeus>, [">= 0"])
|
44
41
|
s.add_dependency(%q<json>, [">= 0"])
|
45
42
|
s.add_dependency(%q<mocha>, [">= 0"])
|
46
43
|
s.add_dependency(%q<echoe>, [">= 0"])
|
47
|
-
s.add_dependency(%q<minitest>, ["
|
44
|
+
s.add_dependency(%q<minitest>, ["~> 4.0"])
|
48
45
|
end
|
49
46
|
end
|
data/lib/fauna.rb
CHANGED
data/lib/fauna/cache.rb
CHANGED
@@ -38,6 +38,14 @@ module Fauna
|
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
|
+
def patch(ref, data)
|
42
|
+
res = @connection.patch(ref, data)
|
43
|
+
if res['resource']
|
44
|
+
update_cache(ref, res)
|
45
|
+
res['resource']
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
41
49
|
def delete(ref, data)
|
42
50
|
@connection.delete(ref, data)
|
43
51
|
@cache.delete(ref)
|
data/lib/fauna/client.rb
CHANGED
data/lib/fauna/connection.rb
CHANGED
@@ -1,45 +1,59 @@
|
|
1
1
|
module Fauna
|
2
2
|
class Connection
|
3
3
|
class Error < RuntimeError
|
4
|
-
attr_reader :
|
5
|
-
|
6
|
-
def initialize(
|
7
|
-
|
8
|
-
|
4
|
+
attr_reader :error, :reason, :fields
|
5
|
+
|
6
|
+
def initialize(error, reason = nil, fields = {})
|
7
|
+
if error.is_a? Hash
|
8
|
+
json = error
|
9
|
+
@error = json['error']
|
10
|
+
@reason = json['reason']
|
11
|
+
@fields = json['fields'] || {}
|
12
|
+
else
|
13
|
+
@error = error
|
14
|
+
@reason = reason
|
15
|
+
@fields = fields
|
16
|
+
end
|
17
|
+
|
18
|
+
super(@reason ? "#{@error}: #{@reason}" : @error)
|
9
19
|
end
|
10
20
|
end
|
11
21
|
|
12
22
|
class NotFound < Error; end
|
13
23
|
class BadRequest < Error; end
|
14
24
|
class Unauthorized < Error; end
|
15
|
-
class
|
25
|
+
class PermissionDenied < Error; end
|
26
|
+
class MethodNotAllowed < Error; end
|
16
27
|
class NetworkError < Error; end
|
17
28
|
|
18
|
-
HANDLER = Proc.new do |res, _, _|
|
29
|
+
HANDLER = Proc.new do |res, body, _, _|
|
19
30
|
case res.code
|
20
31
|
when 200..299
|
21
|
-
res
|
32
|
+
[res.headers, body]
|
22
33
|
when 400
|
23
|
-
|
24
|
-
raise BadRequest.new(json['error'], json['param_errors'])
|
34
|
+
raise BadRequest.new(JSON.parse(body))
|
25
35
|
when 401
|
26
|
-
raise Unauthorized
|
36
|
+
raise Unauthorized.new(JSON.parse(body))
|
37
|
+
when 403
|
38
|
+
raise PermissionDenied.new(JSON.parse(body))
|
27
39
|
when 404
|
28
|
-
raise NotFound
|
40
|
+
raise NotFound.new(JSON.parse(body))
|
29
41
|
when 405
|
30
|
-
raise
|
42
|
+
raise MethodNotAllowed.new(JSON.parse(body))
|
31
43
|
else
|
32
|
-
raise NetworkError,
|
44
|
+
raise NetworkError, body
|
33
45
|
end
|
34
46
|
end
|
35
47
|
|
36
|
-
attr_reader :domain, :scheme, :port, :credentials
|
48
|
+
attr_reader :domain, :scheme, :port, :credentials, :timeout
|
37
49
|
|
38
50
|
def initialize(params={})
|
39
51
|
@logger = params[:logger] || nil
|
40
52
|
@domain = params[:domain] || "rest1.fauna.org"
|
41
53
|
@scheme = params[:scheme] || "https"
|
42
54
|
@port = params[:port] || (@scheme == "https" ? 443 : 80)
|
55
|
+
@timeout = params[:timeout] || 60000
|
56
|
+
@connecttimeout = params[:connecttimeout] || 60000
|
43
57
|
|
44
58
|
if ENV["FAUNA_DEBUG"]
|
45
59
|
@logger = Logger.new(STDERR)
|
@@ -49,19 +63,19 @@ module Fauna
|
|
49
63
|
end
|
50
64
|
|
51
65
|
def get(ref, query = {})
|
52
|
-
parse(execute(:get, ref, nil, query))
|
66
|
+
parse(*execute(:get, ref, nil, query))
|
53
67
|
end
|
54
68
|
|
55
69
|
def post(ref, data = {})
|
56
|
-
parse(execute(:post, ref, data))
|
70
|
+
parse(*execute(:post, ref, data))
|
57
71
|
end
|
58
72
|
|
59
73
|
def put(ref, data = {})
|
60
|
-
parse(execute(:put, ref, data))
|
74
|
+
parse(*execute(:put, ref, data))
|
61
75
|
end
|
62
76
|
|
63
77
|
def patch(ref, data = {})
|
64
|
-
parse(execute(:patch, ref, data))
|
78
|
+
parse(*execute(:patch, ref, data))
|
65
79
|
end
|
66
80
|
|
67
81
|
def delete(ref, data = {})
|
@@ -71,9 +85,9 @@ module Fauna
|
|
71
85
|
|
72
86
|
private
|
73
87
|
|
74
|
-
def parse(
|
75
|
-
obj =
|
76
|
-
obj.merge!("headers" =>
|
88
|
+
def parse(headers, body)
|
89
|
+
obj = body.empty? ? {} : JSON.parse(body)
|
90
|
+
obj.merge!("headers" => headers)
|
77
91
|
obj
|
78
92
|
end
|
79
93
|
|
@@ -93,15 +107,30 @@ module Fauna
|
|
93
107
|
end
|
94
108
|
end
|
95
109
|
|
110
|
+
def inflate(response)
|
111
|
+
if ["gzip", "deflate"].include?(response.headers["Content-Encoding"])
|
112
|
+
Zlib::GzipReader.new(StringIO.new(response.body.to_s), :external_encoding => Encoding::UTF_8).read
|
113
|
+
else
|
114
|
+
response.body.to_s
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
96
118
|
def execute(action, ref, data = nil, query = nil)
|
97
|
-
request = Typhoeus::Request.new(
|
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
|
+
)
|
98
126
|
request.options[:params] = query if query.is_a?(Hash)
|
99
127
|
|
100
128
|
if data.is_a?(Hash)
|
101
|
-
request.options[:headers]
|
129
|
+
request.options[:headers].merge!("Content-Type" => "application/json;charset=utf-8")
|
102
130
|
request.options[:body] = data.to_json
|
103
131
|
end
|
104
132
|
|
133
|
+
body = ""
|
105
134
|
if @logger
|
106
135
|
log(2) { "Fauna #{action.to_s.upcase} /#{ref}#{query_string_for_logging(query)}" }
|
107
136
|
log(4) { "Credentials: #{@credentials}" } if @debug
|
@@ -110,15 +139,17 @@ module Fauna
|
|
110
139
|
t0, r0 = Process.times, Time.now
|
111
140
|
request.run
|
112
141
|
t1, r1 = Process.times, Time.now
|
142
|
+
body = inflate(request.response)
|
113
143
|
|
114
144
|
real = r1.to_f - r0.to_f
|
115
145
|
cpu = (t1.utime - t0.utime) + (t1.stime - t0.stime) + (t1.cutime - t0.cutime) + (t1.cstime - t0.cstime)
|
116
|
-
log(4) { ["Response headers: #{JSON.pretty_generate(request.response.headers)}", "Response JSON: #{
|
146
|
+
log(4) { ["Response headers: #{JSON.pretty_generate(request.response.headers)}", "Response JSON: #{body}"] } if @debug
|
117
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" }
|
118
148
|
else
|
119
149
|
request.run
|
150
|
+
body = inflate(request.response)
|
120
151
|
end
|
121
|
-
HANDLER.call(request.response)
|
152
|
+
HANDLER.call(request.response, body)
|
122
153
|
end
|
123
154
|
|
124
155
|
def url(ref)
|
data/lib/fauna/resource.rb
CHANGED
@@ -49,6 +49,7 @@ module Fauna
|
|
49
49
|
def constraints; struct['constraints'] ||= {} end
|
50
50
|
def data; struct['data'] ||= {} end
|
51
51
|
def references; struct['references'] ||= {} end
|
52
|
+
def permissions; struct['permissions'] ||= {} end
|
52
53
|
|
53
54
|
def events(pagination = {})
|
54
55
|
EventsPage.find("#{ref}/events", {}, pagination)
|
@@ -94,7 +95,7 @@ module Fauna
|
|
94
95
|
|
95
96
|
def new_record?; ref.nil? end
|
96
97
|
|
97
|
-
def deleted?; deleted end
|
98
|
+
def deleted?; !!deleted end
|
98
99
|
|
99
100
|
def persisted?; !(new_record? || deleted?) end
|
100
101
|
|
data/test/class_test.rb
CHANGED
data/test/client_test.rb
CHANGED
@@ -18,7 +18,7 @@ class ClientTest < MiniTest::Unit::TestCase
|
|
18
18
|
Fauna::Client.context(@client_connection) do
|
19
19
|
user = Fauna::Resource.create("users", @attributes)
|
20
20
|
Fauna::Client.context(@client_connection) do
|
21
|
-
assert_raises(Fauna::Connection::
|
21
|
+
assert_raises(Fauna::Connection::PermissionDenied) do
|
22
22
|
instance = Fauna::Resource.create("classes/posts", @attributes)
|
23
23
|
end
|
24
24
|
end
|
data/test/connection_test.rb
CHANGED
@@ -24,7 +24,22 @@ class ConnectionTest < MiniTest::Unit::TestCase
|
|
24
24
|
def test_put
|
25
25
|
user = @server_connection.post("users", @attributes)['resource']
|
26
26
|
user = @server_connection.put(user['ref'], {:data => {:pockets => 2}})['resource']
|
27
|
+
|
28
|
+
assert_equal 2, user['data']['pockets']
|
29
|
+
|
30
|
+
user = @server_connection.put(user['ref'], {:data => {:apples => 3}})['resource']
|
31
|
+
|
32
|
+
assert_nil user['data']['pockets']
|
33
|
+
assert_equal 3, user['data']['apples']
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_patch
|
37
|
+
user = @server_connection.post("users", @attributes)['resource']
|
38
|
+
user = @server_connection.patch(user['ref'], {:data => {:pockets => 2}})['resource']
|
39
|
+
user = @server_connection.patch(user['ref'], {:data => {:apples => 3}})['resource']
|
40
|
+
|
27
41
|
assert_equal 2, user['data']['pockets']
|
42
|
+
assert_equal 3, user['data']['apples']
|
28
43
|
end
|
29
44
|
|
30
45
|
def test_delete
|
data/test/database_test.rb
CHANGED
@@ -11,17 +11,26 @@ class DatabaseTest < MiniTest::Unit::TestCase
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_get
|
14
|
-
assert_raises(Fauna::Connection::
|
14
|
+
assert_raises(Fauna::Connection::PermissionDenied) do
|
15
15
|
Fauna::Resource.find("databases/fauna-ruby-test")
|
16
16
|
end
|
17
|
+
|
18
|
+
assert_raises(Fauna::Connection::PermissionDenied) do
|
19
|
+
Fauna::Resource.find("databases/nonexistent")
|
20
|
+
end
|
21
|
+
|
17
22
|
Fauna::Client.context(@root_connection) do
|
18
23
|
Fauna::Resource.find("databases/fauna-ruby-test")
|
19
24
|
Fauna::Resource.find("databases/fauna-ruby-test2")
|
25
|
+
|
26
|
+
assert_raises(Fauna::Connection::NotFound) do
|
27
|
+
Fauna::Resource.find("databases/nonexistent")
|
28
|
+
end
|
20
29
|
end
|
21
30
|
end
|
22
31
|
|
23
32
|
def test_create
|
24
|
-
assert_raises(Fauna::Connection::
|
33
|
+
assert_raises(Fauna::Connection::PermissionDenied) do
|
25
34
|
@model.save
|
26
35
|
end
|
27
36
|
Fauna::Client.context(@root_connection) do
|
@@ -30,7 +39,7 @@ class DatabaseTest < MiniTest::Unit::TestCase
|
|
30
39
|
end
|
31
40
|
|
32
41
|
def test_destroy
|
33
|
-
assert_raises(Fauna::Connection::
|
42
|
+
assert_raises(Fauna::Connection::PermissionDenied) do
|
34
43
|
@model.delete
|
35
44
|
end
|
36
45
|
Fauna::Client.context(@root_connection) do
|
data/test/test_helper.rb
CHANGED
@@ -39,9 +39,15 @@ Fauna::Client.context(SERVER_CONNECTION) do
|
|
39
39
|
Fauna::Resource.create 'classes', :name => 'posts'
|
40
40
|
Fauna::Resource.create 'classes', :name => 'comments'
|
41
41
|
|
42
|
+
# open client key user creation
|
43
|
+
users = Fauna::Resource.find 'users'
|
44
|
+
users.permissions = { :create => 'public' }
|
45
|
+
users.save
|
46
|
+
|
42
47
|
# Fixture for readme_test
|
43
48
|
pig = Fauna::Resource.new('classes/pigs/42471470493859841')
|
44
49
|
pig.ref = 'classes/pigs/42471470493859841'
|
50
|
+
pig.class = 'classes/pigs'
|
45
51
|
pig.save
|
46
52
|
end
|
47
53
|
|
metadata
CHANGED
@@ -1,115 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fauna
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '1.
|
4
|
+
version: '1.3'
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Fauna, Inc.
|
8
|
-
autorequire:
|
9
|
+
autorequire:
|
9
10
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
-
|
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: 2013-11-04 00:00:00.000000000 Z
|
11
|
+
cert_chain: []
|
12
|
+
date: 2014-03-31 00:00:00.000000000 Z
|
41
13
|
dependencies:
|
42
14
|
- !ruby/object:Gem::Dependency
|
43
15
|
name: typhoeus
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
-
requirements:
|
46
|
-
- - ! '>='
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: '0'
|
49
|
-
type: :runtime
|
50
|
-
prerelease: false
|
51
16
|
version_requirements: !ruby/object:Gem::Requirement
|
52
17
|
requirements:
|
53
|
-
- -
|
18
|
+
- - '>='
|
54
19
|
- !ruby/object:Gem::Version
|
55
20
|
version: '0'
|
56
|
-
|
57
|
-
name: json
|
21
|
+
none: false
|
58
22
|
requirement: !ruby/object:Gem::Requirement
|
59
23
|
requirements:
|
60
|
-
- -
|
24
|
+
- - '>='
|
61
25
|
- !ruby/object:Gem::Version
|
62
26
|
version: '0'
|
63
|
-
|
27
|
+
none: false
|
64
28
|
prerelease: false
|
29
|
+
type: :runtime
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: json
|
65
32
|
version_requirements: !ruby/object:Gem::Requirement
|
66
33
|
requirements:
|
67
|
-
- -
|
34
|
+
- - '>='
|
68
35
|
- !ruby/object:Gem::Version
|
69
36
|
version: '0'
|
70
|
-
|
71
|
-
name: mocha
|
37
|
+
none: false
|
72
38
|
requirement: !ruby/object:Gem::Requirement
|
73
39
|
requirements:
|
74
|
-
- -
|
40
|
+
- - '>='
|
75
41
|
- !ruby/object:Gem::Version
|
76
42
|
version: '0'
|
77
|
-
|
43
|
+
none: false
|
78
44
|
prerelease: false
|
45
|
+
type: :runtime
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: mocha
|
79
48
|
version_requirements: !ruby/object:Gem::Requirement
|
80
49
|
requirements:
|
81
|
-
- -
|
50
|
+
- - '>='
|
82
51
|
- !ruby/object:Gem::Version
|
83
52
|
version: '0'
|
84
|
-
|
85
|
-
name: echoe
|
53
|
+
none: false
|
86
54
|
requirement: !ruby/object:Gem::Requirement
|
87
55
|
requirements:
|
88
|
-
- -
|
56
|
+
- - '>='
|
89
57
|
- !ruby/object:Gem::Version
|
90
58
|
version: '0'
|
91
|
-
|
59
|
+
none: false
|
92
60
|
prerelease: false
|
61
|
+
type: :development
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: echoe
|
93
64
|
version_requirements: !ruby/object:Gem::Requirement
|
94
65
|
requirements:
|
95
|
-
- -
|
66
|
+
- - '>='
|
96
67
|
- !ruby/object:Gem::Version
|
97
68
|
version: '0'
|
98
|
-
|
99
|
-
name: minitest
|
69
|
+
none: false
|
100
70
|
requirement: !ruby/object:Gem::Requirement
|
101
71
|
requirements:
|
102
|
-
- -
|
72
|
+
- - '>='
|
103
73
|
- !ruby/object:Gem::Version
|
104
74
|
version: '0'
|
105
|
-
|
75
|
+
none: false
|
106
76
|
prerelease: false
|
77
|
+
type: :development
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: minitest
|
107
80
|
version_requirements: !ruby/object:Gem::Requirement
|
108
81
|
requirements:
|
109
|
-
- -
|
82
|
+
- - ~>
|
110
83
|
- !ruby/object:Gem::Version
|
111
|
-
version: '0'
|
112
|
-
|
84
|
+
version: '4.0'
|
85
|
+
none: false
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - ~>
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '4.0'
|
91
|
+
none: false
|
92
|
+
prerelease: false
|
93
|
+
type: :development
|
94
|
+
description: Experimental Ruby client for the Fauna database.
|
113
95
|
email: ''
|
114
96
|
executables: []
|
115
97
|
extensions: []
|
@@ -157,8 +139,7 @@ files:
|
|
157
139
|
homepage: http://fauna.github.com/fauna/
|
158
140
|
licenses:
|
159
141
|
- Mozilla Public License, Version 2.0 (MPL2)
|
160
|
-
|
161
|
-
post_install_message:
|
142
|
+
post_install_message:
|
162
143
|
rdoc_options:
|
163
144
|
- --line-numbers
|
164
145
|
- --title
|
@@ -169,20 +150,22 @@ require_paths:
|
|
169
150
|
- lib
|
170
151
|
required_ruby_version: !ruby/object:Gem::Requirement
|
171
152
|
requirements:
|
172
|
-
- -
|
153
|
+
- - '>='
|
173
154
|
- !ruby/object:Gem::Version
|
174
155
|
version: '0'
|
156
|
+
none: false
|
175
157
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
176
158
|
requirements:
|
177
|
-
- -
|
159
|
+
- - '>='
|
178
160
|
- !ruby/object:Gem::Version
|
179
161
|
version: '1.2'
|
162
|
+
none: false
|
180
163
|
requirements: []
|
181
164
|
rubyforge_project: fauna
|
182
|
-
rubygems_version:
|
183
|
-
signing_key:
|
184
|
-
specification_version:
|
185
|
-
summary:
|
165
|
+
rubygems_version: 1.8.24
|
166
|
+
signing_key:
|
167
|
+
specification_version: 3
|
168
|
+
summary: Experimental Ruby client for the Fauna database.
|
186
169
|
test_files:
|
187
170
|
- test/class_test.rb
|
188
171
|
- test/client_test.rb
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
OTc2NGU4ZGEyZmI5NjNmYzgyNDY5MGM4YWFhYTEwMDg4YmMyNWM5Yw==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
MjFlMGZmNDYyZWNiMDM0ODU5MjkxNTY0NDkzYjQ4ZjA0MmM3ZmM3YQ==
|
7
|
-
SHA512:
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
Y2ZjYWVkMmU3MzY2ZmRhZTY2YjRiNWMzMDA2Yzc5NjkzODJjZTY2YzlmOThk
|
10
|
-
NzBkNDQ4ZDVhOWIzYjk5MGQwYjU0MjRiMGMzODllOGQyN2ZhNmFiNGQ5ZjZm
|
11
|
-
ZTBjZjI3ZmFhY2NkMDczMjdiM2MxN2NjNTIzMDdmZWZlM2QyMWY=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
YTk2Njk2ODIyMGZmN2NkYjZjZDAyZGJiZWM0NWVkOTFjMGRjZmQ5ZTQ0MTE1
|
14
|
-
NjBkN2JkMDdjZDJkNWMzZWJhNTllODNjOWUwY2RmMjdmZmNhOWYwMDkzNWI5
|
15
|
-
MzhjNTczNTk1NDE3NzkwZGJhNTgzMjliMTYxODQ0ZjFhMWIwZmY=
|
checksums.yaml.gz.sig
DELETED
Binary file
|
data.tar.gz.sig
DELETED
Binary file
|
metadata.gz.sig
DELETED
Binary file
|