flamethrower 0.2.0 → 0.3.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.
- data/.gitignore +4 -0
- data/VERSION +1 -1
- data/flamethrower.gemspec +65 -75
- data/lib/flamethrower/campfire/room.rb +26 -2
- data/lib/flamethrower/dispatcher.rb +16 -5
- data/lib/flamethrower/irc/codes.rb +8 -6
- data/lib/flamethrower/irc/commands.rb +8 -0
- data/lib/flamethrower/irc/user.rb +1 -0
- data/spec/spec_helper.rb +1 -2
- data/spec/unit/campfire/room_spec.rb +38 -0
- data/spec/unit/dispatcher_spec.rb +21 -0
- metadata +14 -69
data/.gitignore
ADDED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.3.0
|
data/flamethrower.gemspec
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
# Generated by jeweler
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{flamethrower}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.3.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Blake Smith"]
|
12
|
-
s.date = %q{2011-01-
|
12
|
+
s.date = %q{2011-01-20}
|
13
13
|
s.default_executable = %q{flamethrower}
|
14
14
|
s.description = %q{Flamethrower gives you the power to use your awesome irc client to talk in your campfire rooms.}
|
15
15
|
s.email = %q{blakesmith0@gmail.com}
|
@@ -18,73 +18,75 @@ Gem::Specification.new do |s|
|
|
18
18
|
"README.rdoc"
|
19
19
|
]
|
20
20
|
s.files = [
|
21
|
-
".
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
21
|
+
".gitignore",
|
22
|
+
".rspec",
|
23
|
+
"Gemfile",
|
24
|
+
"Gemfile.lock",
|
25
|
+
"MIT-LICENSE",
|
26
|
+
"README.rdoc",
|
27
|
+
"Rakefile",
|
28
|
+
"VERSION",
|
29
|
+
"bin/flamethrower",
|
30
|
+
"flamethrower.gemspec",
|
31
|
+
"lib/flamethrower.rb",
|
32
|
+
"lib/flamethrower/campfire/connection.rb",
|
33
|
+
"lib/flamethrower/campfire/message.rb",
|
34
|
+
"lib/flamethrower/campfire/rest_api.rb",
|
35
|
+
"lib/flamethrower/campfire/room.rb",
|
36
|
+
"lib/flamethrower/campfire/user.rb",
|
37
|
+
"lib/flamethrower/dispatcher.rb",
|
38
|
+
"lib/flamethrower/irc/channel.rb",
|
39
|
+
"lib/flamethrower/irc/codes.rb",
|
40
|
+
"lib/flamethrower/irc/commands.rb",
|
41
|
+
"lib/flamethrower/irc/message.rb",
|
42
|
+
"lib/flamethrower/irc/user.rb",
|
43
|
+
"lib/flamethrower/server.rb",
|
44
|
+
"lib/flamethrower/server/event_server.rb",
|
45
|
+
"lib/flamethrower/server/mock_server.rb",
|
46
|
+
"spec/fixtures/enter_message.json",
|
47
|
+
"spec/fixtures/kick_message.json",
|
48
|
+
"spec/fixtures/leave_message.json",
|
49
|
+
"spec/fixtures/message.json",
|
50
|
+
"spec/fixtures/paste_message.json",
|
51
|
+
"spec/fixtures/paste_message_with_pound.json",
|
52
|
+
"spec/fixtures/room.json",
|
53
|
+
"spec/fixtures/room_update.json",
|
54
|
+
"spec/fixtures/rooms.json",
|
55
|
+
"spec/fixtures/speak_message.json",
|
56
|
+
"spec/fixtures/streaming_message.json",
|
57
|
+
"spec/fixtures/timestamp_message.json",
|
58
|
+
"spec/fixtures/upload_message.json",
|
59
|
+
"spec/fixtures/upload_url_sample",
|
60
|
+
"spec/fixtures/user.json",
|
61
|
+
"spec/spec_helper.rb",
|
62
|
+
"spec/unit/campfire/connection_spec.rb",
|
63
|
+
"spec/unit/campfire/message_spec.rb",
|
64
|
+
"spec/unit/campfire/room_spec.rb",
|
65
|
+
"spec/unit/campfire/user_spec.rb",
|
66
|
+
"spec/unit/dispatcher_spec.rb",
|
67
|
+
"spec/unit/irc/channel_spec.rb",
|
68
|
+
"spec/unit/irc/message_spec.rb",
|
69
|
+
"spec/unit/irc/user_spec.rb",
|
70
|
+
"spec/unit/server/event_server_spec.rb",
|
71
|
+
"spec/unit/server_spec.rb"
|
71
72
|
]
|
72
73
|
s.homepage = %q{http://github.com/blakesmith/flamethrower}
|
74
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
73
75
|
s.require_paths = ["lib"]
|
74
76
|
s.rubygems_version = %q{1.3.7}
|
75
77
|
s.summary = %q{Campfire IRC gateway}
|
76
78
|
s.test_files = [
|
77
79
|
"spec/spec_helper.rb",
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
80
|
+
"spec/unit/campfire/connection_spec.rb",
|
81
|
+
"spec/unit/campfire/message_spec.rb",
|
82
|
+
"spec/unit/campfire/room_spec.rb",
|
83
|
+
"spec/unit/campfire/user_spec.rb",
|
84
|
+
"spec/unit/dispatcher_spec.rb",
|
85
|
+
"spec/unit/irc/channel_spec.rb",
|
86
|
+
"spec/unit/irc/message_spec.rb",
|
87
|
+
"spec/unit/irc/user_spec.rb",
|
88
|
+
"spec/unit/server/event_server_spec.rb",
|
89
|
+
"spec/unit/server_spec.rb"
|
88
90
|
]
|
89
91
|
|
90
92
|
if s.respond_to? :specification_version then
|
@@ -92,29 +94,17 @@ Gem::Specification.new do |s|
|
|
92
94
|
s.specification_version = 3
|
93
95
|
|
94
96
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
95
|
-
s.add_runtime_dependency(%q<eventmachine>, [">= 0"])
|
96
|
-
s.add_runtime_dependency(%q<twitter-stream>, [">= 0"])
|
97
|
-
s.add_runtime_dependency(%q<json>, [">= 0"])
|
98
|
-
s.add_runtime_dependency(%q<em-http-request>, [">= 0"])
|
99
97
|
s.add_runtime_dependency(%q<eventmachine>, [">= 0.12.10"])
|
100
98
|
s.add_runtime_dependency(%q<json>, [">= 0"])
|
101
99
|
s.add_runtime_dependency(%q<em-http-request>, [">= 0"])
|
102
100
|
s.add_runtime_dependency(%q<twitter-stream>, [">= 0"])
|
103
101
|
else
|
104
|
-
s.add_dependency(%q<eventmachine>, [">= 0"])
|
105
|
-
s.add_dependency(%q<twitter-stream>, [">= 0"])
|
106
|
-
s.add_dependency(%q<json>, [">= 0"])
|
107
|
-
s.add_dependency(%q<em-http-request>, [">= 0"])
|
108
102
|
s.add_dependency(%q<eventmachine>, [">= 0.12.10"])
|
109
103
|
s.add_dependency(%q<json>, [">= 0"])
|
110
104
|
s.add_dependency(%q<em-http-request>, [">= 0"])
|
111
105
|
s.add_dependency(%q<twitter-stream>, [">= 0"])
|
112
106
|
end
|
113
107
|
else
|
114
|
-
s.add_dependency(%q<eventmachine>, [">= 0"])
|
115
|
-
s.add_dependency(%q<twitter-stream>, [">= 0"])
|
116
|
-
s.add_dependency(%q<json>, [">= 0"])
|
117
|
-
s.add_dependency(%q<em-http-request>, [">= 0"])
|
118
108
|
s.add_dependency(%q<eventmachine>, [">= 0.12.10"])
|
119
109
|
s.add_dependency(%q<json>, [">= 0"])
|
120
110
|
s.add_dependency(%q<em-http-request>, [">= 0"])
|
@@ -48,19 +48,30 @@ module Flamethrower
|
|
48
48
|
http.callback do
|
49
49
|
case http.response_header.status
|
50
50
|
when 200
|
51
|
+
old_users = @users
|
51
52
|
@users = []
|
52
53
|
json = JSON.parse(http.response)
|
53
54
|
json['room']['users'].each do |user|
|
54
55
|
@users << Flamethrower::Campfire::User.new(user)
|
55
56
|
end
|
57
|
+
resolve_renames(old_users, @users)
|
56
58
|
send_info unless @room_info_sent
|
57
59
|
@room_info_sent = true
|
58
60
|
end
|
59
61
|
end
|
60
62
|
end
|
61
63
|
|
64
|
+
def resolve_renames(old_users, new_users)
|
65
|
+
old_users.each do |old_user|
|
66
|
+
user = new_users.detect {|new_user| new_user.number == old_user.number}
|
67
|
+
unless old_user.name == user.name
|
68
|
+
@server.send_rename(old_user.to_irc.nickname, user.to_irc.nickname)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
62
73
|
def say(body, message_type='TextMessage')
|
63
|
-
params = {'body' => body, 'type' => message_type}
|
74
|
+
params = {'body' => translate_nicknames(body), 'type' => message_type}
|
64
75
|
@outbound_messages << Flamethrower::Campfire::Message.new(params)
|
65
76
|
end
|
66
77
|
|
@@ -73,9 +84,10 @@ module Flamethrower
|
|
73
84
|
end
|
74
85
|
|
75
86
|
def stop
|
76
|
-
@
|
87
|
+
@stream.stop if @stream
|
77
88
|
EventMachine.cancel_timer(@polling_timer)
|
78
89
|
EventMachine.cancel_timer(@periodic_timer)
|
90
|
+
@room_alive = false
|
79
91
|
end
|
80
92
|
|
81
93
|
def poll
|
@@ -196,6 +208,18 @@ module Flamethrower
|
|
196
208
|
channel.topic = topic.gsub("\n", "\s")
|
197
209
|
end
|
198
210
|
end
|
211
|
+
|
212
|
+
private
|
213
|
+
|
214
|
+
def translate_nicknames(message_body)
|
215
|
+
@users.each do |user|
|
216
|
+
if message_body.include?(user.to_irc.nickname)
|
217
|
+
message_body.gsub!(user.to_irc.nickname, user.name)
|
218
|
+
end
|
219
|
+
end
|
220
|
+
message_body
|
221
|
+
end
|
222
|
+
|
199
223
|
end
|
200
224
|
end
|
201
225
|
end
|
@@ -8,7 +8,7 @@ module Flamethrower
|
|
8
8
|
|
9
9
|
def handle_message(message)
|
10
10
|
method = "handle_#{message.command.downcase}"
|
11
|
-
send(method, message) if protected_methods.include?(method)
|
11
|
+
send(method, message) if protected_methods.map(&:to_s).include?(method)
|
12
12
|
end
|
13
13
|
|
14
14
|
private
|
@@ -25,19 +25,19 @@ module Flamethrower
|
|
25
25
|
protected
|
26
26
|
|
27
27
|
def handle_privmsg(message)
|
28
|
-
name, body =
|
28
|
+
name, body = message.parameters
|
29
29
|
find_channel_or_error(name) do |channel|
|
30
30
|
channel.to_campfire.say(body)
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
34
|
def handle_ping(message)
|
35
|
-
hostname =
|
35
|
+
hostname = message.parameters.first
|
36
36
|
server.send_pong(hostname)
|
37
37
|
end
|
38
38
|
|
39
39
|
def handle_user(message)
|
40
|
-
username, hostname, servername, realname =
|
40
|
+
username, hostname, servername, realname = message.parameters
|
41
41
|
server.current_user.username = username unless server.current_user.username
|
42
42
|
server.current_user.hostname = hostname unless server.current_user.hostname
|
43
43
|
server.current_user.servername = servername unless server.current_user.servername
|
@@ -48,7 +48,7 @@ module Flamethrower
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def handle_nick(message)
|
51
|
-
nickname =
|
51
|
+
nickname = message.parameters.first
|
52
52
|
server.current_user.nickname = nickname
|
53
53
|
if server.current_user.nick_set? && server.current_user.user_set?
|
54
54
|
server.after_connect
|
@@ -84,6 +84,17 @@ module Flamethrower
|
|
84
84
|
end
|
85
85
|
end
|
86
86
|
|
87
|
+
def handle_away(message)
|
88
|
+
away_message = message.parameters.first
|
89
|
+
if away_message.empty?
|
90
|
+
server.current_user.away_message = nil
|
91
|
+
server.send_unaway
|
92
|
+
else
|
93
|
+
server.current_user.away_message = away_message
|
94
|
+
server.send_nowaway
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
87
98
|
def handle_who(message)
|
88
99
|
find_channel_or_error(message.parameters.first) do |channel|
|
89
100
|
server.send_who(channel)
|
@@ -1,16 +1,18 @@
|
|
1
1
|
module Flamethrower
|
2
2
|
module Irc
|
3
3
|
module Codes
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
RPL_UMODEIS = 221
|
5
|
+
RPL_UNAWAY = 305
|
6
|
+
RPL_NOWAWAY = 306
|
7
|
+
RPL_ENDOFWHO = 315
|
8
|
+
RPL_CHANNELMODEIS = 324
|
7
9
|
RPL_TOPIC = 332
|
8
10
|
RPL_WHOREPLY = 352
|
9
|
-
RPL_ENDOFWHO = 315
|
10
11
|
RPL_NAMEREPLY = 353
|
11
12
|
RPL_ENDOFNAMES = 366
|
12
|
-
|
13
|
-
|
13
|
+
RPL_MOTD = 372
|
14
|
+
RPL_MOTDSTART = 375
|
15
|
+
RPL_ENDOFMOTD = 376
|
14
16
|
|
15
17
|
ERR_UNKNOWNCOMMAND = 421
|
16
18
|
ERR_BADCHANNELKEY = 475
|
@@ -37,6 +37,14 @@ module Flamethrower
|
|
37
37
|
send_message ":#{from} NICK #{to}"
|
38
38
|
end
|
39
39
|
|
40
|
+
def send_nowaway
|
41
|
+
send_message reply(RPL_NOWAWAY, ":You have been marked as being away")
|
42
|
+
end
|
43
|
+
|
44
|
+
def send_unaway
|
45
|
+
send_message reply(RPL_UNAWAY, ":You are no longer marked as being away")
|
46
|
+
end
|
47
|
+
|
40
48
|
def send_who(channel)
|
41
49
|
send_messages do |messages|
|
42
50
|
channel.users.each do |user|
|
data/spec/spec_helper.rb
CHANGED
@@ -6,8 +6,7 @@ require 'webmock/rspec'
|
|
6
6
|
require 'json'
|
7
7
|
require 'time'
|
8
8
|
|
9
|
-
|
10
|
-
::FLAMETHROWER_LOGGER = Logger.new("/Users/blake/test.log") unless Object.const_defined?("FLAMETHROWER_LOGGER")
|
9
|
+
::FLAMETHROWER_LOGGER = Logger.new("/dev/null") unless Object.const_defined?("FLAMETHROWER_LOGGER")
|
11
10
|
|
12
11
|
def json_fixture(name)
|
13
12
|
file = File.join(File.dirname(__FILE__), "fixtures/#{name}.json")
|
@@ -73,6 +73,26 @@ describe Flamethrower::Campfire::Room do
|
|
73
73
|
end
|
74
74
|
end
|
75
75
|
|
76
|
+
describe "#resolve renames" do
|
77
|
+
it "calls 'send_rename' for each user who's name has changed" do
|
78
|
+
blake = Flamethrower::Campfire::User.new('id' => 1, 'name' => 'blake')
|
79
|
+
bob = Flamethrower::Campfire::User.new('id' => 2, 'name' => 'bob')
|
80
|
+
bill = Flamethrower::Campfire::User.new('id' => 3, 'name' => 'bill')
|
81
|
+
old_users = [blake, bob, bill]
|
82
|
+
|
83
|
+
blake2 = blake.dup
|
84
|
+
bob2 = bob.dup
|
85
|
+
|
86
|
+
blake2.name = "Blake Smith"
|
87
|
+
bob2.name = "Bob Hope"
|
88
|
+
new_users = [blake2, bob2, bill]
|
89
|
+
|
90
|
+
@room.server.should_receive(:send_rename).with("blake", "Blake_Smith")
|
91
|
+
@room.server.should_receive(:send_rename).with("bob", "Bob_Hope")
|
92
|
+
@room.resolve_renames(old_users, new_users)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
76
96
|
describe "#fetch_users" do
|
77
97
|
it "makes a call to the campfire api to fetch user information" do
|
78
98
|
stub_request(:get, "https://mydomain.campfirenow.com/users/734581.json").
|
@@ -201,6 +221,24 @@ describe Flamethrower::Campfire::Room do
|
|
201
221
|
end
|
202
222
|
end
|
203
223
|
|
224
|
+
describe "#translate_nicknames" do
|
225
|
+
it "changes an IRC highlighted name to the campfire name" do
|
226
|
+
user = Flamethrower::Campfire::User.new('name' => "bob_hope", 'id' => 489198)
|
227
|
+
user2 = Flamethrower::Campfire::User.new('name' => "bill_jones", 'id' => 123456)
|
228
|
+
@room.users = [user, user2]
|
229
|
+
message_body = "#{user2.to_irc.nickname}: Hello there!"
|
230
|
+
@room.send(:translate_nicknames, message_body).should == "#{user2.name}: Hello there!"
|
231
|
+
end
|
232
|
+
|
233
|
+
it "doesn't change the message body if no user's name is present in the body" do
|
234
|
+
user = Flamethrower::Campfire::User.new('name' => "bob_hope", 'id' => 489198)
|
235
|
+
user2 = Flamethrower::Campfire::User.new('name' => "bill_jones", 'id' => 123456)
|
236
|
+
@room.users = [user, user2]
|
237
|
+
message_body = "Hello there!"
|
238
|
+
@room.send(:translate_nicknames, message_body).should == "Hello there!"
|
239
|
+
end
|
240
|
+
end
|
241
|
+
|
204
242
|
describe "#requeue_failed_messages" do
|
205
243
|
it "queues a message whos retry_at is greater than now" do
|
206
244
|
Time.stub(:now).and_return(Time.parse("9:00AM"))
|
@@ -4,7 +4,9 @@ describe Flamethrower::Dispatcher do
|
|
4
4
|
before do
|
5
5
|
@server = Flamethrower::MockServer.new(:log => Logger.new("/dev/null"))
|
6
6
|
@room = Flamethrower::Campfire::Room.new('mydomain', 'mytoken', {'name' => 'a room', 'id' => 347348})
|
7
|
+
@room.instance_variable_set("@stream", mock(:twitter_stream, :stop => nil))
|
7
8
|
@channel = Flamethrower::Irc::Channel.new("#flamethrower", @room)
|
9
|
+
@user = Flamethrower::Irc::User.new :username => "user", :nickname => "nick", :hostname => "host", :realname => "realname", :servername => "servername"
|
8
10
|
@server.irc_channels << @channel
|
9
11
|
@dispatcher = Flamethrower::Dispatcher.new(@server)
|
10
12
|
end
|
@@ -45,6 +47,25 @@ describe Flamethrower::Dispatcher do
|
|
45
47
|
end
|
46
48
|
end
|
47
49
|
|
50
|
+
describe "#away" do
|
51
|
+
it "respond with RPL_NOWAWAY when the user specifies an away message" do
|
52
|
+
@server.current_user = @user
|
53
|
+
message = Flamethrower::Irc::Message.new("AWAY :I'm away")
|
54
|
+
@dispatcher.server.should_receive(:send_message).with(":#{@user.hostname} 306 #{@user.nickname} :You have been marked as being away")
|
55
|
+
@dispatcher.handle_message(message)
|
56
|
+
@server.current_user.away_message.should == "I'm away"
|
57
|
+
end
|
58
|
+
|
59
|
+
it "respond with RPL_UNAWAY when the user doesn't specify an away message" do
|
60
|
+
@server.current_user = @user
|
61
|
+
@server.current_user.away_message = "Currently away"
|
62
|
+
message = Flamethrower::Irc::Message.new("AWAY :")
|
63
|
+
@dispatcher.server.should_receive(:send_message).with(":#{@user.hostname} 305 #{@user.nickname} :You are no longer marked as being away")
|
64
|
+
@dispatcher.handle_message(message)
|
65
|
+
@server.current_user.away_message.should == nil
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
48
69
|
describe "#topic" do
|
49
70
|
before do
|
50
71
|
@user = Flamethrower::Irc::User.new :username => "user", :nickname => "nick", :hostname => "host", :realname => "realname", :servername => "servername"
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flamethrower
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 3
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.3.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Blake Smith
|
@@ -15,69 +15,13 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-01-
|
18
|
+
date: 2011-01-20 00:00:00 -06:00
|
19
19
|
default_executable: flamethrower
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
name: eventmachine
|
23
23
|
prerelease: false
|
24
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
hash: 3
|
30
|
-
segments:
|
31
|
-
- 0
|
32
|
-
version: "0"
|
33
|
-
type: :runtime
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: twitter-stream
|
37
|
-
prerelease: false
|
38
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
-
none: false
|
40
|
-
requirements:
|
41
|
-
- - ">="
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
hash: 3
|
44
|
-
segments:
|
45
|
-
- 0
|
46
|
-
version: "0"
|
47
|
-
type: :runtime
|
48
|
-
version_requirements: *id002
|
49
|
-
- !ruby/object:Gem::Dependency
|
50
|
-
name: json
|
51
|
-
prerelease: false
|
52
|
-
requirement: &id003 !ruby/object:Gem::Requirement
|
53
|
-
none: false
|
54
|
-
requirements:
|
55
|
-
- - ">="
|
56
|
-
- !ruby/object:Gem::Version
|
57
|
-
hash: 3
|
58
|
-
segments:
|
59
|
-
- 0
|
60
|
-
version: "0"
|
61
|
-
type: :runtime
|
62
|
-
version_requirements: *id003
|
63
|
-
- !ruby/object:Gem::Dependency
|
64
|
-
name: em-http-request
|
65
|
-
prerelease: false
|
66
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
67
|
-
none: false
|
68
|
-
requirements:
|
69
|
-
- - ">="
|
70
|
-
- !ruby/object:Gem::Version
|
71
|
-
hash: 3
|
72
|
-
segments:
|
73
|
-
- 0
|
74
|
-
version: "0"
|
75
|
-
type: :runtime
|
76
|
-
version_requirements: *id004
|
77
|
-
- !ruby/object:Gem::Dependency
|
78
|
-
name: eventmachine
|
79
|
-
prerelease: false
|
80
|
-
requirement: &id005 !ruby/object:Gem::Requirement
|
81
25
|
none: false
|
82
26
|
requirements:
|
83
27
|
- - ">="
|
@@ -89,11 +33,11 @@ dependencies:
|
|
89
33
|
- 10
|
90
34
|
version: 0.12.10
|
91
35
|
type: :runtime
|
92
|
-
version_requirements: *
|
36
|
+
version_requirements: *id001
|
93
37
|
- !ruby/object:Gem::Dependency
|
94
38
|
name: json
|
95
39
|
prerelease: false
|
96
|
-
requirement: &
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
97
41
|
none: false
|
98
42
|
requirements:
|
99
43
|
- - ">="
|
@@ -103,11 +47,11 @@ dependencies:
|
|
103
47
|
- 0
|
104
48
|
version: "0"
|
105
49
|
type: :runtime
|
106
|
-
version_requirements: *
|
50
|
+
version_requirements: *id002
|
107
51
|
- !ruby/object:Gem::Dependency
|
108
52
|
name: em-http-request
|
109
53
|
prerelease: false
|
110
|
-
requirement: &
|
54
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
111
55
|
none: false
|
112
56
|
requirements:
|
113
57
|
- - ">="
|
@@ -117,11 +61,11 @@ dependencies:
|
|
117
61
|
- 0
|
118
62
|
version: "0"
|
119
63
|
type: :runtime
|
120
|
-
version_requirements: *
|
64
|
+
version_requirements: *id003
|
121
65
|
- !ruby/object:Gem::Dependency
|
122
66
|
name: twitter-stream
|
123
67
|
prerelease: false
|
124
|
-
requirement: &
|
68
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
125
69
|
none: false
|
126
70
|
requirements:
|
127
71
|
- - ">="
|
@@ -131,7 +75,7 @@ dependencies:
|
|
131
75
|
- 0
|
132
76
|
version: "0"
|
133
77
|
type: :runtime
|
134
|
-
version_requirements: *
|
78
|
+
version_requirements: *id004
|
135
79
|
description: Flamethrower gives you the power to use your awesome irc client to talk in your campfire rooms.
|
136
80
|
email: blakesmith0@gmail.com
|
137
81
|
executables:
|
@@ -141,6 +85,7 @@ extensions: []
|
|
141
85
|
extra_rdoc_files:
|
142
86
|
- README.rdoc
|
143
87
|
files:
|
88
|
+
- .gitignore
|
144
89
|
- .rspec
|
145
90
|
- Gemfile
|
146
91
|
- Gemfile.lock
|
@@ -196,8 +141,8 @@ homepage: http://github.com/blakesmith/flamethrower
|
|
196
141
|
licenses: []
|
197
142
|
|
198
143
|
post_install_message:
|
199
|
-
rdoc_options:
|
200
|
-
|
144
|
+
rdoc_options:
|
145
|
+
- --charset=UTF-8
|
201
146
|
require_paths:
|
202
147
|
- lib
|
203
148
|
required_ruby_version: !ruby/object:Gem::Requirement
|