fauna 1.2 → 1.3

Sign up to get free protection for your applications and to get access to all the features.
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