popit 0.0.2 → 0.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: be92d4476e37c35a6236ea9f814bdf3b665efa5d
4
+ data.tar.gz: ba44a8334452d04c0907bc5f934cd9c2b9fac26f
5
+ SHA512:
6
+ metadata.gz: 6979c38dff96ae579396283a793e9830cdc6e846ec8398ba191b31fbc973c0cb28428080f66181bff2ee6ea4d729e4350bd4147fa37a52ae83800221330c7c77
7
+ data.tar.gz: 7522a5c1e5c5f6e16aab8646fa0f4447c3f4524e0c54a1de5380327a22b1a08022a97b308a2a81ea1f69635864e79926587bddbc0172066d7638ac294f71fc94
data/.travis.yml CHANGED
@@ -1,3 +1,16 @@
1
+ ---
1
2
  language: ruby
2
3
  rvm:
3
- - 1.9.3
4
+ - 1.8.7
5
+ - 1.9.2
6
+ - 1.9.3
7
+ - 2.0.0
8
+ - ree
9
+ env:
10
+ global:
11
+ - TRAVIS_SECURE_ENV_VARS: true
12
+ - secure: ! 'Q1wjuxr364WRXFTDD8jdunJG59Xl2iYFtehm+5d6UAR9mY9Ohv4TLqT6QhHu
13
+
14
+ 1mdR575m90w3y1ZuS3NnzoUiMcrL+Osoza/tzBOch0+doXMqCXyZcgnSlNgV
15
+
16
+ 16TcY+GFYbBnGnlq+5UoBCjOb3eqHdWqoASdT4DPIijGmvEzBDs='
data/.yardopts ADDED
@@ -0,0 +1,4 @@
1
+ --no-private
2
+ --hide-void-return
3
+ --embed-mixin ClassMethods
4
+ --markup=markdown
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- # Specify your gem's dependencies in scraperwiki-api.gemspec
3
+ # Specify your gem's dependencies in the gemspec
4
4
  gemspec
data/README.md CHANGED
@@ -1,9 +1,11 @@
1
1
  # The PopIt API Ruby Gem
2
2
 
