twitter 4.3.0 → 4.4.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.
Files changed (60) hide show
  1. data/.yardopts +10 -0
  2. data/CHANGELOG.md +123 -110
  3. data/CONTRIBUTING.md +51 -0
  4. data/README.md +17 -2
  5. data/lib/twitter/api/direct_messages.rb +3 -6
  6. data/lib/twitter/api/favorites.rb +6 -13
  7. data/lib/twitter/api/friends_and_followers.rb +76 -8
  8. data/lib/twitter/api/lists.rb +65 -36
  9. data/lib/twitter/api/places_and_geo.rb +3 -3
  10. data/lib/twitter/api/saved_searches.rb +2 -2
  11. data/lib/twitter/api/spam_reporting.rb +2 -2
  12. data/lib/twitter/api/suggested_users.rb +1 -1
  13. data/lib/twitter/api/timelines.rb +12 -8
  14. data/lib/twitter/api/tweets.rb +8 -12
  15. data/lib/twitter/api/undocumented.rb +3 -3
  16. data/lib/twitter/api/users.rb +16 -10
  17. data/lib/twitter/api/utils.rb +109 -30
  18. data/lib/twitter/base.rb +15 -5
  19. data/lib/twitter/basic_user.rb +0 -1
  20. data/lib/twitter/client.rb +16 -37
  21. data/lib/twitter/core_ext/enumerable.rb +2 -2
  22. data/lib/twitter/default.rb +5 -8
  23. data/lib/twitter/exceptable.rb +36 -0
  24. data/lib/twitter/factory.rb +4 -4
  25. data/lib/twitter/list.rb +0 -1
  26. data/lib/twitter/request/multipart_with_file.rb +5 -7
  27. data/lib/twitter/search_results.rb +10 -6
  28. data/lib/twitter/settings.rb +0 -1
  29. data/lib/twitter/source_user.rb +0 -7
  30. data/lib/twitter/target_user.rb +0 -1
  31. data/lib/twitter/tweet.rb +15 -17
  32. data/lib/twitter/user.rb +4 -14
  33. data/lib/twitter/version.rb +4 -4
  34. data/spec/fixtures/followers_list.json +1 -0
  35. data/spec/fixtures/friends_list.json +1 -0
  36. data/spec/fixtures/ids_list.json +1 -1
  37. data/spec/fixtures/ids_list2.json +1 -1
  38. data/spec/helper.rb +9 -8
  39. data/spec/twitter/action_factory_spec.rb +1 -1
  40. data/spec/twitter/api/favorites_spec.rb +2 -2
  41. data/spec/twitter/api/friends_and_followers_spec.rb +102 -2
  42. data/spec/twitter/api/spam_reporting_spec.rb +2 -2
  43. data/spec/twitter/api/tweets_spec.rb +2 -2
  44. data/spec/twitter/api/users_spec.rb +107 -49
  45. data/spec/twitter/base_spec.rb +1 -1
  46. data/spec/twitter/client_spec.rb +4 -4
  47. data/spec/twitter/cursor_spec.rb +2 -2
  48. data/spec/twitter/error/client_error_spec.rb +16 -5
  49. data/spec/twitter/error/server_error_spec.rb +1 -1
  50. data/spec/twitter/error_spec.rb +2 -2
  51. data/spec/twitter/geo_factory_spec.rb +1 -1
  52. data/spec/twitter/identifiable_spec.rb +2 -2
  53. data/spec/twitter/media_factory_spec.rb +1 -1
  54. data/spec/twitter/search_results_spec.rb +11 -0
  55. data/spec/twitter/tweet_spec.rb +11 -0
  56. data/twitter.gemspec +3 -2
  57. metadata +190 -173
  58. data/lib/twitter/core_ext/array.rb +0 -7
  59. data/lib/twitter/core_ext/hash.rb +0 -100
  60. data/lib/twitter/core_ext/string.rb +0 -10
@@ -23,7 +23,7 @@ describe Twitter::Cursor do
23
23
  end
24
24
  it "fetches all" do
25
25
  follower_ids = @client.follower_ids("sferik").all
26
- expect(follower_ids.size).to eq 5993
26
+ expect(follower_ids.size).to eq 6
27
27
  end
28
28
  end
29
29
 
@@ -41,7 +41,7 @@ describe Twitter::Cursor do
41
41
  it "iterates" do
42
42
  count = 0
43
43
  @client.follower_ids("sferik").each{count += 1}
44
- expect(count).to eq 5993
44
+ expect(count).to eq 6
45
45
  end
46
46
  end
47
47
 
@@ -14,18 +14,29 @@ describe Twitter::Error::ClientError do
14
14
  stub_get("/1.1/statuses/user_timeline.json").with(:query => {:screen_name => 'sferik'}).to_return(:status => status, :body => body_message)
15
15
  end
16
16
  it "raises #{exception.name}" do
17
- expect{@client.user_timeline('sferik')}.to raise_error(exception)
17
+ expect{@client.user_timeline('sferik')}.to raise_error exception
18
18
  end
19
19
  end
20
20
  end
21
21
  end
22
22
 
23
23
  context "when response status is 404 from lookup" do
24
- before do
25
- stub_post("/1.1/users/lookup.json").with(:body => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
24
+ context "using a post request" do
25
+ before do
26
+ stub_post("/1.1/users/lookup.json").with(:body => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
27
+ end
28
+ it "raises Twitter::Error::NotFound" do
29
+ expect{@client.users('not_on_twitter')}.to raise_error Twitter::Error::NotFound
30
+ end
26
31
  end
27
- it "raises Twitter::Error::NotFound" do
28
- expect{@client.users('not_on_twitter')}.to raise_error(Twitter::Error::NotFound)
32
+
33
+ context "using a get request" do
34
+ before do
35
+ stub_get("/1.1/users/lookup.json").with(:query => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
36
+ end
37
+ it "raises Twitter::Error::NotFound" do
38
+ expect{@client.users('not_on_twitter', :method => :get)}.to raise_error Twitter::Error::NotFound
39
+ end
29
40
  end
30
41
  end
31
42
 
@@ -12,7 +12,7 @@ describe Twitter::Error::ServerError do
12
12
  stub_get("/1.1/statuses/user_timeline.json").with(:query => {:screen_name => 'sferik'}).to_return(:status => status)
13
13
  end
14
14
  it "raises #{exception.name}" do
15
- expect{@client.user_timeline('sferik')}.to raise_error(exception)
15
+ expect{@client.user_timeline('sferik')}.to raise_error exception
16
16
  end
17
17
  end
18
18
  end
@@ -5,12 +5,12 @@ describe Twitter::Error do
5
5
  describe "#initialize" do
6
6
  it "wraps another error class" do
7
7
  begin
8
- raise Faraday::Error::ClientError.new("Oups")
8
+ raise Faraday::Error::ClientError.new("Oops")
9
9
  rescue Faraday::Error::ClientError
10
10
  begin
11
11
  raise Twitter::Error
12
12
  rescue Twitter::Error => error
13
- expect(error.message).to eq "Oups"
13
+ expect(error.message).to eq "Oops"
14
14
  expect(error.wrapped_exception.class).to eq Faraday::Error::ClientError
15
15
  end
16
16
  end
@@ -12,7 +12,7 @@ describe Twitter::GeoFactory do
12
12
  expect(geo).to be_a Twitter::Geo::Polygon
13
13
  end
14
14
  it "raises an ArgumentError when type is not specified" do
15
- expect{Twitter::GeoFactory.fetch_or_new}.to raise_error(ArgumentError, "argument must have :type key")
15
+ expect{Twitter::GeoFactory.fetch_or_new}.to raise_error ArgumentError
16
16
  end
17
17
  end
18
18
 
@@ -4,7 +4,7 @@ describe Twitter::Identity do
4
4
 
5
5
  describe "#initialize" do
6
6
  it "raises an ArgumentError when type is not specified" do
7
- expect{Twitter::Identity.new}.to raise_error(ArgumentError, "argument must have an :id key")
7
+ expect{Twitter::Identity.new}.to raise_error ArgumentError
8
8
  end
9
9
  end
10
10
 
@@ -24,7 +24,7 @@ describe Twitter::Identity do
24
24
  end
25
25
 
26
26
  it "raises an error on objects that don't exist" do
27
- expect{Twitter::Identity.fetch(:id => 6)}.to raise_error(Twitter::Error::IdentityMapKeyError)
27
+ expect{Twitter::Identity.fetch(:id => 6)}.to raise_error Twitter::Error::IdentityMapKeyError
28
28
  end
29
29
  end
30
30
  end
@@ -8,7 +8,7 @@ describe Twitter::MediaFactory do
8
8
  expect(media).to be_a Twitter::Media::Photo
9
9
  end
10
10
  it "raises an ArgumentError when type is not specified" do
11
- expect{Twitter::MediaFactory.fetch_or_new}.to raise_error(ArgumentError, "argument must have :type key")
11
+ expect{Twitter::MediaFactory.fetch_or_new}.to raise_error ArgumentError
12
12
  end
13
13
  end
14
14
 
@@ -74,6 +74,17 @@ describe Twitter::SearchResults do
74
74
  end
75
75
  end
76
76
 
77
+ describe "#search_metadata?" do
78
+ it "returns true when search_metadata is set" do
79
+ search_metadata = Twitter::SearchResults.new(:search_metadata => {}).search_metadata?
80
+ expect(search_metadata).to be_true
81
+ end
82
+ it "returns false when search_metadata is not set" do
83
+ search_metadata = Twitter::SearchResults.new.search_metadata?
84
+ expect(search_metadata).to be_false
85
+ end
86
+ end
87
+
77
88
  describe "#since_id" do
78
89
  it "returns an ID" do
79
90
  since_id = Twitter::SearchResults.new(:search_metadata => {:since_id => 250126199840518145}).since_id
@@ -288,6 +288,17 @@ describe Twitter::Tweet do
288
288
  end
289
289
  end
290
290
 
291
+ describe "#user?" do
292
+ it "returns true when status is set" do
293
+ user = Twitter::Tweet.new(:id => 28669546014, :user => {:id => 7505382}).user?
294
+ expect(user).to be_true
295
+ end
296
+ it "returns false when status is not set" do
297
+ user = Twitter::Tweet.new(:id => 28669546014).user?
298
+ expect(user).to be_false
299
+ end
300
+ end
301
+
291
302
  describe "#user_mentions" do
292
303
  it "returns an Array of Entity::UserMention when entities are set" do
293
304
  user_mentions_hash = [
@@ -5,8 +5,9 @@ Gem::Specification.new do |spec|
5
5
  spec.add_dependency 'faraday', '~> 0.8'
6
6
  spec.add_dependency 'multi_json', '~> 1.3'
7
7
  spec.add_dependency 'simple_oauth', '~> 0.1.6'
8
- spec.add_development_dependency 'json'
8
+ spec.add_development_dependency 'oj'
9
9
  spec.add_development_dependency 'pry'
10
+ spec.add_development_dependency 'pry-nav'
10
11
  spec.add_development_dependency 'rake'
11
12
  spec.add_development_dependency 'redcarpet'
12
13
  spec.add_development_dependency 'rspec'
@@ -17,7 +18,7 @@ Gem::Specification.new do |spec|
17
18
  spec.authors = ["John Nunemaker", "Wynn Netherland", "Erik Michaels-Ober", "Steve Richert"]
18
19
  spec.description = %q{A Ruby interface to the Twitter API.}
19
20
  spec.email = ['nunemaker@gmail.com', 'wynn.netherland@gmail.com', 'sferik@gmail.com', 'steve.richert@gmail.com']
20
- spec.files = %w(CHANGELOG.md LICENSE.md README.md Rakefile twitter.gemspec)
21
+ spec.files = %w(.yardopts CHANGELOG.md CONTRIBUTING.md LICENSE.md README.md Rakefile twitter.gemspec)
21
22
  spec.files += Dir.glob("lib/**/*.rb")
22
23
  spec.files += Dir.glob("spec/**/*")
23
24
  spec.homepage = 'http://sferik.github.com/twitter/'
metadata CHANGED
@@ -1,10 +1,15 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: twitter
3
- version: !ruby/object:Gem::Version
4
- version: 4.3.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 47
5
5
  prerelease:
6
+ segments:
7
+ - 4
8
+ - 4
9
+ - 0
10
+ version: 4.4.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - John Nunemaker
9
14
  - Wynn Netherland
10
15
  - Erik Michaels-Ober
@@ -12,211 +17,211 @@ authors:
12
17
  autorequire:
13
18
  bindir: bin
14
19
  cert_chain: []
15
- date: 2012-11-20 00:00:00.000000000 Z
16
- dependencies:
17
- - !ruby/object:Gem::Dependency
20
+
21
+ date: 2012-11-30 00:00:00 Z
22
+ dependencies:
23
+ - !ruby/object:Gem::Dependency
18
24
  name: faraday
19
- requirement: !ruby/object:Gem::Requirement
20
- none: false
21
- requirements:
22
- - - ~>
23
- - !ruby/object:Gem::Version
24
- version: '0.8'
25
- type: :runtime
26
25
  prerelease: false
27
- version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
- requirements:
30
- - - ~>
31
- - !ruby/object:Gem::Version
32
- version: '0.8'
33
- - !ruby/object:Gem::Dependency
34
- name: multi_json
35
- requirement: !ruby/object:Gem::Requirement
26
+ requirement: &id001 !ruby/object:Gem::Requirement
36
27
  none: false
37
- requirements:
28
+ requirements:
38
29
  - - ~>
39
- - !ruby/object:Gem::Version
40
- version: '1.3'
30
+ - !ruby/object:Gem::Version
31
+ hash: 27
32
+ segments:
33
+ - 0
34
+ - 8
35
+ version: "0.8"
41
36
  type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: multi_json
42
40
  prerelease: false
43
- version_requirements: !ruby/object:Gem::Requirement
41
+ requirement: &id002 !ruby/object:Gem::Requirement
44
42
  none: false
45
- requirements:
43
+ requirements:
46
44
  - - ~>
47
- - !ruby/object:Gem::Version
48
- version: '1.3'
49
- - !ruby/object:Gem::Dependency
45
+ - !ruby/object:Gem::Version
46
+ hash: 9
47
+ segments:
48
+ - 1
49
+ - 3
50
+ version: "1.3"
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
50
54
  name: simple_oauth
51
- requirement: !ruby/object:Gem::Requirement
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
52
57
  none: false
53
- requirements:
58
+ requirements:
54
59
  - - ~>
55
- - !ruby/object:Gem::Version
60
+ - !ruby/object:Gem::Version
61
+ hash: 23
62
+ segments:
63
+ - 0
64
+ - 1
65
+ - 6
56
66
  version: 0.1.6
57
67
  type: :runtime
68
+ version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ name: oj
58
71
  prerelease: false
59
- version_requirements: !ruby/object:Gem::Requirement
72
+ requirement: &id004 !ruby/object:Gem::Requirement
60
73
  none: false
61
- requirements:
62
- - - ~>
63
- - !ruby/object:Gem::Version
64
- version: 0.1.6
65
- - !ruby/object:Gem::Dependency
66
- name: json
67
- requirement: !ruby/object:Gem::Requirement
68
- none: false
69
- requirements:
70
- - - ! '>='
71
- - !ruby/object:Gem::Version
72
- version: '0'
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ hash: 3
78
+ segments:
79
+ - 0
80
+ version: "0"
73
81
  type: :development
74
- prerelease: false
75
- version_requirements: !ruby/object:Gem::Requirement
76
- none: false
77
- requirements:
78
- - - ! '>='
79
- - !ruby/object:Gem::Version
80
- version: '0'
81
- - !ruby/object:Gem::Dependency
82
+ version_requirements: *id004
83
+ - !ruby/object:Gem::Dependency
82
84
  name: pry
83
- requirement: !ruby/object:Gem::Requirement
85
+ prerelease: false
86
+ requirement: &id005 !ruby/object:Gem::Requirement
84
87
  none: false
85
- requirements:
86
- - - ! '>='
87
- - !ruby/object:Gem::Version
88
- version: '0'
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ hash: 3
92
+ segments:
93
+ - 0
94
+ version: "0"
89
95
  type: :development
96
+ version_requirements: *id005
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-nav
90
99
  prerelease: false
91
- version_requirements: !ruby/object:Gem::Requirement
100
+ requirement: &id006 !ruby/object:Gem::Requirement
92
101
  none: false
93
- requirements:
94
- - - ! '>='
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rake
99
- requirement: !ruby/object:Gem::Requirement
100
- none: false
101
- requirements:
102
- - - ! '>='
103
- - !ruby/object:Gem::Version
104
- version: '0'
102
+ requirements:
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ hash: 3
106
+ segments:
107
+ - 0
108
+ version: "0"
105
109
  type: :development
110
+ version_requirements: *id006
111
+ - !ruby/object:Gem::Dependency
112
+ name: rake
106
113
  prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
114
+ requirement: &id007 !ruby/object:Gem::Requirement
108
115
  none: false
109
- requirements:
110
- - - ! '>='
111
- - !ruby/object:Gem::Version
112
- version: '0'
113
- - !ruby/object:Gem::Dependency
114
- name: redcarpet
115
- requirement: !ruby/object:Gem::Requirement
116
- none: false
117
- requirements:
118
- - - ! '>='
119
- - !ruby/object:Gem::Version
120
- version: '0'
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ hash: 3
120
+ segments:
121
+ - 0
122
+ version: "0"
121
123
  type: :development
124
+ version_requirements: *id007
125
+ - !ruby/object:Gem::Dependency
126
+ name: redcarpet
122
127
  prerelease: false
123
- version_requirements: !ruby/object:Gem::Requirement
128
+ requirement: &id008 !ruby/object:Gem::Requirement
124
129
  none: false
125
- requirements:
126
- - - ! '>='
127
- - !ruby/object:Gem::Version
128
- version: '0'
129
- - !ruby/object:Gem::Dependency
130
- name: rspec
131
- requirement: !ruby/object:Gem::Requirement
132
- none: false
133
- requirements:
134
- - - ! '>='
135
- - !ruby/object:Gem::Version
136
- version: '0'
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ hash: 3
134
+ segments:
135
+ - 0
136
+ version: "0"
137
137
  type: :development
138
+ version_requirements: *id008
139
+ - !ruby/object:Gem::Dependency
140
+ name: rspec
138
141
  prerelease: false
139
- version_requirements: !ruby/object:Gem::Requirement
142
+ requirement: &id009 !ruby/object:Gem::Requirement
140
143
  none: false
141
- requirements:
142
- - - ! '>='
143
- - !ruby/object:Gem::Version
144
- version: '0'
145
- - !ruby/object:Gem::Dependency
146
- name: simplecov
147
- requirement: !ruby/object:Gem::Requirement
148
- none: false
149
- requirements:
150
- - - ! '>='
151
- - !ruby/object:Gem::Version
152
- version: '0'
144
+ requirements:
145
+ - - ">="
146
+ - !ruby/object:Gem::Version
147
+ hash: 3
148
+ segments:
149
+ - 0
150
+ version: "0"
153
151
  type: :development
152
+ version_requirements: *id009
153
+ - !ruby/object:Gem::Dependency
154
+ name: simplecov
154
155
  prerelease: false
155
- version_requirements: !ruby/object:Gem::Requirement
156
- none: false
157
- requirements:
158
- - - ! '>='
159
- - !ruby/object:Gem::Version
160
- version: '0'
161
- - !ruby/object:Gem::Dependency
162
- name: timecop
163
- requirement: !ruby/object:Gem::Requirement
156
+ requirement: &id010 !ruby/object:Gem::Requirement
164
157
  none: false
165
- requirements:
166
- - - ! '>='
167
- - !ruby/object:Gem::Version
168
- version: '0'
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ hash: 3
162
+ segments:
163
+ - 0
164
+ version: "0"
169
165
  type: :development
166
+ version_requirements: *id010
167
+ - !ruby/object:Gem::Dependency
168
+ name: timecop
170
169
  prerelease: false
171
- version_requirements: !ruby/object:Gem::Requirement
170
+ requirement: &id011 !ruby/object:Gem::Requirement
172
171
  none: false
173
- requirements:
174
- - - ! '>='
175
- - !ruby/object:Gem::Version
176
- version: '0'
177
- - !ruby/object:Gem::Dependency
178
- name: webmock
179
- requirement: !ruby/object:Gem::Requirement
180
- none: false
181
- requirements:
182
- - - ! '>='
183
- - !ruby/object:Gem::Version
184
- version: '0'
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ hash: 3
176
+ segments:
177
+ - 0
178
+ version: "0"
185
179
  type: :development
180
+ version_requirements: *id011
181
+ - !ruby/object:Gem::Dependency
182
+ name: webmock
186
183
  prerelease: false
187
- version_requirements: !ruby/object:Gem::Requirement
184
+ requirement: &id012 !ruby/object:Gem::Requirement
188
185
  none: false
189
- requirements:
190
- - - ! '>='
191
- - !ruby/object:Gem::Version
192
- version: '0'
193
- - !ruby/object:Gem::Dependency
194
- name: yard
195
- requirement: !ruby/object:Gem::Requirement
196
- none: false
197
- requirements:
198
- - - ! '>='
199
- - !ruby/object:Gem::Version
200
- version: '0'
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ hash: 3
190
+ segments:
191
+ - 0
192
+ version: "0"
201
193
  type: :development
194
+ version_requirements: *id012
195
+ - !ruby/object:Gem::Dependency
196
+ name: yard
202
197
  prerelease: false
203
- version_requirements: !ruby/object:Gem::Requirement
198
+ requirement: &id013 !ruby/object:Gem::Requirement
204
199
  none: false
205
- requirements:
206
- - - ! '>='
207
- - !ruby/object:Gem::Version
208
- version: '0'
200
+ requirements:
201
+ - - ">="
202
+ - !ruby/object:Gem::Version
203
+ hash: 3
204
+ segments:
205
+ - 0
206
+ version: "0"
207
+ type: :development
208
+ version_requirements: *id013
209
209
  description: A Ruby interface to the Twitter API.
210
- email:
210
+ email:
211
211
  - nunemaker@gmail.com
212
212
  - wynn.netherland@gmail.com
213
213
  - sferik@gmail.com
214
214
  - steve.richert@gmail.com
215
215
  executables: []
216
+
216
217
  extensions: []
218
+
217
219
  extra_rdoc_files: []
218
- files:
220
+
221
+ files:
222
+ - .yardopts
219
223
  - CHANGELOG.md
224
+ - CONTRIBUTING.md
220
225
  - LICENSE.md
221
226
  - README.md
222
227
  - Rakefile
@@ -250,11 +255,8 @@ files:
250
255
  - lib/twitter/client.rb
251
256
  - lib/twitter/configurable.rb
252
257
  - lib/twitter/configuration.rb
253
- - lib/twitter/core_ext/array.rb
254
258
  - lib/twitter/core_ext/enumerable.rb
255
- - lib/twitter/core_ext/hash.rb
256
259
  - lib/twitter/core_ext/kernel.rb
257
- - lib/twitter/core_ext/string.rb
258
260
  - lib/twitter/creatable.rb
259
261
  - lib/twitter/cursor.rb
260
262
  - lib/twitter/default.rb
@@ -281,6 +283,7 @@ files:
281
283
  - lib/twitter/error/unauthorized.rb
282
284
  - lib/twitter/error/unprocessable_entity.rb
283
285
  - lib/twitter/error.rb
286
+ - lib/twitter/exceptable.rb
284
287
  - lib/twitter/factory.rb
285
288
  - lib/twitter/geo/point.rb
286
289
  - lib/twitter/geo/polygon.rb
@@ -331,8 +334,10 @@ files:
331
334
  - spec/fixtures/end_session.json
332
335
  - spec/fixtures/enhance_your_calm.text
333
336
  - spec/fixtures/favorites.json
337
+ - spec/fixtures/followers_list.json
334
338
  - spec/fixtures/following.json
335
339
  - spec/fixtures/forbidden.json
340
+ - spec/fixtures/friends_list.json
336
341
  - spec/fixtures/friendships.json
337
342
  - spec/fixtures/ids.json
338
343
  - spec/fixtures/ids_list.json
@@ -453,31 +458,41 @@ files:
453
458
  - spec/twitter/user_spec.rb
454
459
  - spec/twitter_spec.rb
455
460
  homepage: http://sferik.github.com/twitter/
456
- licenses:
461
+ licenses:
457
462
  - MIT
458
463
  post_install_message:
459
464
  rdoc_options: []
460
- require_paths:
465
+
466
+ require_paths:
461
467
  - lib
462
- required_ruby_version: !ruby/object:Gem::Requirement
468
+ required_ruby_version: !ruby/object:Gem::Requirement
463
469
  none: false
464
- requirements:
465
- - - ! '>='
466
- - !ruby/object:Gem::Version
467
- version: '0'
468
- required_rubygems_version: !ruby/object:Gem::Requirement
470
+ requirements:
471
+ - - ">="
472
+ - !ruby/object:Gem::Version
473
+ hash: 3
474
+ segments:
475
+ - 0
476
+ version: "0"
477
+ required_rubygems_version: !ruby/object:Gem::Requirement
469
478
  none: false
470
- requirements:
471
- - - ! '>='
472
- - !ruby/object:Gem::Version
479
+ requirements:
480
+ - - ">="
481
+ - !ruby/object:Gem::Version
482
+ hash: 23
483
+ segments:
484
+ - 1
485
+ - 3
486
+ - 6
473
487
  version: 1.3.6
474
488
  requirements: []
489
+
475
490
  rubyforge_project:
476
491
  rubygems_version: 1.8.24
477
492
  signing_key:
478
493
  specification_version: 3
479
494
  summary: A Ruby interface to the Twitter API.
480
- test_files:
495
+ test_files:
481
496
  - spec/fixtures/about_me.json
482
497
  - spec/fixtures/activity_summary.json
483
498
  - spec/fixtures/all.json
@@ -496,8 +511,10 @@ test_files:
496
511
  - spec/fixtures/end_session.json
497
512
  - spec/fixtures/enhance_your_calm.text
498
513
  - spec/fixtures/favorites.json
514
+ - spec/fixtures/followers_list.json
499
515
  - spec/fixtures/following.json
500
516
  - spec/fixtures/forbidden.json
517
+ - spec/fixtures/friends_list.json
501
518
  - spec/fixtures/friendships.json
502
519
  - spec/fixtures/ids.json
503
520
  - spec/fixtures/ids_list.json