fauna 1.2 → 1.3

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.
data/CHANGELOG CHANGED
@@ -1,4 +1,6 @@
1
- v1.2. Switch to Typhoeus HTTP client.
1
+ v1.3 Add support for PATCH, minor error handling improvements.
2
+
3
+ v1.2 Switch to Typhoeus HTTP client.
2
4
 
3
5
  v1.1.1 Remove last bit of ORM-ness.
4
6
 
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gem 'rake'
4
4
  gem 'jruby-openssl', :platform => :jruby
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 # => false
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 = "Official Ruby client for the Fauna API."
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.2"
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.cert_chain = ["/Users/eweaver/fauna/fauna-ruby/fauna-ruby.pem"]
11
- s.date = "2013-11-04"
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 = "2.1.10"
22
- s.signing_key = "/Users/eweaver/cloudburst/configuration/gem_certificates/gem-private_key.pem"
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 = 4
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>, [">= 0"])
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>, [">= 0"])
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>, [">= 0"])
44
+ s.add_dependency(%q<minitest>, ["~> 4.0"])
48
45
  end
49
46
  end
data/lib/fauna.rb CHANGED
@@ -3,6 +3,7 @@ require 'logger'
3
3
  require 'uri'
4
4
  require 'typhoeus'
5
5
  require 'cgi'
6
+ require 'zlib'
6
7
 
7
8
  if defined?(Rake)
8
9
  load "#{File.dirname(__FILE__)}/tasks/fauna.rake"
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
@@ -31,6 +31,10 @@ module Fauna
31
31
  connection.put(ref, data)
32
32
  end
33
33
 
34
+ def self.patch(ref, data = {})
35
+ connection.patch(ref, data)
36
+ end
37
+
34
38
  def self.delete(ref, data = {})
35
39
  connection.delete(ref, data)
36
40
  end
@@ -1,45 +1,59 @@
1
1
  module Fauna
2
2
  class Connection
3
3
  class Error < RuntimeError
4
- attr_reader :param_errors
5
-
6
- def initialize(message, param_errors = {})
7
- @param_errors = param_errors
8
- super(message)
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 NotAllowed < Error; end
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
- json = JSON.parse(res.body)
24
- raise BadRequest.new(json['error'], json['param_errors'])
34
+ raise BadRequest.new(JSON.parse(body))
25
35
  when 401
26
- raise Unauthorized, JSON.parse(res.body)['error']
36
+ raise Unauthorized.new(JSON.parse(body))
37
+ when 403
38
+ raise PermissionDenied.new(JSON.parse(body))
27
39
  when 404
28
- raise NotFound, JSON.parse(res.body)['error']
40
+ raise NotFound.new(JSON.parse(body))
29
41
  when 405
30
- raise NotAllowed, JSON.parse(res.body)['error']
42
+ raise MethodNotAllowed.new(JSON.parse(body))
31
43
  else
32
- raise NetworkError, res.body
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(res)
75
- obj = res.body.to_s.empty? ? {} : JSON.parse(res.body)
76
- obj.merge!("headers" => res.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(url(ref), :method => action)
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] = { "Content-Type" => "application/json;charset=utf-8" }
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: #{request.response.body}"] } if @debug
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)
@@ -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
@@ -12,6 +12,8 @@ class ClassTest < MiniTest::Unit::TestCase
12
12
  assert_equal true, pig.data['visited']
13
13
  assert pig.persisted?
14
14
  assert pig.ref
15
+ refute pig.deleted?
16
+ refute_nil pig.deleted?
15
17
  end
16
18
 
17
19
  def test_all
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::Unauthorized) do
21
+ assert_raises(Fauna::Connection::PermissionDenied) do
22
22
  instance = Fauna::Resource.create("classes/posts", @attributes)
23
23
  end
24
24
  end
@@ -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
@@ -11,17 +11,26 @@ class DatabaseTest < MiniTest::Unit::TestCase
11
11
  end
12
12
 
13
13
  def test_get
14
- assert_raises(Fauna::Connection::NotFound) do
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::NotFound) do
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::NotFound) do
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.2'
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
- - !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: 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
- - !ruby/object:Gem::Dependency
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
- type: :runtime
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
- - !ruby/object:Gem::Dependency
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
- type: :development
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
- - !ruby/object:Gem::Dependency
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
- type: :development
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
- - !ruby/object:Gem::Dependency
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
- type: :development
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
- description: Official Ruby client for the Fauna API.
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
- metadata: {}
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: 2.1.10
183
- signing_key:
184
- specification_version: 4
185
- summary: Official Ruby client for the Fauna API.
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