3
- A Ruby wrapper for the [PopIt](http://popit.mysociety.org/) API, which allows you to create, read, update and delete items from PopIt.
3
+ A Ruby wrapper for the [PopIt](http://popit.mysociety.org/) API, which allows you to create, read, update and delete documents from PopIt.
4
4
 
5
+ [![Build Status](https://secure.travis-ci.org/opennorth/popit-ruby.png)](http://travis-ci.org/opennorth/popit-ruby)
5
6
  [![Dependency Status](https://gemnasium.com/opennorth/popit-ruby.png)](https://gemnasium.com/opennorth/popit-ruby)
6
- [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/opennorth/popit-ruby)
7
+ [![Coverage Status](https://coveralls.io/repos/opennorth/popit-ruby/badge.png?branch=master)](https://coveralls.io/r/opennorth/popit-ruby)
8
+ [![Code Climate](https://codeclimate.com/github/opennorth/popit-ruby.png)](https://codeclimate.com/github/opennorth/popit-ruby)
7
9
 
8
10
  ## Installation
9
11
 
@@ -28,11 +30,11 @@ You can pass these options to `PopIt.new`:
28
30
  * `:instance_name` the PopIt instance, usually the first part of the domain name
29
31
  * `:host_name` the PopIt API's host name – defaults to "popit.mysociety.org"
30
32
  * `:port` the PopIt API's port – defaults to 80
31
- * `:version` the PopIt API version – defaults to "v1"
33
+ * `:version` the PopIt API version – defaults to "v0.1"
32
34
  * `:user` a user name – if blank, the API will be read-only
33
35
  * `:password` the user's password
34
36
 
35
- For brevity, we only show examples below for `person` items, but you can use the same code to operate on organisations and positions by substituting `organisation` or `position` for `person`.
37
+ For brevity, we only show examples below for `persons` documents, but you can use the same code to operate on organizations and memberships by substituting `organizations` or `memberships` for `persons`.
36
38
 
37
39
  More documentation at [RubyDoc.info](http://rdoc.info/gems/popit/PopIt).
38
40
 
@@ -41,42 +43,38 @@ More documentation at [RubyDoc.info](http://rdoc.info/gems/popit/PopIt).
41
43
  Get all people:
42
44
 
43
45
  ```ruby
44
- response = api.person.get
45
- p response['results']
46
+ api.persons.get
46
47
  ```
47
48
 
48
49
  Get one person:
49
50
 
50
51
  ```ruby
51
- response = api.person('47cc67093475061e3d95369d').get
52
- p response['result']
52
+ api.persons('47cc67093475061e3d95369d').get
53
53
  ```
54
54
 
55
55
  You can also search for...
56
56
 
57
57
  * people by slug, name or summary
58
- * organisations by slug or name
59
- * positions by title, person or organisation
58
+ * organizations by slug or name
59
+ * memberships by title, person or organization
60
60
 
61
61
  For example:
62
62
 
63
63
  ```ruby
64
- response = api.person.get :name => 'John Doe'
65
- p response['results']
64
+ api.person.get :name => 'John Doe'
66
65
  ```
67
66
 
68
67
  ### Create
69
68
 
70
69
  ```ruby
71
70
  response = api.person.post :name => 'John Doe'
72
- id = response['result']['_id']
71
+ id = response['id']
73
72
  ```
74
73
 
75
74
  ### Update
76
75
 
77
76
  ```ruby
78
- response = api.person(id).put :name => 'Jane Doe'
79
- p response['result']
77
+ api.person(id).put :id => id, :name => 'Jane Doe'
80
78
  ```
81
79
 
82
80
  ### Delete
@@ -87,29 +85,24 @@ success = api.person(id).delete
87
85
 
88
86
  ## Error Handling
89
87
 
90
- If you attempt to:
88
+ You will raise a `PopIt::PageNotFound` exception if you attempt to access an instance, API version, collection or document that doesn't exist. You will raise a `PopIt::NotAuthenticated` exception if you attempt to create, update or delete a document without authenticating. In other error cases, you will raise a generic `PopIt::Error` exception.
91
89
 
92
- * read an item that doesn't exist
93
- * create, update or delete an item without authenticating
94
- * operate on something other than people, organisations and positions
95
-
96
- you will raise a `PopIt::Error` exception. The exception's message will be the same as from the PopIt API.
90
+ The exception's message will be the same as from the PopIt API.
97
91
 
98
92
  ```ruby
99
93
  require 'popit'
100
94
  api = PopIt.new :instance_name => 'demo'
101
- api.person.get 'foo' # raises PopIt::Error with {"error":"page not found"}
95
+ api.person.get 'foo' # raises PopIt::PageNotFound with "page not found"
102
96
  ```
103
97
 
104
98
  ## Running Tests
105
99
 
106
- To run the tests, create a `spec_auth.yml` file in the `spec` directory with the contents:
100
+ To run the tests:
107
101
 
108
- ```yml
109
- instance_name: YOUR_TEST_INSTANCE
110
- user: YOUR_USERNAME
111
- password: YOUR_PASSWORD
112
- ```
102
+ export INSTANCE_NAME=YOUR_POPIT_INSTANCE_NAME
103
+ export POPIT_USER=YOUR_POPIT_EMAIL_ADDRESS
104
+ export POPIT_PASSWORD=YOUR_POPIT_PASSWORD
105
+ bundle exec rake
113
106
 
114
107
  **If you care about the data in an instance, do not use that instance to run tests!**
115
108
 
data/lib/popit/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  class PopIt
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/popit.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'httparty'
2
- require 'yajl'
3
2
 
4
3
  # A Ruby wrapper for the PopIt API.
5
4
  #
@@ -8,11 +7,11 @@ require 'yajl'
8
7
  #
9
8
  # require 'popit'
10
9
  # api = PopIt.new :instance_name => 'demo'
11
- # api.get 'person/john-doe'
10
+ # api.get 'persons/john-doe'
12
11
  #
13
12
  # can be written as:
14
13
  #
15
- # api.person('john-doe').get
14
+ # api.persons('john-doe').get
16
15
  #
17
16
  # All methods and arguments between `api` and the HTTP method - in this case,
18
17
  # `get` - become parts of the path.
@@ -20,17 +19,30 @@ require 'yajl'
20
19
  # @see https://github.com/mysociety/popit/blob/master/lib/apps/api/api_v1.js
21
20
  class PopIt
22
21
  class Error < StandardError; end
22
+ class PageNotFound < Error; end
23
+ class NotAuthenticated < Error; end
23
24
 
24
25
  include HTTParty
25
26
 
26
- attr_reader :instance_name, :host_name, :port, :version, :username, :password
27
+ # The instance name.
28
+ attr_reader :instance_name
29
+ # The PopIt API's host name, eg "popit.mysociety.org".
30
+ attr_reader :host_name
31
+ # The PopIt API's port, eg 80
32
+ attr_reader :port
33
+ # The PopIt API version, eg "v0.1"
34
+ attr_reader :version
35
+ # A user name.
36
+ attr_reader :username
37
+ # The user's password.
38
+ attr_reader :password
27
39
 
28
40
  # Initializes a PopIt API client.
29
41
  #
30
42
  # @param [Hash] opts the API client's configuration
31
43
  # @option opts [String] :instance_name the instance name
32
44
  # @option opts [String] :host_name the PopIt API's host name, eg "popit.mysociety.org"
33
- # @option opts [String] :post the PopIt API's port, eg "80"
45
+ # @option opts [String] :post the PopIt API's port, eg 80
34
46
  # @option opts [String] :version the PopIt API version, eg "v1"
35
47
  # @option opts [String] :user a user name
36
48
  # @option opts [String] :password the user's password
@@ -41,13 +53,13 @@ class PopIt
41
53
 
42
54
  @instance_name = opts[:instance_name]
43
55
  @host_name = opts[:host_name] || 'popit.mysociety.org'
44
- @port = opts[:port]
45
- @version = opts[:version] || 'v1'
56
+ @port = opts[:port] || 80
57
+ @version = opts[:version] || 'v0.1'
46
58
  @username = opts[:user]
47
59
  @password = opts[:password]
48
60
  end
49
61
 
50
- # Send a GET request.
62
+ # Sends a GET request.
51
63
  #
52
64
  # @param [String] path a path with no leading slash
53
65
  # @param [Hash] opts key-value pairs for the query string
@@ -56,7 +68,7 @@ class PopIt
56
68
  request :get, path, opts
57
69
  end
58
70
 
59
- # Send a POST request.
71
+ # Sends a POST request.
60
72
  #
61
73
  # @param [String] path a path with no leading slash
62
74
  # @param [Hash] opts key-value pairs for the message body
@@ -65,7 +77,7 @@ class PopIt
65
77
  request :post, path, opts
66
78
  end
67
79
 
68
- # Send a PUT request.
80
+ # Sends a PUT request.
69
81
  #
70
82
  # @param [String] path a path with no leading slash
71
83
  # @param [Hash] opts key-value pairs for the message body
@@ -74,7 +86,7 @@ class PopIt
74
86
  request :put, path, opts
75
87
  end
76
88
 
77
- # Send a DELETE request.
89
+ # Sends a DELETE request.
78
90
  #
79
91
  # @param [String] path a path with no leading slash
80
92
  # @param [Hash] opts key-value pairs for the query string
@@ -97,16 +109,23 @@ private
97
109
  self.class.send http_method, path, :basic_auth => {:username => username, :password => password}, :body => opts
98
110
  end
99
111
 
100
- unless ['200', '201', '204'].include? response.response.code
101
- message = if response.response.content_type == 'text/html'
102
- response.response.code
112
+ unless ['200', '201', '204'].include?(response.response.code)
113
+ if response.response.content_type == 'text/html'
114
+ message = response.response.code
103
115
  else
104
- response.response.body
116
+ message = response.parsed_response['error'] || response.parsed_response['errors'].join(', ')
117
+ end
118
+ case response.response.code
119
+ when '404'
120
+ raise PopIt::PageNotFound, message
121
+ when '401'
122
+ raise PopIt::NotAuthenticated, message
123
+ else
124
+ raise PopIt::Error, message
105
125
  end
106
- raise PopIt::Error, message
107
126
  end
108
127
 
109
- response.parsed_response
128
+ response.parsed_response && response.parsed_response['result']
110
129
  end
111
130
 
112
131
  def method_missing(*args)
data/popit.gemspec CHANGED
@@ -1,6 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "popit/version"
2
+ require File.expand_path('../lib/popit/version', __FILE__)
4
3
 
5
4
  Gem::Specification.new do |s|
6
5
  s.name = "popit"
@@ -11,14 +10,15 @@ Gem::Specification.new do |s|
11
10
  s.homepage = "http://github.com/opennorth/popit-ruby"
12
11
  s.summary = %q{The PopIt API Ruby Gem}
13
12
  s.description = %q{A Ruby wrapper for the PopIt API}
13
+ s.license = 'MIT'
14
14
 
15
15
  s.files = `git ls-files`.split("\n")
16
16
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
17
17
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
18
18
  s.require_paths = ["lib"]
19
19
 
20
- s.add_runtime_dependency('yajl-ruby', '~> 1.0')
21
- s.add_runtime_dependency('httparty', '~> 0.8.0')
20
+ s.add_runtime_dependency('httparty', '~> 0.10.0')
22
21
  s.add_development_dependency('rspec', '~> 2.10')
23
22
  s.add_development_dependency('rake')
23
+ s.add_development_dependency('coveralls')
24
24
  end
data/spec/popit_spec.rb CHANGED
@@ -11,88 +11,99 @@ describe PopIt do
11
11
  end
12
12
 
13
13
  let :authenticated do
14
- PopIt.new YAML.load_file(File.expand_path(File.dirname(__FILE__) + '/spec_auth.yml'))
14
+ PopIt.new({
15
+ :instance_name => ENV['INSTANCE_NAME'] || 'tttest',
16
+ :user => ENV['POPIT_USER'] || 'james@opennorth.ca',
17
+ :password => ENV['POPIT_PASSWORD'],
18
+ })
15
19
  end
16
20
 
17
21
  it 'should fail to send a request to a bad instance' do
18
22
  api = PopIt.new :instance_name => '47cc67093475061e3d95369d'
19
- expect { api.person.get }.to raise_error(PopIt::Error, '404')
23
+ expect { api.persons.get }.to raise_error(PopIt::PageNotFound, '404')
20
24
  end
21
25
 
22
26
  it 'should fail to send a request to a bad version' do
23
27
  api = PopIt.new :instance_name => 'tttest', :version => 'v0'
24
- expect { api.person.get }.to raise_error(PopIt::Error, '{"error":"page not found"}')
28
+ expect { api.persons.get }.to raise_error(PopIt::PageNotFound, 'page not found')
25
29
  end
26
30
 
27
31
  context 'with a PopIt instance' do
28
- before :all do
29
- @person = authenticated.person.post(:name => 'John Doe', :slug => 'john-doe')['result']
30
- end
31
-
32
32
  let :person do
33
- @person
33
+ unauthenticated.persons.get(:name => 'Foo', :slug => 'foo')[0]
34
34
  end
35
35
 
36
36
  let :id do
37
- @person['_id']
37
+ person['id']
38
38
  end
39
39
 
40
40
  it 'should fail to send a request to a bad schema' do
41
- expect { unauthenticated.foo.get }.to raise_error(PopIt::Error, '{"error":"page not found"}')
41
+ expect { unauthenticated.foo.get }.to raise_error(PopIt::PageNotFound, "collection 'foo' not found")
42
42
  end
43
43
 
44
44
  context 'when unauthenticated' do
45
45
  it 'should get all items' do
46
- response = unauthenticated.person.get
47
- results = response['results']
48
- results.should be_an(Array)
46
+ response = unauthenticated.persons.get
47
+ response.should be_an(Array)
49
48
  end
50
49
 
51
50
  it 'should get one item by name' do
52
- response = unauthenticated.person.get :name => 'John Doe'
53
- results = response['results']
54
- results.should be_an(Array)
51
+ response = unauthenticated.persons.get :name => 'Foo'
52
+ response.should be_an(Array)
55
53
  end
56
54
 
57
55
  it 'should get one item' do
58
- response = unauthenticated.person(id).get
59
- result = response['result']
60
- result.should == person
56
+ response = unauthenticated.persons(id).get
57
+ # PopIt adds fields e.g. __v, _internal, contact_details, images, links,
58
+ # other_names, personal_details and adds positions_api_url to meta.
59
+ person.each do |k,v|
60
+ unless k == 'meta'
61
+ response[k].should == v
62
+ end
63
+ end
61
64
  end
62
65
 
63
66
  it 'should fail to get a non-existent item' do
64
- expect { unauthenticated.person('foo').get }.to raise_error(PopIt::Error, '{"error":"page not found"}')
67
+ expect {unauthenticated.persons('bar').get}.to raise_error(PopIt::PageNotFound, "id 'bar' not found")
65
68
  end
66
69
 
67
70
  it 'should fail to create an item' do
68
- expect {unauthenticated.person.post :name => 'John Doe', :slug => 'john-doe'}.to raise_error(PopIt::Error, %({"error":"not authenticated"}))
71
+ expect {unauthenticated.persons.post :name => 'John Doe', :slug => 'john-doe'}.to raise_error(PopIt::NotAuthenticated, 'not authenticated')
69
72
  end
70
73
 
71
74
  it 'should fail to update an item' do
72
- expect {unauthenticated.person(id).put :name => 'Jane Doe'}.to raise_error(PopIt::Error, %({"error":"not authenticated"}))
75
+ expect {unauthenticated.persons(id).put :id => id, :name => 'John Doe', :slug => 'john-doe'}.to raise_error(PopIt::NotAuthenticated, 'not authenticated')
73
76
  end
74
77
 
75
78
  it 'should fail to delete an item' do
76
- expect {unauthenticated.person(id).delete}.to raise_error(PopIt::Error, %({"error":"not authenticated"}))
79
+ expect {unauthenticated.persons(id).delete}.to raise_error(PopIt::NotAuthenticated, 'not authenticated')
77
80
  end
78
81
  end
79
82
 
80
83
  context 'when authenticated' do
81
- it 'should create an item' do
82
- response = authenticated.person.post :name => 'John Smith'
83
- result = response['result']
84
- result['name'].should == 'John Smith'
85
- authenticated.person(result['_id']).delete # cleanup
86
- end
87
-
88
- it 'should update an item' do
89
- response = authenticated.person(id).put :name => 'John Smith'
84
+ it 'should create, update and delete an item' do
85
+ response = authenticated.persons.post :name => 'John Smith', :slug => 'john-smith'
86
+ id = response['id']
87
+ response['name'].should == 'John Smith'
88
+
89
+ response = authenticated.persons(id).put :id => id, :name => 'John Doe', :slug => 'john-doe'
90
+ response.should == {
91
+ 'id' => id,
92
+ 'name' => 'John Doe',
93
+ 'slug' => 'john-doe',
94
+ 'memberships' => [],
95
+ 'links' => [],
96
+ 'contact_details' => [],
97
+ 'identifiers' => [],
98
+ 'other_names' => [],
99
+ 'url' => 'http://tttest.popit.mysociety.org/api/v0.1/persons/' + id,
100
+ 'html_url' => 'http://tttest.popit.mysociety.org/persons/john-doe',
101
+ }
102
+ authenticated.persons(id).get['name'].should == 'John Doe'
103
+
104
+ response = authenticated.persons(id).delete
90
105
  response.should == nil
91
- end
92
-
93
- it 'should delete an item' do
94
- response = authenticated.person(id).delete
95
- response.should == {}
106
+ expect {authenticated.persons(id).get}.to raise_error(PopIt::PageNotFound, "id '#{id}' not found")
96
107
  end
97
108
  end
98
109
  end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,7 @@
1
1
  require 'rubygems'
2
+
3
+ require 'coveralls'
4
+ Coveralls.wear!
5
+
2
6
  require 'rspec'
3
7
  require File.dirname(__FILE__) + '/../lib/popit'
metadata CHANGED
@@ -1,78 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: popit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
5
- prerelease:
4
+ version: 0.0.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Open North
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-09-28 00:00:00.000000000 Z
11
+ date: 2014-03-10 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: yajl-ruby
14
+ name: httparty
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
21
- version: '1.0'
19
+ version: 0.10.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
29
- version: '1.0'
26
+ version: 0.10.0
30
27
  - !ruby/object:Gem::Dependency
31
- name: httparty
28
+ name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
37
- version: 0.8.0
38
- type: :runtime
33
+ version: '2.10'
34
+ type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
45
- version: 0.8.0
40
+ version: '2.10'
46
41
  - !ruby/object:Gem::Dependency
47
- name: rspec
42
+ name: rake
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
- version: '2.10'
47
+ version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
- version: '2.10'
54
+ version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
- name: rake
56
+ name: coveralls
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  description: A Ruby wrapper for the PopIt API
@@ -84,6 +75,7 @@ extra_rdoc_files: []
84
75
  files:
85
76
  - .gitignore
86
77
  - .travis.yml
78
+ - .yardopts
87
79
  - Gemfile
88
80
  - LICENSE
89
81
  - README.md
@@ -95,30 +87,29 @@ files:
95
87
  - spec/popit_spec.rb
96
88
  - spec/spec_helper.rb
97
89
  homepage: http://github.com/opennorth/popit-ruby
98
- licenses: []
90
+ licenses:
91
+ - MIT
92
+ metadata: {}
99
93
  post_install_message:
100
94
  rdoc_options: []
101
95
  require_paths:
102
96
  - lib
103
97
  required_ruby_version: !ruby/object:Gem::Requirement
104
- none: false
105
98
  requirements:
106
- - - ! '>='
99
+ - - '>='
107
100
  - !ruby/object:Gem::Version
108
101
  version: '0'
109
102
  required_rubygems_version: !ruby/object:Gem::Requirement
110
- none: false
111
103
  requirements:
112
- - - ! '>='
104
+ - - '>='
113
105
  - !ruby/object:Gem::Version
114
106
  version: '0'
115
107
  requirements: []
116
108
  rubyforge_project:
117
- rubygems_version: 1.8.24
109
+ rubygems_version: 2.0.8
118
110
  signing_key:
119
- specification_version: 3
111
+ specification_version: 4
120
112
  summary: The PopIt API Ruby Gem
121
113
  test_files:
122
114
  - spec/popit_spec.rb
123
115
  - spec/spec_helper.rb
124
- has_rdoc: