tweetstream 2.3.0 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of tweetstream might be problematic. Click here for more details.
- data/.rspec +2 -0
- data/.travis.yml +7 -1
- data/.yardopts +3 -1
- data/CHANGELOG.md +20 -10
- data/Gemfile +10 -1
- data/Rakefile +2 -10
- data/examples/oauth.rb +0 -1
- data/examples/sitestream.rb +0 -1
- data/examples/userstream.rb +0 -1
- data/gemfiles/twitter4_0.gemfile +13 -0
- data/gemfiles/twitter4_1.gemfile +13 -0
- data/gemfiles/twitter4_2.gemfile +13 -0
- data/gemfiles/twitter4_3.gemfile +13 -0
- data/lib/tweetstream/client.rb +10 -7
- data/lib/tweetstream/configuration.rb +0 -4
- data/lib/tweetstream/version.rb +1 -1
- data/spec/spec_helper.rb +8 -2
- data/spec/tweetstream/client_authentication_spec.rb +2 -2
- data/spec/tweetstream/client_site_stream_spec.rb +25 -25
- data/spec/tweetstream/client_spec.rb +96 -94
- data/spec/tweetstream/client_userstream_spec.rb +8 -8
- data/spec/tweetstream/daemon_spec.rb +10 -10
- data/spec/tweetstream/site_stream_client_spec.rb +42 -42
- data/spec/tweetstream_spec.rb +30 -30
- data/tweetstream.gemspec +23 -27
- metadata +61 -137
@@ -1,26 +1,26 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe TweetStream::Daemon do
|
4
|
-
describe
|
5
|
-
it
|
4
|
+
describe ".new" do
|
5
|
+
it "initializes with no arguments" do
|
6
6
|
client = TweetStream::Daemon.new
|
7
|
-
client.
|
7
|
+
expect(client).to be_kind_of(TweetStream::Client)
|
8
8
|
end
|
9
9
|
|
10
|
-
it
|
10
|
+
it "initializes with defaults" do
|
11
11
|
client = TweetStream::Daemon.new
|
12
|
-
client.app_name.
|
13
|
-
client.daemon_options.
|
12
|
+
expect(client.app_name).to eq(TweetStream::Daemon::DEFAULT_NAME)
|
13
|
+
expect(client.daemon_options).to eq(TweetStream::Daemon::DEFAULT_OPTIONS)
|
14
14
|
end
|
15
15
|
|
16
|
-
it
|
16
|
+
it "initializes with an app_name" do
|
17
17
|
client = TweetStream::Daemon.new('tweet_tracker')
|
18
|
-
client.app_name.
|
18
|
+
expect(client.app_name).to eq('tweet_tracker')
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
-
describe
|
23
|
-
it
|
22
|
+
describe "#start" do
|
23
|
+
it "starts the daemon" do
|
24
24
|
client = TweetStream::Daemon.new
|
25
25
|
Daemons.should_receive(:run_proc).once
|
26
26
|
client.track('intridea')
|
@@ -5,8 +5,8 @@ describe TweetStream::SiteStreamClient do
|
|
5
5
|
@keys = TweetStream::Configuration::OAUTH_OPTIONS_KEYS
|
6
6
|
end
|
7
7
|
|
8
|
-
describe
|
9
|
-
context
|
8
|
+
describe "initialization" do
|
9
|
+
context "with module configuration" do
|
10
10
|
|
11
11
|
before do
|
12
12
|
TweetStream.configure do |config|
|
@@ -20,15 +20,15 @@ describe TweetStream::SiteStreamClient do
|
|
20
20
|
TweetStream.reset
|
21
21
|
end
|
22
22
|
|
23
|
-
it "
|
23
|
+
it "inherits module configuration" do
|
24
24
|
api = TweetStream::SiteStreamClient.new('/config_uri')
|
25
25
|
@keys.each do |key|
|
26
|
-
api.send(key).
|
26
|
+
expect(api.send(key)).to eq(key)
|
27
27
|
end
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
31
|
-
context
|
31
|
+
context "with class configuration" do
|
32
32
|
before do
|
33
33
|
@configuration = {
|
34
34
|
:consumer_key => 'CK',
|
@@ -39,39 +39,39 @@ describe TweetStream::SiteStreamClient do
|
|
39
39
|
end
|
40
40
|
|
41
41
|
context "during initialization" do
|
42
|
-
it "
|
42
|
+
it "overrides module configuration" do
|
43
43
|
api = TweetStream::SiteStreamClient.new('/config_uri', @configuration)
|
44
44
|
@keys.each do |key|
|
45
|
-
api.send(key).
|
45
|
+
expect(api.send(key)).to eq(@configuration[key])
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
50
|
context "after initilization" do
|
51
|
-
it "
|
51
|
+
it "overrides module configuration after initialization" do
|
52
52
|
api = TweetStream::SiteStreamClient.new('/config_uri')
|
53
53
|
@configuration.each do |key, value|
|
54
54
|
api.send("#{key}=", value)
|
55
55
|
end
|
56
56
|
@keys.each do |key|
|
57
|
-
api.send(key).
|
57
|
+
expect(api.send(key)).to eq(@configuration[key])
|
58
58
|
end
|
59
59
|
end
|
60
60
|
end
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
|
-
describe
|
65
|
-
it
|
64
|
+
describe "#on_error" do
|
65
|
+
it "stores the on_error proc" do
|
66
66
|
@client = TweetStream::SiteStreamClient.new('/config_uri')
|
67
67
|
@client.on_error { puts 'hi' }
|
68
|
-
@client.on_error.
|
68
|
+
expect(@client.on_error).to be_kind_of(Proc)
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
72
|
-
describe
|
73
|
-
context
|
74
|
-
it
|
72
|
+
describe "#info" do
|
73
|
+
context "success" do
|
74
|
+
it "returns the information hash" do
|
75
75
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5f'
|
76
76
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
77
77
|
|
@@ -82,12 +82,12 @@ describe TweetStream::SiteStreamClient do
|
|
82
82
|
EM.run_block do
|
83
83
|
@client.info { |info| stream_info = info}
|
84
84
|
end
|
85
|
-
stream_info.
|
85
|
+
expect(stream_info).to be_kind_of(Hash)
|
86
86
|
end
|
87
87
|
end
|
88
88
|
|
89
|
-
context
|
90
|
-
it
|
89
|
+
context "failure" do
|
90
|
+
it "invokes the on_error callback" do
|
91
91
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5g'
|
92
92
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
93
93
|
|
@@ -99,15 +99,15 @@ describe TweetStream::SiteStreamClient do
|
|
99
99
|
@client.on_error { called = true }
|
100
100
|
@client.info { |info| info }
|
101
101
|
end
|
102
|
-
called.
|
102
|
+
expect(called).to be_true
|
103
103
|
end
|
104
104
|
|
105
105
|
end
|
106
106
|
end
|
107
107
|
|
108
|
-
describe
|
109
|
-
context
|
110
|
-
it
|
108
|
+
describe "#add_user" do
|
109
|
+
context "success" do
|
110
|
+
it "calls a block (if passed one)" do
|
111
111
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5f'
|
112
112
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
113
113
|
|
@@ -118,12 +118,12 @@ describe TweetStream::SiteStreamClient do
|
|
118
118
|
EM.run_block do
|
119
119
|
@client.add_user(12345) { called = true }
|
120
120
|
end
|
121
|
-
called.
|
121
|
+
expect(called).to be_true
|
122
122
|
end
|
123
123
|
end
|
124
124
|
|
125
|
-
context
|
126
|
-
it
|
125
|
+
context "failure" do
|
126
|
+
it "invokes the on_error callback" do
|
127
127
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5g'
|
128
128
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
129
129
|
|
@@ -135,11 +135,11 @@ describe TweetStream::SiteStreamClient do
|
|
135
135
|
@client.on_error { called = true }
|
136
136
|
@client.add_user(12345) { |info| info }
|
137
137
|
end
|
138
|
-
called.
|
138
|
+
expect(called).to be_true
|
139
139
|
end
|
140
140
|
end
|
141
141
|
|
142
|
-
it
|
142
|
+
it "accepts an array of user_ids" do
|
143
143
|
@client = TweetStream::SiteStreamClient.new('/config_uri')
|
144
144
|
conn = stub('Connection')
|
145
145
|
conn.should_receive(:post).
|
@@ -150,9 +150,9 @@ describe TweetStream::SiteStreamClient do
|
|
150
150
|
end
|
151
151
|
end
|
152
152
|
|
153
|
-
describe
|
154
|
-
context
|
155
|
-
it
|
153
|
+
describe "#remove_user" do
|
154
|
+
context "success" do
|
155
|
+
it "calls a block (if passed one)" do
|
156
156
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5f'
|
157
157
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
158
158
|
|
@@ -163,12 +163,12 @@ describe TweetStream::SiteStreamClient do
|
|
163
163
|
EM.run_block do
|
164
164
|
@client.remove_user(12345) { called = true }
|
165
165
|
end
|
166
|
-
called.
|
166
|
+
expect(called).to be_true
|
167
167
|
end
|
168
168
|
end
|
169
169
|
|
170
|
-
context
|
171
|
-
it
|
170
|
+
context "failure" do
|
171
|
+
it "invokes the on_error callback" do
|
172
172
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5g'
|
173
173
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
174
174
|
|
@@ -180,11 +180,11 @@ describe TweetStream::SiteStreamClient do
|
|
180
180
|
@client.on_error { called = true }
|
181
181
|
@client.remove_user(12345) { |info| info }
|
182
182
|
end
|
183
|
-
called.
|
183
|
+
expect(called).to be_true
|
184
184
|
end
|
185
185
|
end
|
186
186
|
|
187
|
-
it
|
187
|
+
it "accepts an array of user_ids" do
|
188
188
|
@client = TweetStream::SiteStreamClient.new('/config_uri')
|
189
189
|
conn = stub('Connection')
|
190
190
|
conn.should_receive(:post).
|
@@ -195,9 +195,9 @@ describe TweetStream::SiteStreamClient do
|
|
195
195
|
end
|
196
196
|
end
|
197
197
|
|
198
|
-
describe
|
199
|
-
context
|
200
|
-
it
|
198
|
+
describe "#friends_ids" do
|
199
|
+
context "success" do
|
200
|
+
it "returns the information hash" do
|
201
201
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5f'
|
202
202
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
203
203
|
|
@@ -208,12 +208,12 @@ describe TweetStream::SiteStreamClient do
|
|
208
208
|
EM.run_block do
|
209
209
|
@client.friends_ids(12345) { |info| stream_info = info }
|
210
210
|
end
|
211
|
-
stream_info.
|
211
|
+
expect(stream_info).to be_kind_of(Hash)
|
212
212
|
end
|
213
213
|
end
|
214
214
|
|
215
|
-
context
|
216
|
-
it
|
215
|
+
context "failure" do
|
216
|
+
it "invokes the on_error callback" do
|
217
217
|
@config_uri = '/2b/site/c/1_1_54e345d655ee3e8df359ac033648530bfbe26c5g'
|
218
218
|
@client = TweetStream::SiteStreamClient.new(@config_uri)
|
219
219
|
|
@@ -225,7 +225,7 @@ describe TweetStream::SiteStreamClient do
|
|
225
225
|
@client.on_error { called = true }
|
226
226
|
@client.friends_ids(12345) { |info| info }
|
227
227
|
end
|
228
|
-
called.
|
228
|
+
expect(called).to be_true
|
229
229
|
end
|
230
230
|
end
|
231
231
|
end
|
data/spec/tweetstream_spec.rb
CHANGED
@@ -23,97 +23,97 @@ describe TweetStream do
|
|
23
23
|
EM::Twitter::Client.stub!(:connect).and_return(@stream)
|
24
24
|
end
|
25
25
|
|
26
|
-
it "
|
27
|
-
|
26
|
+
it "returns the same results as a client" do
|
27
|
+
Yajl::Parser.should_receive(:parse).twice.and_return({})
|
28
28
|
@stream.should_receive(:each).and_yield(sample_tweets[0].to_json)
|
29
29
|
TweetStream.track('abc','def')
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
33
|
describe ".new" do
|
34
|
-
it "
|
35
|
-
TweetStream.new.
|
34
|
+
it "is a TweetStream::Client" do
|
35
|
+
expect(TweetStream.new).to be_a TweetStream::Client
|
36
36
|
end
|
37
37
|
end
|
38
38
|
|
39
|
-
describe
|
40
|
-
it "
|
41
|
-
TweetStream.respond_to?(:new, true).
|
39
|
+
describe ".respond_to?" do
|
40
|
+
it "takes an optional argument" do
|
41
|
+
expect(TweetStream.respond_to?(:new, true)).to be_true
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
45
|
describe ".username" do
|
46
|
-
it "
|
47
|
-
TweetStream.username.
|
46
|
+
it "returns the default username" do
|
47
|
+
expect(TweetStream.username).to eq(TweetStream::Configuration::DEFAULT_USERNAME)
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
51
|
describe ".username=" do
|
52
|
-
it "
|
52
|
+
it "sets the username" do
|
53
53
|
TweetStream.username = 'jack'
|
54
|
-
TweetStream.username.
|
54
|
+
expect(TweetStream.username).to eq('jack')
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
58
58
|
describe ".password" do
|
59
|
-
it "
|
60
|
-
TweetStream.password.
|
59
|
+
it "returns the default password" do
|
60
|
+
expect(TweetStream.password).to eq(TweetStream::Configuration::DEFAULT_PASSWORD)
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
64
|
describe ".password=" do
|
65
|
-
it "
|
65
|
+
it "sets the password" do
|
66
66
|
TweetStream.password = 'passw0rd'
|
67
|
-
TweetStream.password.
|
67
|
+
expect(TweetStream.password).to eq('passw0rd')
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
71
|
describe ".auth_method" do
|
72
72
|
it "shold return the default auth method" do
|
73
|
-
TweetStream.auth_method.
|
73
|
+
expect(TweetStream.auth_method).to eq(TweetStream::Configuration::DEFAULT_AUTH_METHOD)
|
74
74
|
end
|
75
75
|
end
|
76
76
|
|
77
77
|
describe ".auth_method=" do
|
78
|
-
it "
|
78
|
+
it "sets the auth method" do
|
79
79
|
TweetStream.auth_method = :basic
|
80
|
-
TweetStream.auth_method.
|
80
|
+
expect(TweetStream.auth_method).to eq(:basic)
|
81
81
|
end
|
82
82
|
end
|
83
83
|
|
84
84
|
describe ".user_agent" do
|
85
|
-
it "
|
86
|
-
TweetStream.user_agent.
|
85
|
+
it "returns the default user agent" do
|
86
|
+
expect(TweetStream.user_agent).to eq(TweetStream::Configuration::DEFAULT_USER_AGENT)
|
87
87
|
end
|
88
88
|
end
|
89
89
|
|
90
90
|
describe ".user_agent=" do
|
91
|
-
it "
|
91
|
+
it "sets the user_agent" do
|
92
92
|
TweetStream.user_agent = 'Custom User Agent'
|
93
|
-
TweetStream.user_agent.
|
93
|
+
expect(TweetStream.user_agent).to eq('Custom User Agent')
|
94
94
|
end
|
95
95
|
end
|
96
96
|
|
97
97
|
describe ".configure" do
|
98
98
|
TweetStream::Configuration::VALID_OPTIONS_KEYS.each do |key|
|
99
|
-
it "
|
99
|
+
it "sets the #{key}" do
|
100
100
|
TweetStream.configure do |config|
|
101
101
|
config.send("#{key}=", key)
|
102
|
-
TweetStream.send(key).
|
102
|
+
expect(TweetStream.send(key)).to eq(key)
|
103
103
|
end
|
104
104
|
end
|
105
105
|
end
|
106
106
|
end
|
107
107
|
|
108
|
-
describe
|
109
|
-
it
|
110
|
-
TweetStream.options.
|
108
|
+
describe ".options" do
|
109
|
+
it "returns the configuration as a hash" do
|
110
|
+
expect(TweetStream.options).to be_kind_of(Hash)
|
111
111
|
end
|
112
112
|
end
|
113
113
|
|
114
|
-
describe
|
115
|
-
it
|
116
|
-
TweetStream.oauth_options.
|
114
|
+
describe ".oauth_options" do
|
115
|
+
it "returns the oauth configuration as a hash" do
|
116
|
+
expect(TweetStream.oauth_options).to be_kind_of(Hash)
|
117
117
|
end
|
118
118
|
end
|
119
119
|
|
data/tweetstream.gemspec
CHANGED
@@ -1,35 +1,31 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
require File.expand_path('../lib/tweetstream/version', __FILE__)
|
3
3
|
|
4
|
-
Gem::Specification.new do |
|
5
|
-
|
6
|
-
|
4
|
+
Gem::Specification.new do |spec|
|
5
|
+
spec.name = 'tweetstream'
|
6
|
+
spec.version = TweetStream::VERSION
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
8
|
+
spec.authors = ['Michael Bleigh', 'Steve Agalloco']
|
9
|
+
spec.email = ['michael@intridea.com', 'steve.agalloco@gmail.com']
|
10
|
+
spec.description = %q{TweetStream is a simple wrapper for consuming the Twitter Streaming API.}
|
11
|
+
spec.summary = spec.description
|
12
|
+
spec.homepage = 'http://github.com/intridea/tweetstream'
|
13
|
+
spec.licenses = ['MIT']
|
13
14
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
spec.add_dependency 'daemons', '~> 1.1'
|
16
|
+
spec.add_dependency 'em-twitter', '~> 0.2'
|
17
|
+
spec.add_dependency 'em-http-request', '~> 1.0.2'
|
18
|
+
spec.add_dependency 'twitter', '~> 4.0'
|
19
|
+
spec.add_dependency 'yajl-ruby', '~> 1.1'
|
19
20
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
s.add_development_dependency 'rspec'
|
26
|
-
s.add_development_dependency 'simplecov'
|
27
|
-
s.add_development_dependency 'webmock', '>= 1.8.8'
|
28
|
-
s.add_development_dependency 'yajl-ruby'
|
29
|
-
s.add_development_dependency 'yard'
|
21
|
+
spec.add_development_dependency 'guard-rspec'
|
22
|
+
spec.add_development_dependency 'kramdown'
|
23
|
+
spec.add_development_dependency 'pry'
|
24
|
+
spec.add_development_dependency 'pry-debugger'
|
25
|
+
spec.add_development_dependency 'simplecov'
|
30
26
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
27
|
+
spec.files = `git ls-files`.split("\n")
|
28
|
+
spec.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
29
|
+
spec.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
30
|
+
spec.require_paths = ["lib"]
|
35
31
|
end
|
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tweetstream
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.0
|
5
4
|
prerelease:
|
5
|
+
version: 2.4.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Michael Bleigh
|
@@ -10,250 +10,169 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-
|
13
|
+
date: 2012-12-16 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
|
-
|
17
|
-
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
16
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
17
|
requirements:
|
20
18
|
- - ~>
|
21
19
|
- !ruby/object:Gem::Version
|
22
|
-
version: '
|
20
|
+
version: '1.1'
|
21
|
+
none: false
|
22
|
+
name: daemons
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
|
26
|
-
none: false
|
25
|
+
requirement: !ruby/object:Gem::Requirement
|
27
26
|
requirements:
|
28
27
|
- - ~>
|
29
28
|
- !ruby/object:Gem::Version
|
30
|
-
version: '
|
31
|
-
- !ruby/object:Gem::Dependency
|
32
|
-
name: twitter
|
33
|
-
requirement: !ruby/object:Gem::Requirement
|
29
|
+
version: '1.1'
|
34
30
|
none: false
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
version_requirements: !ruby/object:Gem::Requirement
|
35
33
|
requirements:
|
36
34
|
- - ~>
|
37
35
|
- !ruby/object:Gem::Version
|
38
|
-
version: '
|
36
|
+
version: '0.2'
|
37
|
+
none: false
|
38
|
+
name: em-twitter
|
39
39
|
type: :runtime
|
40
40
|
prerelease: false
|
41
|
-
|
42
|
-
none: false
|
41
|
+
requirement: !ruby/object:Gem::Requirement
|
43
42
|
requirements:
|
44
43
|
- - ~>
|
45
44
|
- !ruby/object:Gem::Version
|
46
|
-
version: '
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: daemons
|
49
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
+
version: '0.2'
|
50
46
|
none: false
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
49
|
requirements:
|
52
50
|
- - ~>
|
53
51
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
52
|
+
version: 1.0.2
|
53
|
+
none: false
|
54
|
+
name: em-http-request
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
|
58
|
-
none: false
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
59
58
|
requirements:
|
60
59
|
- - ~>
|
61
60
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
63
|
-
- !ruby/object:Gem::Dependency
|
64
|
-
name: multi_json
|
65
|
-
requirement: !ruby/object:Gem::Requirement
|
61
|
+
version: 1.0.2
|
66
62
|
none: false
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
65
|
requirements:
|
68
66
|
- - ~>
|
69
67
|
- !ruby/object:Gem::Version
|
70
|
-
version: '
|
68
|
+
version: '4.0'
|
69
|
+
none: false
|
70
|
+
name: twitter
|
71
71
|
type: :runtime
|
72
72
|
prerelease: false
|
73
|
-
|
74
|
-
none: false
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
75
74
|
requirements:
|
76
75
|
- - ~>
|
77
76
|
- !ruby/object:Gem::Version
|
78
|
-
version: '
|
79
|
-
- !ruby/object:Gem::Dependency
|
80
|
-
name: em-http-request
|
81
|
-
requirement: !ruby/object:Gem::Requirement
|
77
|
+
version: '4.0'
|
82
78
|
none: false
|
79
|
+
- !ruby/object:Gem::Dependency
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
81
|
requirements:
|
84
82
|
- - ~>
|
85
83
|
- !ruby/object:Gem::Version
|
86
|
-
version: 1.
|
84
|
+
version: '1.1'
|
85
|
+
none: false
|
86
|
+
name: yajl-ruby
|
87
87
|
type: :runtime
|
88
88
|
prerelease: false
|
89
|
-
|
90
|
-
none: false
|
89
|
+
requirement: !ruby/object:Gem::Requirement
|
91
90
|
requirements:
|
92
91
|
- - ~>
|
93
92
|
- !ruby/object:Gem::Version
|
94
|
-
version: 1.
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: guard-rspec
|
97
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
+
version: '1.1'
|
98
94
|
none: false
|
99
|
-
|
100
|
-
- - ! '>='
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: '0'
|
103
|
-
type: :development
|
104
|
-
prerelease: false
|
95
|
+
- !ruby/object:Gem::Dependency
|
105
96
|
version_requirements: !ruby/object:Gem::Requirement
|
106
|
-
none: false
|
107
97
|
requirements:
|
108
98
|
- - ! '>='
|
109
99
|
- !ruby/object:Gem::Version
|
110
100
|
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: json
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
101
|
none: false
|
115
|
-
|
116
|
-
- - ! '>='
|
117
|
-
- !ruby/object:Gem::Version
|
118
|
-
version: '0'
|
102
|
+
name: guard-rspec
|
119
103
|
type: :development
|
120
104
|
prerelease: false
|
121
|
-
version_requirements: !ruby/object:Gem::Requirement
|
122
|
-
none: false
|
123
|
-
requirements:
|
124
|
-
- - ! '>='
|
125
|
-
- !ruby/object:Gem::Version
|
126
|
-
version: '0'
|
127
|
-
- !ruby/object:Gem::Dependency
|
128
|
-
name: pry
|
129
105
|
requirement: !ruby/object:Gem::Requirement
|
130
|
-
none: false
|
131
106
|
requirements:
|
132
107
|
- - ! '>='
|
133
108
|
- !ruby/object:Gem::Version
|
134
109
|
version: '0'
|
135
|
-
type: :development
|
136
|
-
prerelease: false
|
137
|
-
version_requirements: !ruby/object:Gem::Requirement
|
138
110
|
none: false
|
139
|
-
requirements:
|
140
|
-
- - ! '>='
|
141
|
-
- !ruby/object:Gem::Version
|
142
|
-
version: '0'
|
143
111
|
- !ruby/object:Gem::Dependency
|
144
|
-
name: rake
|
145
|
-
requirement: !ruby/object:Gem::Requirement
|
146
|
-
none: false
|
147
|
-
requirements:
|
148
|
-
- - ! '>='
|
149
|
-
- !ruby/object:Gem::Version
|
150
|
-
version: '0'
|
151
|
-
type: :development
|
152
|
-
prerelease: false
|
153
112
|
version_requirements: !ruby/object:Gem::Requirement
|
154
|
-
none: false
|
155
113
|
requirements:
|
156
114
|
- - ! '>='
|
157
115
|
- !ruby/object:Gem::Version
|
158
116
|
version: '0'
|
159
|
-
- !ruby/object:Gem::Dependency
|
160
|
-
name: rdiscount
|
161
|
-
requirement: !ruby/object:Gem::Requirement
|
162
117
|
none: false
|
163
|
-
|
164
|
-
- - ! '>='
|
165
|
-
- !ruby/object:Gem::Version
|
166
|
-
version: '0'
|
118
|
+
name: kramdown
|
167
119
|
type: :development
|
168
120
|
prerelease: false
|
169
|
-
|
170
|
-
none: false
|
121
|
+
requirement: !ruby/object:Gem::Requirement
|
171
122
|
requirements:
|
172
123
|
- - ! '>='
|
173
124
|
- !ruby/object:Gem::Version
|
174
125
|
version: '0'
|
175
|
-
- !ruby/object:Gem::Dependency
|
176
|
-
name: rspec
|
177
|
-
requirement: !ruby/object:Gem::Requirement
|
178
126
|
none: false
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
version_requirements: !ruby/object:Gem::Requirement
|
179
129
|
requirements:
|
180
130
|
- - ! '>='
|
181
131
|
- !ruby/object:Gem::Version
|
182
132
|
version: '0'
|
133
|
+
none: false
|
134
|
+
name: pry
|
183
135
|
type: :development
|
184
136
|
prerelease: false
|
185
|
-
version_requirements: !ruby/object:Gem::Requirement
|
186
|
-
none: false
|
187
|
-
requirements:
|
188
|
-
- - ! '>='
|
189
|
-
- !ruby/object:Gem::Version
|
190
|
-
version: '0'
|
191
|
-
- !ruby/object:Gem::Dependency
|
192
|
-
name: simplecov
|
193
137
|
requirement: !ruby/object:Gem::Requirement
|
194
|
-
none: false
|
195
138
|
requirements:
|
196
139
|
- - ! '>='
|
197
140
|
- !ruby/object:Gem::Version
|
198
141
|
version: '0'
|
199
|
-
type: :development
|
200
|
-
prerelease: false
|
201
|
-
version_requirements: !ruby/object:Gem::Requirement
|
202
142
|
none: false
|
143
|
+
- !ruby/object:Gem::Dependency
|
144
|
+
version_requirements: !ruby/object:Gem::Requirement
|
203
145
|
requirements:
|
204
146
|
- - ! '>='
|
205
147
|
- !ruby/object:Gem::Version
|
206
148
|
version: '0'
|
207
|
-
- !ruby/object:Gem::Dependency
|
208
|
-
name: webmock
|
209
|
-
requirement: !ruby/object:Gem::Requirement
|
210
149
|
none: false
|
211
|
-
|
212
|
-
- - ! '>='
|
213
|
-
- !ruby/object:Gem::Version
|
214
|
-
version: 1.8.8
|
150
|
+
name: pry-debugger
|
215
151
|
type: :development
|
216
152
|
prerelease: false
|
217
|
-
version_requirements: !ruby/object:Gem::Requirement
|
218
|
-
none: false
|
219
|
-
requirements:
|
220
|
-
- - ! '>='
|
221
|
-
- !ruby/object:Gem::Version
|
222
|
-
version: 1.8.8
|
223
|
-
- !ruby/object:Gem::Dependency
|
224
|
-
name: yajl-ruby
|
225
153
|
requirement: !ruby/object:Gem::Requirement
|
226
|
-
none: false
|
227
154
|
requirements:
|
228
155
|
- - ! '>='
|
229
156
|
- !ruby/object:Gem::Version
|
230
157
|
version: '0'
|
231
|
-
type: :development
|
232
|
-
prerelease: false
|
233
|
-
version_requirements: !ruby/object:Gem::Requirement
|
234
158
|
none: false
|
235
|
-
requirements:
|
236
|
-
- - ! '>='
|
237
|
-
- !ruby/object:Gem::Version
|
238
|
-
version: '0'
|
239
159
|
- !ruby/object:Gem::Dependency
|
240
|
-
|
241
|
-
requirement: !ruby/object:Gem::Requirement
|
242
|
-
none: false
|
160
|
+
version_requirements: !ruby/object:Gem::Requirement
|
243
161
|
requirements:
|
244
162
|
- - ! '>='
|
245
163
|
- !ruby/object:Gem::Version
|
246
164
|
version: '0'
|
165
|
+
none: false
|
166
|
+
name: simplecov
|
247
167
|
type: :development
|
248
168
|
prerelease: false
|
249
|
-
|
250
|
-
none: false
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
251
170
|
requirements:
|
252
171
|
- - ! '>='
|
253
172
|
- !ruby/object:Gem::Version
|
254
173
|
version: '0'
|
255
|
-
|
256
|
-
|
174
|
+
none: false
|
175
|
+
description: TweetStream is a simple wrapper for consuming the Twitter Streaming API.
|
257
176
|
email:
|
258
177
|
- michael@intridea.com
|
259
178
|
- steve.agalloco@gmail.com
|
@@ -278,6 +197,10 @@ files:
|
|
278
197
|
- examples/oauth.rb
|
279
198
|
- examples/sitestream.rb
|
280
199
|
- examples/userstream.rb
|
200
|
+
- gemfiles/twitter4_0.gemfile
|
201
|
+
- gemfiles/twitter4_1.gemfile
|
202
|
+
- gemfiles/twitter4_2.gemfile
|
203
|
+
- gemfiles/twitter4_3.gemfile
|
281
204
|
- lib/tweetstream.rb
|
282
205
|
- lib/tweetstream/client.rb
|
283
206
|
- lib/tweetstream/configuration.rb
|
@@ -305,23 +228,24 @@ files:
|
|
305
228
|
- spec/tweetstream_spec.rb
|
306
229
|
- tweetstream.gemspec
|
307
230
|
homepage: http://github.com/intridea/tweetstream
|
308
|
-
licenses:
|
231
|
+
licenses:
|
232
|
+
- MIT
|
309
233
|
post_install_message:
|
310
234
|
rdoc_options: []
|
311
235
|
require_paths:
|
312
236
|
- lib
|
313
237
|
required_ruby_version: !ruby/object:Gem::Requirement
|
314
|
-
none: false
|
315
238
|
requirements:
|
316
239
|
- - ! '>='
|
317
240
|
- !ruby/object:Gem::Version
|
318
241
|
version: '0'
|
319
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
320
242
|
none: false
|
243
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
321
244
|
requirements:
|
322
245
|
- - ! '>='
|
323
246
|
- !ruby/object:Gem::Version
|
324
247
|
version: '0'
|
248
|
+
none: false
|
325
249
|
requirements: []
|
326
250
|
rubyforge_project:
|
327
251
|
rubygems_version: 1.8.23
|