twitter4j4r 0.1.1-java → 0.2.0-java

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 75619fb3ed44c06c97de390068fdeeeae5df9d61
4
+ data.tar.gz: cc245465d2cdc8d0f47f71009d919dbe145a45fb
5
+ SHA512:
6
+ metadata.gz: 0e7bae432138190cfaf4b7a7a90082b22b5634570d0f1f9ddaf591353f42bd011fb6af18c2d36df5fc6c554c524b1085da281c5e276d73d0f92c9693101314c4
7
+ data.tar.gz: 0d77fd47f618f9ad5669249aa55b2f3a605ac4ea0b7da193d01b7dec2a73ec8180c91a70e73a007eed03c89064886f61351cf5aeccf7ba481a79f0f8281dbee4
data/.gitignore CHANGED
@@ -1,17 +1,17 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
@@ -0,0 +1,7 @@
1
+ Version 0.2.0
2
+ =============
3
+ * Updated Twitter4j jars to 3.0.5
4
+ * Added access to the sample stream
5
+ * Added login with username and password
6
+ * Added follow to get tweets from users
7
+ * Added filter to get tweets from users and from keywords
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in twitter4j4r.gemspec
4
- gemspec
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in twitter4j4r.gemspec
4
+ gemspec
data/LICENSE CHANGED
@@ -1,22 +1,22 @@
1
- Copyright (c) 2012 Tobias Crawley
2
-
3
- MIT License
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- "Software"), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
1
+ Copyright (c) 2012 Tobias Crawley
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -1,87 +1,90 @@
1
- # Twitter4j4r
2
-
3
- A thin, woefully inadequate wrapper around [twitter4j](http://twitter4j.org/)
4
- that currently only supports the stream api with keywords. It will only work
5
- under JRuby.
6
-
7
- ## Installation
8
-
9
- Add this line to your application's Gemfile:
10
-
11
- gem 'twitter4j4r'
12
-
13
- And then execute:
14
-
15
- $ bundle
16
-
17
- Or install it yourself as:
18
-
19
- $ gem install twitter4j4r
20
-
21
- ## Usage
22
-
23
- The api is inspired by [tweetstream](https://github.com/intridea/tweetstream/):
24
-
25
- @client = Twitter4j4r::Client.new(:consumer_key => 'ABC123',
26
- :consumer_secret => 'ABC234',
27
- :access_token => 'ABC345',
28
- :access_secret => 'ABC456')
29
-
30
- @client.on_exception do |exception|
31
- puts "An error occurred - #{exception.message}"
32
- end
33
-
34
- @client.track('bieber') do |tweet|
35
- puts "#{tweet.user.screen_name} says #{tweet.text}"
36
- end
37
-
38
- # some time later
39
- @client.stop
40
-
41
- Blocks passed to `track` and `on_exception` can accept optionally accept
42
- a second argument that will be the client instance (similar to tweetstream):
43
-
44
- @client.track('bieber') do |tweet, client|
45
- if tweet.text =~ /marry me/
46
- puts "grody"
47
- client.stop
48
- else
49
- puts "#{tweet.user.screen_name} says #{tweet.text}"
50
- end
51
- end
52
-
53
- ## Why?
54
-
55
- Because tweetstream uses EventMachine, and EM doesn't support TLS
56
- under JRuby, so is unusable.
57
-
58
- Thanks to [Marek Jelen](https://github.com/marekjelen) for the inspiration.
59
-
60
- ## Isn't twitter4j4r a crappy name?
61
-
62
- Yes! But I was a hair away from naming it `twitter4j4r4u-and-me`, so take
63
- what you're given.
64
-
65
- ## Contributing
66
-
67
- 1. Fork it
68
- 2. Create your feature branch (`git checkout -b my-new-feature`)
69
- 3. Commit your changes (`git commit -am 'Added some feature'`)
70
- 4. Push to the branch (`git push origin my-new-feature`)
71
- 5. Create new Pull Request
72
-
73
- ## License
74
-
75
- Copyright 2012 Tobias Crawley
76
-
77
- Licensed under the Apache License, Version 2.0 (the "License");
78
- you may not use this file except in compliance with the License.
79
- You may obtain a copy of the License at
80
-
81
- http://www.apache.org/licenses/LICENSE-2.0
82
-
83
- Unless required by applicable law or agreed to in writing, software
84
- distributed under the License is distributed on an "AS IS" BASIS,
85
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
86
- See the License for the specific language governing permissions and
87
- limitations under the License.
1
+ # Twitter4j4r
2
+
3
+ A thin, woefully inadequate wrapper around [twitter4j](http://twitter4j.org/)
4
+ that currently only supports the stream api with keywords. It will only work
5
+ under JRuby.
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ gem 'twitter4j4r'
12
+
13
+ And then execute:
14
+
15
+ $ bundle
16
+
17
+ Or install it yourself as:
18
+
19
+ $ gem install twitter4j4r
20
+
21
+ ## Usage
22
+
23
+ The api is inspired by [tweetstream](https://github.com/intridea/tweetstream/):
24
+
25
+ @client = Twitter4j4r::Client.new(:consumer_key => 'ABC123',
26
+ :consumer_secret => 'ABC234',
27
+ :access_token => 'ABC345',
28
+ :access_secret => 'ABC456')
29
+
30
+ @client.on_exception do |exception|
31
+ puts "An error occurred - #{exception.message}"
32
+ end
33
+
34
+ @client.track('bieber') do |tweet|
35
+ puts "#{tweet.user.screen_name} says #{tweet.text}"
36
+ end
37
+
38
+ # some time later
39
+ @client.stop
40
+
41
+ Blocks passed to `track` and `on_exception` can accept optionally accept
42
+ a second argument that will be the client instance (similar to tweetstream):
43
+
44
+ @client.track('bieber') do |tweet, client|
45
+ if tweet.text =~ /marry me/
46
+ puts "grody"
47
+ client.stop
48
+ else
49
+ puts "#{tweet.user.screen_name} says #{tweet.text}"
50
+ end
51
+ end
52
+
53
+ ## Why?
54
+
55
+ Because tweetstream uses EventMachine, and EM doesn't support TLS
56
+ under JRuby, so is unusable.
57
+
58
+ Thanks to [Marek Jelen](https://github.com/marekjelen) for the inspiration.
59
+
60
+ ## Isn't twitter4j4r a crappy name?
61
+
62
+ Yes! But I was a hair away from naming it `twitter4j4r4u-and-me`, so take
63
+ what you're given.
64
+
65
+ ## Changelog
66
+ [changelog](CHANGELOG.md)
67
+
68
+ ## Contributing
69
+
70
+ 1. Fork it
71
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
72
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
73
+ 4. Push to the branch (`git push origin my-new-feature`)
74
+ 5. Create new Pull Request
75
+
76
+ ## License
77
+
78
+ Copyright 2012 Tobias Crawley
79
+
80
+ Licensed under the Apache License, Version 2.0 (the "License");
81
+ you may not use this file except in compliance with the License.
82
+ You may obtain a copy of the License at
83
+
84
+ http://www.apache.org/licenses/LICENSE-2.0
85
+
86
+ Unless required by applicable law or agreed to in writing, software
87
+ distributed under the License is distributed on an "AS IS" BASIS,
88
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
89
+ See the License for the specific language governing permissions and
90
+ limitations under the License.
data/Rakefile CHANGED
@@ -1,2 +1,2 @@
1
- #!/usr/bin/env rake
2
- require "bundler/gem_tasks"
1
+ #!/usr/bin/env rake
2
+ require "bundler/gem_tasks"
@@ -1,3 +1,3 @@
1
- require "twitter4j4r/client"
2
-
3
-
1
+ require "twitter4j4r/client"
2
+ require "twitter4j4r/config"
3
+
@@ -1,56 +1,76 @@
1
- require 'jar/twitter4j-core-2.2.6.jar'
2
- require 'jar/twitter4j-stream-2.2.6.jar'
3
- require 'jar/twitter4j-async-2.2.6.jar'
4
-
5
- require 'twitter4j4r/listener'
6
-
7
- module Twitter4j4r
8
- class Client
9
- def initialize(auth_map)
10
- @stream = Java::Twitter4j::TwitterStreamFactory.new(config(auth_map)).instance
11
- end
12
-
13
- def on_exception(&block)
14
- @exception_block = block
15
- self
16
- end
17
-
18
- def on_limitation(&block)
19
- @limitation_block = block
20
- self
21
- end
22
-
23
- def on_status(&block)
24
- @status_block = block
25
- self
26
- end
27
-
28
- def track(*terms, &block)
29
- on_status(&block)
30
- start(terms)
31
- end
32
-
33
- def start(search_terms)
34
- @stream.addListener(Listener.new(self, @status_block, @exception_block, @limitation_block))
35
- @stream.filter(Java::Twitter4j::FilterQuery.new(0, nil, search_terms.to_java(:string)))
36
- end
37
-
38
- def stop
39
- @stream.cleanUp
40
- @stream.shutdown
41
- end
42
-
43
- protected
44
-
45
- def config(auth_map)
46
- config = Java::Twitter4jConf::ConfigurationBuilder.new
47
- config.setDebugEnabled(true)
48
- config.setOAuthConsumerKey(auth_map[:consumer_key])
49
- config.setOAuthConsumerSecret(auth_map[:consumer_secret])
50
- config.setOAuthAccessToken(auth_map[:access_token])
51
- config.setOAuthAccessTokenSecret(auth_map[:access_secret])
52
- config.build
53
- end
54
-
55
- end
56
- end
1
+ require 'jar/twitter4j-core-3.0.5.jar'
2
+ require 'jar/twitter4j-stream-3.0.5.jar'
3
+ require 'jar/twitter4j-async-3.0.5.jar'
4
+
5
+ require 'twitter4j4r/listener'
6
+ require 'twitter4j4r/config'
7
+
8
+ module Twitter4j4r
9
+ class Client
10
+ def initialize(config)
11
+ unless config.is_a? Config
12
+ auth_map = config
13
+ config = Twitter4j4r::Config.new
14
+ config.consumer_key = auth_map[:consumer_key]
15
+ config.consumer_secret = auth_map[:consumer_secret]
16
+ config.access_token = auth_map[:access_token]
17
+ config.access_token_secret = auth_map[:access_secret]
18
+ end
19
+
20
+ build = config.build
21
+ @stream = Java::Twitter4j::TwitterStreamFactory.new(build).instance
22
+ @twitter = Java::Twitter4j::TwitterFactory.new(build).instance
23
+ end
24
+
25
+ def on_exception(&block)
26
+ @exception_block = block
27
+ self
28
+ end
29
+
30
+ def on_limitation(&block)
31
+ @limitation_block = block
32
+ self
33
+ end
34
+
35
+ def on_status(&block)
36
+ @status_block = block
37
+ self
38
+ end
39
+
40
+ def follow(twitter_ids, &block)
41
+ add_listener(&block)
42
+ @stream.filter(Java::Twitter4j::FilterQuery.new(0, twitter_ids.to_java(:long), nil))
43
+ end
44
+
45
+ def track(*search_terms, &block)
46
+ add_listener(&block)
47
+ @stream.filter(Java::Twitter4j::FilterQuery.new(0, nil, search_terms.to_java(:string)))
48
+ end
49
+
50
+ def filter(twitter_ids, *search_terms, &block)
51
+ add_listener(&block)
52
+ @stream.filter(Java::Twitter4j::FilterQuery.new(0,
53
+ twitter_ids.to_java(:long),
54
+ search_terms.to_java(:string)))
55
+ end
56
+
57
+ def lookup_users(user_names)
58
+ @twitter.lookup_users(user_names.to_java(:string))
59
+ end
60
+
61
+ def sample(&block)
62
+ add_listener(&block)
63
+ @stream.sample
64
+ end
65
+
66
+ def add_listener(&block)
67
+ on_status(&block)
68
+ @stream.addListener(Listener.new(self, @status_block, @exception_block, @limitation_block))
69
+ end
70
+
71
+ def stop
72
+ @stream.cleanUp
73
+ @stream.shutdown
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,38 @@
1
+ require 'jar/twitter4j-core-3.0.5.jar'
2
+
3
+ module Twitter4j4r
4
+ class Config
5
+ def initialize
6
+ @config = Java::Twitter4jConf::ConfigurationBuilder.new
7
+ @config.setDebugEnabled true
8
+ end
9
+
10
+ def consumer_key= consumer_key
11
+ @config.setOAuthConsumerKey consumer_key
12
+ end
13
+
14
+ def consumer_secret= consumer_secret
15
+ @config.setOAuthConsumerSecret consumer_secret
16
+ end
17
+
18
+ def access_token= access_token
19
+ @config.setOAuthAccessToken access_token
20
+ end
21
+
22
+ def access_token_secret= access_token_secret
23
+ @config.setOAuthAccessTokenSecret access_token_secret
24
+ end
25
+
26
+ def username= username
27
+ @config.setUser username
28
+ end
29
+
30
+ def password= password
31
+ @config.setPassword password
32
+ end
33
+
34
+ def build
35
+ @config.build
36
+ end
37
+ end
38
+ end
@@ -1,34 +1,34 @@
1
- require 'jar/twitter4j-stream-2.2.6.jar'
2
- require 'jruby/core_ext'
3
-
4
- module Twitter4j4r
5
- class Listener
6
- include Java::Twitter4j::StatusListener
7
-
8
- def initialize(client, status_block, exception_block, limitation_block)
9
- @client = client
10
- @status_block = status_block
11
- @exception_block = exception_block
12
- @limitation_block = limitation_block
13
- end
14
-
15
- def onStatus(status)
16
- call_block_with_client(@status_block, status)
17
- end
18
-
19
- def onException(exception)
20
- call_block_with_client(@exception_block, exception)
21
- end
22
-
23
- def onTrackLimitationNotice(limited_count)
24
- call_block_with_client(@limitation_block, limited_count)
25
- end
26
-
27
- protected
28
- def call_block_with_client(block, *args)
29
- block.call(*((args + [@client])[0, block.arity])) if block
30
- end
31
- end
32
- end
33
-
34
- Twitter4j4r::Listener.become_java!
1
+ require 'jar/twitter4j-stream-3.0.5.jar'
2
+ require 'jruby/core_ext'
3
+
4
+ module Twitter4j4r
5
+ class Listener
6
+ include Java::Twitter4j::StatusListener
7
+
8
+ def initialize(client, status_block, exception_block, limitation_block)
9
+ @client = client
10
+ @status_block = status_block
11
+ @exception_block = exception_block
12
+ @limitation_block = limitation_block
13
+ end
14
+
15
+ def onStatus(status)
16
+ call_block_with_client(@status_block, status)
17
+ end
18
+
19
+ def onException(exception)
20
+ call_block_with_client(@exception_block, exception)
21
+ end
22
+
23
+ def onTrackLimitationNotice(limited_count)
24
+ call_block_with_client(@limitation_block, limited_count)
25
+ end
26
+
27
+ protected
28
+ def call_block_with_client(block, *args)
29
+ block.call(*((args + [@client])[0, block.arity])) if block
30
+ end
31
+ end
32
+ end
33
+
34
+ Twitter4j4r::Listener.become_java!
@@ -1,3 +1,3 @@
1
- module Twitter4j4r
2
- VERSION = "0.1.1"
3
- end
1
+ module Twitter4j4r
2
+ VERSION = "0.2.0"
3
+ end
@@ -1,18 +1,18 @@
1
- # -*- encoding: utf-8 -*-
2
- require File.expand_path('../lib/twitter4j4r/version', __FILE__)
3
-
4
- Gem::Specification.new do |gem|
5
- gem.authors = ["Tobias Crawley", "Marek Jelen"]
6
- gem.email = ["toby@tcrawley.org"]
7
- gem.description = %q{A thin, woefully inadequate wrapper around http://twitter4j.org/}
8
- gem.summary = %q{A thin, woefully inadequate wrapper around http://twitter4j.org/ that only supports the stream api with keywords.}
9
- gem.homepage = "https://github.com/tobias/twitter4j4r"
10
-
11
- gem.platform = "java"
12
- gem.files = `git ls-files`.split($\)
13
- gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14
- gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15
- gem.name = "twitter4j4r"
16
- gem.require_paths = ["lib"]
17
- gem.version = Twitter4j4r::VERSION
18
- end
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/twitter4j4r/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Tobias Crawley", "Marek Jelen", "Gregory Ostermayr"]
6
+ gem.email = ["toby@tcrawley.org"]
7
+ gem.description = %q{A thin, woefully inadequate wrapper around http://twitter4j.org/}
8
+ gem.summary = %q{A thin, woefully inadequate wrapper around http://twitter4j.org/ that only supports the stream api with keywords.}
9
+ gem.homepage = "https://github.com/tobias/twitter4j4r"
10
+
11
+ gem.platform = "java"
12
+ gem.files = `git ls-files`.split($\)
13
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15
+ gem.name = "twitter4j4r"
16
+ gem.require_paths = ["lib"]
17
+ gem.version = Twitter4j4r::VERSION
18
+ end
metadata CHANGED
@@ -1,81 +1,60 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: twitter4j4r
3
- version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 1
9
- - 1
10
- version: 0.1.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
11
5
  platform: java
12
- authors:
6
+ authors:
13
7
  - Tobias Crawley
14
8
  - Marek Jelen
15
- autorequire:
9
+ - Gregory Ostermayr
10
+ autorequire:
16
11
  bindir: bin
17
12
  cert_chain: []
18
-
19
- date: 2012-11-07 00:00:00 -05:00
20
- default_executable:
13
+ date: 2014-02-06 00:00:00.000000000 Z
21
14
  dependencies: []
22
-
23
15
  description: A thin, woefully inadequate wrapper around http://twitter4j.org/
24
- email:
16
+ email:
25
17
  - toby@tcrawley.org
26
18
  executables: []
27
-
28
19
  extensions: []
29
-
30
20
  extra_rdoc_files: []
31
-
32
- files:
21
+ files:
33
22
  - .gitignore
23
+ - CHANGELOG.md
34
24
  - Gemfile
35
25
  - LICENSE
36
26
  - README.md
37
27
  - Rakefile
38
- - lib/jar/twitter4j-async-2.2.6.jar
39
- - lib/jar/twitter4j-core-2.2.6.jar
40
- - lib/jar/twitter4j-stream-2.2.6.jar
28
+ - lib/jar/twitter4j-async-3.0.5.jar
29
+ - lib/jar/twitter4j-core-3.0.5.jar
30
+ - lib/jar/twitter4j-stream-3.0.5.jar
41
31
  - lib/twitter4j4r.rb
42
32
  - lib/twitter4j4r/client.rb
33
+ - lib/twitter4j4r/config.rb
43
34
  - lib/twitter4j4r/listener.rb
44
35
  - lib/twitter4j4r/version.rb
45
36
  - twitter4j4r.gemspec
46
- has_rdoc: true
47
37
  homepage: https://github.com/tobias/twitter4j4r
48
38
  licenses: []
49
-
50
- post_install_message:
39
+ metadata: {}
40
+ post_install_message:
51
41
  rdoc_options: []
52
-
53
- require_paths:
42
+ require_paths:
54
43
  - lib
55
- required_ruby_version: !ruby/object:Gem::Requirement
56
- none: false
57
- requirements:
58
- - - ">="
59
- - !ruby/object:Gem::Version
60
- hash: 3
61
- segments:
62
- - 0
63
- version: "0"
64
- required_rubygems_version: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ">="
68
- - !ruby/object:Gem::Version
69
- hash: 3
70
- segments:
71
- - 0
72
- version: "0"
44
+ required_ruby_version: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - '>='
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ required_rubygems_version: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
73
54
  requirements: []
74
-
75
- rubyforge_project:
76
- rubygems_version: 1.3.7
77
- signing_key:
78
- specification_version: 3
55
+ rubyforge_project:
56
+ rubygems_version: 2.1.9
57
+ signing_key:
58
+ specification_version: 4
79
59
  summary: A thin, woefully inadequate wrapper around http://twitter4j.org/ that only supports the stream api with keywords.
80
60
  test_files: []
81
-