firetower 0.0.9 → 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.
data/.bnsignore ADDED
@@ -0,0 +1,18 @@
1
+ # The list of files that should be ignored by Mr Bones.
2
+ # Lines that start with '#' are comments.
3
+ #
4
+ # A .gitignore file can be used instead by setting it as the ignore
5
+ # file in your Rakefile:
6
+ #
7
+ # Bones {
8
+ # ignore_file '.gitignore'
9
+ # }
10
+ #
11
+ # For a project with a C extension, the following would be a good set of
12
+ # exclude patterns (uncomment them if you want to use them):
13
+ # *.[oa]
14
+ # *~
15
+ announcement.txt
16
+ coverage
17
+ doc
18
+ pkg
data/Gemfile ADDED
@@ -0,0 +1,22 @@
1
+ source :rubygems
2
+
3
+ group :rake do
4
+ gem 'bones'
5
+ gem 'bones-git'
6
+ gem 'rspec', '~> 1.3.1'
7
+ gem 'bones-rspec'
8
+ end
9
+
10
+ # duplication with Rakefile :(
11
+ gem 'twitter-stream', '~> 0.1.6'
12
+ gem 'eventmachine', '~> 0.12.10'
13
+ gem 'json', '~> 1.4'
14
+ gem 'addressable', '~> 2.1'
15
+ gem 'main', '~> 4.2'
16
+ gem 'servolux', '~> 0.9.4'
17
+ gem 'hookr', '~> 1.1'
18
+ gem 'highline', '~> 1.5'
19
+ gem 'yammer4r', '~> 0.1.5'
20
+ gem 'oauth', '~> 0.4.3'
21
+ gem 'launchy'
22
+
data/Gemfile.lock ADDED
@@ -0,0 +1,69 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ addressable (2.2.6)
5
+ arrayfields (4.7.4)
6
+ bones (3.7.0)
7
+ little-plugger (>= 1.1.2)
8
+ loquacious (>= 1.7.0)
9
+ rake (>= 0.8.7)
10
+ bones-git (1.2.4)
11
+ bones (>= 3.6)
12
+ git (>= 1.2.5)
13
+ bones-rspec (2.0.1)
14
+ bones (>= 3.6)
15
+ rspec (>= 1.3)
16
+ configuration (1.3.1)
17
+ eventmachine (0.12.10)
18
+ fail-fast (1.1.0)
19
+ fattr (2.2.0)
20
+ git (1.2.5)
21
+ highline (1.6.2)
22
+ hookr (1.1.0)
23
+ fail-fast (>= 1.0.0)
24
+ http_parser.rb (0.5.1)
25
+ json (1.5.3)
26
+ launchy (0.4.0)
27
+ configuration (>= 0.0.5)
28
+ rake (>= 0.8.1)
29
+ little-plugger (1.1.2)
30
+ loquacious (1.8.1)
31
+ main (4.6.0)
32
+ arrayfields (>= 4.7.4)
33
+ fattr (>= 2.1.0)
34
+ map (>= 2.0.0)
35
+ map (4.2.0)
36
+ mash (0.1.1)
37
+ oauth (0.4.5)
38
+ rake (0.9.2)
39
+ rspec (1.3.2)
40
+ servolux (0.9.6)
41
+ simple_oauth (0.1.5)
42
+ twitter-stream (0.1.14)
43
+ eventmachine (>= 0.12.8)
44
+ http_parser.rb (~> 0.5.1)
45
+ simple_oauth (~> 0.1.4)
46
+ yammer4r (0.1.5)
47
+ json (>= 1.1.7)
48
+ mash (>= 0.0.3)
49
+ oauth (>= 0.3.5)
50
+
51
+ PLATFORMS
52
+ ruby
53
+
54
+ DEPENDENCIES
55
+ addressable (~> 2.1)
56
+ bones
57
+ bones-git
58
+ bones-rspec
59
+ eventmachine (~> 0.12.10)
60
+ highline (~> 1.5)
61
+ hookr (~> 1.1)
62
+ json (~> 1.4)
63
+ launchy
64
+ main (~> 4.2)
65
+ oauth (~> 0.4.3)
66
+ rspec (~> 1.3.1)
67
+ servolux (~> 0.9.4)
68
+ twitter-stream (~> 0.1.6)
69
+ yammer4r (~> 0.1.5)
data/History.txt CHANGED
@@ -1,3 +1,12 @@
1
+ == 0.1.0 / 2011-09-06
2
+
3
+ * 2 minor enhancements
4
+ * Improve Firetower::Room API to make it simpler to say, paste, or play something in a room
5
+ * Create Firetower::Event to make it simpler to deal with events in handlers
6
+ * `.text?` and `.sound?` methods for determining if it's a text or sound message
7
+ * Add `=~` operator, which delegates to body
8
+
9
+
1
10
  == 0.0.9 / 2011-07-06
