openstates 0.0.1 → 0.1.0
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 +7 -0
- data/.ruby-version +1 -0
- data/README.md +130 -2
- data/lib/openstates/connection.rb +1 -1
- data/lib/openstates/models/district.rb +1 -0
- data/lib/openstates/version.rb +1 -1
- data/openstates.gemspec +1 -3
- metadata +27 -82
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 54bc4b599a448cce3390ad41081fa947d9fc1ea7
|
4
|
+
data.tar.gz: 2abd48ee2bd954dc8de98abebe8f1bcfd08ae680
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: e8589886070d20f45029466d77e45de96b09a3020a2aa6d27e16be36ea17d102aaa0ad5987b5fd52106853cc36be155775f6fcbfb9a0bf35511a8dad4fcd38f5
|
7
|
+
data.tar.gz: 419adea1911286dc3fc60a1d171eafd0380eeba57f55f9b15061696f1317c174776208f0e4a3f084440ade7bdef16a8dff6aa0e72468a7358e305aaee192f6b8
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
2.3.1
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
#
|
1
|
+
# Openstates
|
2
2
|
|
3
|
-
Ruby gem to interact with the OpenStates API.
|
3
|
+
Ruby gem to interact with the Sunlight Labs OpenStates API.
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
@@ -16,8 +16,136 @@ Or install it yourself as:
|
|
16
16
|
|
17
17
|
$ gem install openstates
|
18
18
|
|
19
|
+
## Configuration
|
20
|
+
|
21
|
+
You will need to register for an API key with [Sunlight
|
22
|
+
Labs](http://services.sunlightlabs.com/api/register/).
|
23
|
+
|
24
|
+
If you intend to use this gem in a rails project, you should add the
|
25
|
+
following in `config/initializers/openstates.rb`
|
26
|
+
|
27
|
+
```rb
|
28
|
+
OpenStates.configure do |config|
|
29
|
+
config.api_key ='yourkeyhere'
|
30
|
+
config.logger = Rails.logger
|
31
|
+
end
|
32
|
+
```
|
33
|
+
|
34
|
+
If your project is not rails based, you just need to include the above
|
35
|
+
configuration somewhere in your ruby environment with single change.
|
36
|
+
|
37
|
+
```rb
|
38
|
+
OpenStates.configure do |config|
|
39
|
+
config.api_key ='yourkeyhere'
|
40
|
+
config.logger = ::Logger.new(STDOUT)
|
41
|
+
config.logger.level = ::Logger::DEBUG
|
42
|
+
end
|
43
|
+
```
|
44
|
+
|
19
45
|
## Usage
|
20
46
|
|
47
|
+
### OpenStates::Bill
|
48
|
+
|
49
|
+
You can search for bills using the `where` class method on
|
50
|
+
OpenStates::Bill.
|
51
|
+
|
52
|
+
```rb
|
53
|
+
bills = OpenStates::Bill.where(state: 'tx', q: 'taxi')
|
54
|
+
```
|
55
|
+
|
56
|
+
You can also search for a specific bill by it's bill_id.
|
57
|
+
|
58
|
+
```rb
|
59
|
+
bill = OpenStates::Bill.find("12345")
|
60
|
+
```
|
61
|
+
|
62
|
+
And lastly, you can get bill details by using the `bill_details` class
|
63
|
+
method on OpenStates::Bill.
|
64
|
+
|
65
|
+
```rb
|
66
|
+
bill = OpenStates::Bill.bill_details('fl', '2013', '12345')
|
67
|
+
```
|
68
|
+
|
69
|
+
You can find a list of all query parameters for Bills
|
70
|
+
[here](http://sunlightlabs.github.io/openstates-api/bills.html).
|
71
|
+
|
72
|
+
### OpenStates::Committee
|
73
|
+
|
74
|
+
You can search for committees using the `where` class method on
|
75
|
+
OpenStates::Committee.
|
76
|
+
|
77
|
+
```rb
|
78
|
+
committees = OpenStates::Committee.where(state: 'ny')
|
79
|
+
```
|
80
|
+
|
81
|
+
You can also search for a specific committee by it's id.
|
82
|
+
|
83
|
+
```rb
|
84
|
+
committee = OpenStates::Committee.find("NYC000099")
|
85
|
+
```
|
86
|
+
|
87
|
+
You can find a list of all query parameters for Committees
|
88
|
+
[here](http://sunlightlabs.github.io/openstates-api/committees.html)
|
89
|
+
|
90
|
+
### OpenStates::District
|
91
|
+
|
92
|
+
You can search for districts using the `where` class method on
|
93
|
+
OpenStates::District.
|
94
|
+
|
95
|
+
```rb
|
96
|
+
districts = OpenStates::District.where(state: 'nj')
|
97
|
+
```
|
98
|
+
|
99
|
+
You can also search for a specific district by it's boundary_id.
|
100
|
+
|
101
|
+
```rb
|
102
|
+
district = OpenStates::District.find('12345')
|
103
|
+
```
|
104
|
+
|
105
|
+
You can find a list of all query parameters for Districts
|
106
|
+
[here](http://sunlightlabs.github.io/openstates-api/districts.html)
|
107
|
+
|
108
|
+
### OpenStates::Event
|
109
|
+
|
110
|
+
You can search for events using the `where` class method on
|
111
|
+
OpenStates::Event.
|
112
|
+
|
113
|
+
```rb
|
114
|
+
events = OpenStates::Event.where(state: 'ok')
|
115
|
+
```
|
116
|
+
|
117
|
+
You can also search for a specific event by it's event_id.
|
118
|
+
|
119
|
+
```rb
|
120
|
+
event = OpenStates::Event.find('1234567')
|
121
|
+
```
|
122
|
+
|
123
|
+
You can find a list of all query parameters for Events
|
124
|
+
[here](http://sunlightlabs.github.io/openstates-api/events.html)
|
125
|
+
|
126
|
+
### OpenStates::Legislator
|
127
|
+
|
128
|
+
You can search for legislators using the `where` class method on
|
129
|
+
OpenStates::Legislator.
|
130
|
+
|
131
|
+
```rb
|
132
|
+
legislators = OpenStates::Legislator.where(state: 'ga')
|
133
|
+
```
|
134
|
+
|
135
|
+
You can also search for a specific legislator by their leg_id.
|
136
|
+
|
137
|
+
```rb
|
138
|
+
legislator = OpenStates::Legislator.find('12345')
|
139
|
+
```
|
140
|
+
|
141
|
+
And lastly, you can search for legislators by geolocation details.
|
142
|
+
|
143
|
+
```rb
|
144
|
+
legislators = OpenStates::Legislator.by_location(45.13, -85.10)
|
145
|
+
```
|
146
|
+
|
147
|
+
You can find a list of all query parameters for Legislators
|
148
|
+
[here](http://sunlightlabs.github.io/openstates-api/legislators.html)
|
21
149
|
|
22
150
|
## Contributing
|
23
151
|
|
data/lib/openstates/version.rb
CHANGED
data/openstates.gemspec
CHANGED
@@ -23,9 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency "bundler", "~> 1.3"
|
24
24
|
spec.add_development_dependency "rake"
|
25
25
|
spec.add_development_dependency "rspec"
|
26
|
-
spec.add_development_dependency "guard"
|
27
|
-
spec.add_development_dependency "guard-rspec"
|
28
26
|
spec.add_development_dependency "pry"
|
29
27
|
spec.add_development_dependency "pry-remote"
|
30
|
-
spec.add_development_dependency "pry-
|
28
|
+
spec.add_development_dependency "pry-byebug"
|
31
29
|
end
|
metadata
CHANGED
@@ -1,174 +1,125 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openstates
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Chris
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2017-01-06 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: faraday_middleware
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '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
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: hashie
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
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
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: bundler
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- - ~>
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '1.3'
|
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
54
|
version: '1.3'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: rake
|
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
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: rspec
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - ">="
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
94
|
-
- !ruby/object:Gem::Dependency
|
95
|
-
name: guard
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
|
-
requirements:
|
99
|
-
- - ! '>='
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: '0'
|
102
|
-
type: :development
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
110
|
-
- !ruby/object:Gem::Dependency
|
111
|
-
name: guard-rspec
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
|
-
requirements:
|
115
|
-
- - ! '>='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
80
|
+
- - ">="
|
124
81
|
- !ruby/object:Gem::Version
|
125
82
|
version: '0'
|
126
83
|
- !ruby/object:Gem::Dependency
|
127
84
|
name: pry
|
128
85
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
86
|
requirements:
|
131
|
-
- -
|
87
|
+
- - ">="
|
132
88
|
- !ruby/object:Gem::Version
|
133
89
|
version: '0'
|
134
90
|
type: :development
|
135
91
|
prerelease: false
|
136
92
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
93
|
requirements:
|
139
|
-
- -
|
94
|
+
- - ">="
|
140
95
|
- !ruby/object:Gem::Version
|
141
96
|
version: '0'
|
142
97
|
- !ruby/object:Gem::Dependency
|
143
98
|
name: pry-remote
|
144
99
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
100
|
requirements:
|
147
|
-
- -
|
101
|
+
- - ">="
|
148
102
|
- !ruby/object:Gem::Version
|
149
103
|
version: '0'
|
150
104
|
type: :development
|
151
105
|
prerelease: false
|
152
106
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
107
|
requirements:
|
155
|
-
- -
|
108
|
+
- - ">="
|
156
109
|
- !ruby/object:Gem::Version
|
157
110
|
version: '0'
|
158
111
|
- !ruby/object:Gem::Dependency
|
159
|
-
name: pry-
|
112
|
+
name: pry-byebug
|
160
113
|
requirement: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
114
|
requirements:
|
163
|
-
- -
|
115
|
+
- - ">="
|
164
116
|
- !ruby/object:Gem::Version
|
165
117
|
version: '0'
|
166
118
|
type: :development
|
167
119
|
prerelease: false
|
168
120
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
none: false
|
170
121
|
requirements:
|
171
|
-
- -
|
122
|
+
- - ">="
|
172
123
|
- !ruby/object:Gem::Version
|
173
124
|
version: '0'
|
174
125
|
description: Ruby gem to interact with the OpenStates API.
|
@@ -178,8 +129,9 @@ executables: []
|
|
178
129
|
extensions: []
|
179
130
|
extra_rdoc_files: []
|
180
131
|
files:
|
181
|
-
- .gitignore
|
182
|
-
- .rspec
|
132
|
+
- ".gitignore"
|
133
|
+
- ".rspec"
|
134
|
+
- ".ruby-version"
|
183
135
|
- Gemfile
|
184
136
|
- Guardfile
|
185
137
|
- LICENSE.txt
|
@@ -210,33 +162,26 @@ files:
|
|
210
162
|
homepage: https://github.com/WideEyeLabs
|
211
163
|
licenses:
|
212
164
|
- MIT
|
165
|
+
metadata: {}
|
213
166
|
post_install_message:
|
214
167
|
rdoc_options: []
|
215
168
|
require_paths:
|
216
169
|
- lib
|
217
170
|
required_ruby_version: !ruby/object:Gem::Requirement
|
218
|
-
none: false
|
219
171
|
requirements:
|
220
|
-
- -
|
172
|
+
- - ">="
|
221
173
|
- !ruby/object:Gem::Version
|
222
174
|
version: '0'
|
223
|
-
segments:
|
224
|
-
- 0
|
225
|
-
hash: -4304350490256027937
|
226
175
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
227
|
-
none: false
|
228
176
|
requirements:
|
229
|
-
- -
|
177
|
+
- - ">="
|
230
178
|
- !ruby/object:Gem::Version
|
231
179
|
version: '0'
|
232
|
-
segments:
|
233
|
-
- 0
|
234
|
-
hash: -4304350490256027937
|
235
180
|
requirements: []
|
236
181
|
rubyforge_project:
|
237
|
-
rubygems_version:
|
182
|
+
rubygems_version: 2.5.1
|
238
183
|
signing_key:
|
239
|
-
specification_version:
|
184
|
+
specification_version: 4
|
240
185
|
summary: Ruby gem to interact with the OpenStates API.
|
241
186
|
test_files:
|
242
187
|
- spec/openstates/api_spec.rb
|