2
11
 
3
12
  * 1 minor enhancement
data/README.org CHANGED
@@ -12,7 +12,8 @@
12
12
  [[file:images/BaldMountainLookout.jpg]]
13
13
 
14
14
  A command-line interface to the Campfire API
15
- (http://developer.37signals.com/campfire/) by [[mailto:avdi@avdi.org][Avdi Grimm]]
15
+ (http://developer.37signals.com/campfire/) by [[mailto:avdi@avdi.org][Avdi Grimm]].
16
+ Also, a pretty simple way to create a Campfire bot.
16
17
 
17
18
  URL: http://github.com/avdi/firetower
18
19
 
@@ -31,7 +32,7 @@
31
32
  : sudo gem install firetower
32
33
  : firetower setup
33
34
 
34
- *** Usage
35
+ *** Command Usage
35
36
  ***** Say something in campfire
36
37
  : firetower say 'blah blah blah'
37
38
  ***** Say something to a non-default room
@@ -48,26 +49,30 @@
48
49
  : firetower stop
49
50
 
50
51
  *** Configuration
52
+
51
53
  Edit $HOME/.firetower/firetower.conf
52
54
 
53
55
  All configuration is done in Ruby. The context is a Firetower::Sesson
54
56
  object. You can add handlers for events:
55
57
 
56
- : receive do |session, event| ... end
58
+ : receive do |session, event|
59
+ : ...
60
+ : end
57
61
 
58
62
  Or enable plugins:
59
63
 
60
64
  : use NotifyPlugin
61
65
 
62
- ***** A simple bot
66
+ ***** Creating a bot
67
+
63
68
  Drop this in ~/.firetower/firetower.conf for a simple (and VERY UNSAFE!) demo
64
69
  of a Campfire bot which will eval arbitrary Ruby code whenever someone
65
70
  prefaces a message with "!eval":
66
71
 
67
72
  #+BEGIN_SRC ruby
68
73
  receive do |session, event|
69
- if event['type'] == 'TextMessage' && event['body'] =~ /^!eval (.*)$/
70
- event.room.account.paste!(event.room.name, "Eval result:\n" + eval($1).to_s)
74
+ if event.text? && event =~ /^!eval (.*)$/
75
+ event.room.paste!(event.room.name, "Eval result:\n" + eval($1).to_s)
71
76
  end
72
77
  end
73
78
  #+END_SRC
data/Rakefile CHANGED
@@ -1,12 +1,13 @@
1
+ require "rubygems"
2
+ require "bundler"
3
+ Bundler.setup(:default, :rake)
1
4
 
2
- begin
3
- require 'bones'
4
- rescue LoadError
5
- abort '### Please install the "bones" gem ###'
6
- end
5
+ require 'bones'
6
+ require 'bones/plugins/git'
7
+ require 'bones/plugins/rspec'
7
8
 
8
- task :default => 'test:run'
9
- task 'gem:release' => 'test:run'
9
+ task :default => 'spec:run'
10
+ task 'gem:release' => 'spec:run'
10
11
 
11
12
  Bones {
12
13
  name 'firetower'
data/hookr ADDED
@@ -0,0 +1 @@
1
+ Subproject commit 6d0c1a853bdfd649c47a689ae8f880d51ac55e58-dirty
@@ -0,0 +1,43 @@
1
+ module Firetower
2
+ class Event
3
+ attr_accessor :attributes
4
+ attr_accessor :room
5
+ attr_accessor :created_at, :body, :id, :user_id, :type
6
+
7
+ def self.parse(json)
8
+ new(JSON.parse(json))
9
+ end
10
+
11
+ def initialize(attributes)
12
+ @attributes = attributes
13
+ @attributes.each do |key, value|
14
+ send("#{key}=", value) if respond_to?("#{key}=")
15
+ end
16
+ end
17
+
18
+ def [](key)
19
+ @attributes[key]
20
+ end
21
+
22
+ def []=(key, value)
23
+ @attributes[key] = value
24
+ end
25
+
26
+ def text?
27
+ self.type == 'TextMessage'
28
+ end
29
+
30
+ def sound?
31
+ self.type == 'SoundMessage'
32
+ end
33
+
34
+ def timestamp?
35
+ self.type == 'TimestampMessage'
36
+ end
37
+
38
+ def =~(pattern)
39
+ self.body =~ pattern
40
+ end
41
+
42
+ end
43
+ end
@@ -11,5 +11,17 @@ module Firetower
11
11
  def to_s
12
12
  "#{account.subdomain}/#{id} (#{name})"
13
13
  end
14
+
15
+ def say!(message)
16
+ account.say!(name, message)
17
+ end
18
+
19
+ def paste!(message)
20
+ account.paste!(name, message)
21
+ end
22
+
23
+ def play!(message)
24
+ account.play!(name, message)
25
+ end
14
26
  end
15
27
  end
@@ -41,11 +41,12 @@ module Firetower
41
41
  :host => 'streaming.campfirenow.com',
42
42
  :auth => "#{room.account.token}:x")
43
43
 
44
- stream.each_item do |event|
45
- @logger.info "Processing event:\n #{event}"
46
- event = JSON.parse(event)
44
+ stream.each_item do |json|
45
+ @logger.info "Processing event:\n #{json}"
46
+
47
+ event = Firetower::Event.parse(json)
48
+ event.room = room
47
49
 
48
- (class << event; self; end).send(:define_method, :room){room}
49
50
  session.execute_hook(:receive, session, event)
50
51
  end
51
52
 
@@ -62,6 +62,34 @@ describe Firetower do
62
62
  end
63
63
  end
64
64
 
65
+ describe Firetower::Room do
66
+ subject do
67
+ it = Firetower::Room.new(account, 'id' => '1234', 'name' => 'awesome')
68
+ end
69
+
70
+ let(:account) do
71
+ mock(:account)
72
+ end
73
+
74
+ it "has shortcut for say" do
75
+ account.should_receive(:say!).with('awesome', 'woooooot')
76
+
77
+ subject.say! 'woooooot'
78
+ end
79
+
80
+ it "has shortcut for paste" do
81
+ account.should_receive(:paste!).with('awesome', 'woooooot')
82
+
83
+ subject.paste! 'woooooot'
84
+ end
85
+
86
+ it "has shortcut for play" do
87
+ account.should_receive(:play!).with('awesome', 'woooooot')
88
+
89
+ subject.play! 'woooooot'
90
+ end
91
+ end
92
+
65
93
  shared_examples_for "Notifier Plugins" do
66
94
 
67
95
  context "given an ignore list" do
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,6 @@
1
+ require "rubygems"
2
+ require "bundler"
3
+ Bundler.setup(:default, :development)
1
4
 
2
5
  require File.expand_path(
3
6
  File.join(File.dirname(__FILE__), %w[.. lib firetower]))
data/version.txt CHANGED
@@ -1 +1 @@
1
- 0.0.9
1
+ 0.1.0
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: firetower
3
3
  version: !ruby/object:Gem::Version
4
- hash: 13
5
- prerelease: false
4
+ hash: 27
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
+ - 1
8
9
  - 0
9
- - 9
10
- version: 0.0.9
10
+ version: 0.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Avdi Grimm
@@ -15,13 +15,13 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-07-06 00:00:00 -04:00
18
+ date: 2011-09-06 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
+ type: :runtime
22
23
  name: twitter-stream
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
24
+ version_requirements: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
27
  - - ~>
@@ -32,12 +32,12 @@ dependencies:
32
32
  - 1
33
33
  - 6
34
34
  version: 0.1.6
35
- type: :runtime
36
- version_requirements: *id001
35
+ prerelease: false
36
+ requirement: *id001
37
37
  - !ruby/object:Gem::Dependency
38
+ type: :runtime
38
39
  name: eventmachine
39
- prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
40
+ version_requirements: &id002 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ~>
@@ -48,12 +48,12 @@ dependencies:
48
48
  - 12
49
49
  - 10
50
50
  version: 0.12.10
51
- type: :runtime
52
- version_requirements: *id002
51
+ prerelease: false
52
+ requirement: *id002
53
53
  - !ruby/object:Gem::Dependency
54
+ type: :runtime
54
55
  name: json
55
- prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
56
+ version_requirements: &id003 !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
59
59
  - - ~>
@@ -63,12 +63,12 @@ dependencies:
63
63
  - 1
64
64
  - 4
65
65
  version: "1.4"
66
- type: :runtime
67
- version_requirements: *id003
66
+ prerelease: false
67
+ requirement: *id003
68
68
  - !ruby/object:Gem::Dependency
69
+ type: :runtime
69
70
  name: addressable
70
- prerelease: false
71
- requirement: &id004 !ruby/object:Gem::Requirement
71
+ version_requirements: &id004 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -78,12 +78,12 @@ dependencies:
78
78
  - 2
79
79
  - 1
80
80
  version: "2.1"
81
- type: :runtime
82
- version_requirements: *id004
81
+ prerelease: false
82
+ requirement: *id004
83
83
  - !ruby/object:Gem::Dependency
84
+ type: :runtime
84
85
  name: main
85
- prerelease: false
86
- requirement: &id005 !ruby/object:Gem::Requirement
86
+ version_requirements: &id005 !ruby/object:Gem::Requirement
87
87
  none: false
88
88
  requirements:
89
89
  - - ~>
@@ -93,12 +93,12 @@ dependencies:
93
93
  - 4
94
94
  - 2
95
95
  version: "4.2"
96
- type: :runtime
97
- version_requirements: *id005
96
+ prerelease: false
97
+ requirement: *id005
98
98
  - !ruby/object:Gem::Dependency
99
+ type: :runtime
99
100
  name: servolux
100
- prerelease: false
101
- requirement: &id006 !ruby/object:Gem::Requirement
101
+ version_requirements: &id006 !ruby/object:Gem::Requirement
102
102
  none: false
103
103
  requirements:
104
104
  - - ~>
@@ -109,12 +109,12 @@ dependencies:
109
109
  - 9
110
110
  - 4
111
111
  version: 0.9.4
112
- type: :runtime
113
- version_requirements: *id006
112
+ prerelease: false
113
+ requirement: *id006
114
114
  - !ruby/object:Gem::Dependency
115
+ type: :runtime
115
116
  name: hookr
116
- prerelease: false
117
- requirement: &id007 !ruby/object:Gem::Requirement
117
+ version_requirements: &id007 !ruby/object:Gem::Requirement
118
118
  none: false
119
119
  requirements:
120
120
  - - ~>
@@ -124,12 +124,12 @@ dependencies:
124
124
  - 1
125
125
  - 1
126
126
  version: "1.1"
127
- type: :runtime
128
- version_requirements: *id007
127
+ prerelease: false
128
+ requirement: *id007
129
129
  - !ruby/object:Gem::Dependency
130
+ type: :runtime
130
131
  name: highline
131
- prerelease: false
132
- requirement: &id008 !ruby/object:Gem::Requirement
132
+ version_requirements: &id008 !ruby/object:Gem::Requirement
133
133
  none: false
134
134
  requirements:
135
135
  - - ~>
@@ -139,12 +139,12 @@ dependencies:
139
139
  - 1
140
140
  - 5
141
141
  version: "1.5"
142
- type: :runtime
143
- version_requirements: *id008
142
+ prerelease: false
143
+ requirement: *id008
144
144
  - !ruby/object:Gem::Dependency
145
+ type: :runtime
145
146
  name: yammer4r
146
- prerelease: false
147
- requirement: &id009 !ruby/object:Gem::Requirement
147
+ version_requirements: &id009 !ruby/object:Gem::Requirement
148
148
  none: false
149
149
  requirements:
150
150
  - - ~>
@@ -155,12 +155,12 @@ dependencies:
155
155
  - 1
156
156
  - 5
157
157
  version: 0.1.5
158
- type: :runtime
159
- version_requirements: *id009
158
+ prerelease: false
159
+ requirement: *id009
160
160
  - !ruby/object:Gem::Dependency
161
+ type: :runtime
161
162
  name: oauth
162
- prerelease: false
163
- requirement: &id010 !ruby/object:Gem::Requirement
163
+ version_requirements: &id010 !ruby/object:Gem::Requirement
164
164
  none: false
165
165
  requirements:
166
166
  - - ~>
@@ -171,28 +171,28 @@ dependencies:
171
171
  - 4
172
172
  - 3
173
173
  version: 0.4.3
174
- type: :runtime
175
- version_requirements: *id010
174
+ prerelease: false
175
+ requirement: *id010
176
176
  - !ruby/object:Gem::Dependency
177
+ type: :runtime
177
178
  name: launchy
178
- prerelease: false
179
- requirement: &id011 !ruby/object:Gem::Requirement
179
+ version_requirements: &id011 !ruby/object:Gem::Requirement
180
180
  none: false
181
181
  requirements:
182
182
  - - ">="
183
183
  - !ruby/object:Gem::Version
184
- hash: 29
184
+ hash: 15
185
185
  segments:
186
186
  - 0
187
- - 3
188
- - 7
189
- version: 0.3.7
190
- type: :runtime
191
- version_requirements: *id011
187
+ - 4
188
+ - 0
189
+ version: 0.4.0
190
+ prerelease: false
191
+ requirement: *id011
192
192
  - !ruby/object:Gem::Dependency
193
+ type: :development
193
194
  name: bones
194
- prerelease: false
195
- requirement: &id012 !ruby/object:Gem::Requirement
195
+ version_requirements: &id012 !ruby/object:Gem::Requirement
196
196
  none: false
197
197
  requirements:
198
198
  - - ">="
@@ -203,8 +203,8 @@ dependencies:
203
203
  - 7
204
204
  - 0
205
205
  version: 3.7.0
206
- type: :development
207
- version_requirements: *id012
206
+ prerelease: false
207
+ requirement: *id012
208
208
  description: ""
209
209
  email: avdi@avdi.org
210
210
  executables:
@@ -214,19 +214,99 @@ extensions: []
214
214
  extra_rdoc_files:
215
215
  - History.txt
216
216
  - bin/firetower
217
+ - hookr/History.txt
218
+ - hookr/Manifest.txt
219
+ - hookr/README.txt
220
+ - hookr/pkg/schleyfox-hookr-1.0.1/History.txt
221
+ - hookr/pkg/schleyfox-hookr-1.0.1/Manifest.txt
222
+ - hookr/pkg/schleyfox-hookr-1.0.1/README.txt
217
223
  - lib/firetower/firetower.conf.erb
218
224
  - lib/firetower/plugins/core/campfire-logo-for-fluid.png
219
225
  files:
226
+ - .bnsignore
220
227
  - .rvmrc
228
+ - Gemfile
229
+ - Gemfile.lock
221
230
  - History.txt
222
231
  - README.org
223
232
  - Rakefile
224
233
  - bin/firetower
225
234
  - example/bot.rb
235
+ - hookr/.git/HEAD
236
+ - hookr/.git/config
237
+ - hookr/.git/description
238
+ - hookr/.git/hooks/applypatch-msg.sample
239
+ - hookr/.git/hooks/commit-msg.sample
240
+ - hookr/.git/hooks/post-commit.sample
241
+ - hookr/.git/hooks/post-receive.sample
242
+ - hookr/.git/hooks/post-update.sample
243
+ - hookr/.git/hooks/pre-applypatch.sample
244
+ - hookr/.git/hooks/pre-commit.sample
245
+ - hookr/.git/hooks/pre-rebase.sample
246
+ - hookr/.git/hooks/prepare-commit-msg.sample
247
+ - hookr/.git/hooks/update.sample
248
+ - hookr/.git/index
249
+ - hookr/.git/info/exclude
250
+ - hookr/.git/logs/HEAD
251
+ - hookr/.git/logs/refs/heads/master
252
+ - hookr/.git/objects/pack/pack-5b86f143d74b8961e295a79e3b1cba3cefca9b6d.idx
253
+ - hookr/.git/objects/pack/pack-5b86f143d74b8961e295a79e3b1cba3cefca9b6d.pack
254
+ - hookr/.git/packed-refs
255
+ - hookr/.git/refs/heads/master
256
+ - hookr/.git/refs/remotes/origin/HEAD
257
+ - hookr/.gitignore
258
+ - hookr/History.txt
259
+ - hookr/Manifest.txt
260
+ - hookr/README.txt
261
+ - hookr/Rakefile
262
+ - hookr/TODO
263
+ - hookr/bin/hookr
264
+ - hookr/lib/hookr.rb
265
+ - hookr/pkg/schleyfox-hookr-1.0.1.gem
266
+ - hookr/pkg/schleyfox-hookr-1.0.1.tgz
267
+ - hookr/pkg/schleyfox-hookr-1.0.1/History.txt
268
+ - hookr/pkg/schleyfox-hookr-1.0.1/Manifest.txt
269
+ - hookr/pkg/schleyfox-hookr-1.0.1/README.txt
270
+ - hookr/pkg/schleyfox-hookr-1.0.1/Rakefile
271
+ - hookr/pkg/schleyfox-hookr-1.0.1/bin/hookr
272
+ - hookr/pkg/schleyfox-hookr-1.0.1/lib/hookr.rb
273
+ - hookr/pkg/schleyfox-hookr-1.0.1/spec/hookr_spec.rb
274
+ - hookr/pkg/schleyfox-hookr-1.0.1/spec/spec_helper.rb
275
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/ann.rake
276
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/bones.rake
277
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/gem.rake
278
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/git.rake
279
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/manifest.rake
280
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/notes.rake
281
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/post_load.rake
282
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/rdoc.rake
283
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/rubyforge.rake
284
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/setup.rb
285
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/spec.rake
286
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/svn.rake
287
+ - hookr/pkg/schleyfox-hookr-1.0.1/tasks/test.rake
288
+ - hookr/pkg/schleyfox-hookr-1.0.1/test/test_hookr.rb
289
+ - hookr/spec/hookr_spec.rb
290
+ - hookr/spec/spec_helper.rb
291
+ - hookr/tasks/ann.rake
292
+ - hookr/tasks/bones.rake
293
+ - hookr/tasks/gem.rake
294
+ - hookr/tasks/git.rake
295
+ - hookr/tasks/manifest.rake
296
+ - hookr/tasks/notes.rake
297
+ - hookr/tasks/post_load.rake
298
+ - hookr/tasks/rdoc.rake
299
+ - hookr/tasks/rubyforge.rake
300
+ - hookr/tasks/setup.rb
301
+ - hookr/tasks/spec.rake
302
+ - hookr/tasks/svn.rake
303
+ - hookr/tasks/test.rake
304
+ - hookr/test/test_hookr.rb
226
305
  - images/BaldMountainLookout.jpg
227
306
  - lib/firetower.rb
228
307
  - lib/firetower/account.rb
229
308
  - lib/firetower/accounts.rb
309
+ - lib/firetower/event.rb
230
310
  - lib/firetower/firetower.conf.erb
231
311
  - lib/firetower/plugins/core/campfire-logo-for-fluid.png
232
312
  - lib/firetower/plugins/core/growl_plugin.rb
@@ -243,7 +323,6 @@ files:
243
323
  - spec/firetower_spec.rb
244
324
  - spec/spec_helper.rb
245
325
  - tags
246
- - test/test_firetower.rb
247
326
  - version.txt
248
327
  has_rdoc: true
249
328
  homepage: http://github.com/avdi/firetower
@@ -276,9 +355,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
276
355
  requirements: []
277
356
 
278
357
  rubyforge_project: firetower
279
- rubygems_version: 1.3.7
358
+ rubygems_version: 1.4.2
280
359
  signing_key:
281
360
  specification_version: 3
282
361
  summary: A command-line interface to Campfire chats
283
- test_files:
284
- - test/test_firetower.rb
362
+ test_files: []
363
+
File without changes