remailer 0.5.1 → 0.5.2

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.5.2
@@ -209,6 +209,8 @@ class Remailer::AbstractConnection < EventMachine::Connection
209
209
  def unbind
210
210
  return if (@unbound)
211
211
 
212
+ self.cancel_timer!
213
+
212
214
  self.after_unbind
213
215
 
214
216
  @unbound = true
@@ -249,12 +251,6 @@ class Remailer::AbstractConnection < EventMachine::Connection
249
251
  self.set_timer!
250
252
  end
251
253
 
252
- def detach
253
- self.cancel_timer!
254
-
255
- super
256
- end
257
-
258
254
  # Returns the current state of the active interpreter, or nil if no state
259
255
  # is assigned.
260
256
  def state
@@ -335,7 +331,7 @@ class Remailer::AbstractConnection < EventMachine::Connection
335
331
  remote_options = @options
336
332
  interpreter = @interpreter
337
333
 
338
- if (@connecting_to_proxy)
334
+ if (self.proxy_connection_initiated?)
339
335
  remote_options = @options[:proxy]
340
336
  end
341
337
 
@@ -163,18 +163,6 @@ class Remailer::SMTP::Client < Remailer::AbstractConnection
163
163
  error_notification(:out_of_band, "Receiving data before a protocol has been established.")
164
164
  end
165
165
  end
166
-
167
- def post_init
168
- @timer = EventMachine.add_periodic_timer(1) do
169
- check_for_timeouts!
170
- end
171
- end
172
-
173
- #
174
- def detach
175
- @timer.cancel
176
- super
177
- end
178
166
 
179
167
  # Returns the current state of the active interpreter, or nil if no state
180
168
  # is assigned.
@@ -214,62 +202,6 @@ class Remailer::SMTP::Client < Remailer::AbstractConnection
214
202
  rescue
215
203
  nil
216
204
  end
217
-
218
- # Resets the timeout time. Returns the time at which a timeout will occur.
219
- def reset_timeout!
220
- @timeout_at = Time.now + @timeout
221
- end
222
-
223
- # Returns the number of seconds remaining until a timeout will occur, or
224
- # nil if no time-out is pending.
225
- def time_remaning
226
- @timeout_at and (@timeout_at.to_i - Time.now.to_i)
227
- end
228
-
229
- # Checks for a timeout condition, and if one is detected, will close the
230
- # connection and send appropriate callbacks.
231
- def check_for_timeouts!
232
- return if (!@timeout_at or Time.now < @timeout_at or @timed_out)
233
-
234
- @timed_out = true
235
- @timeout_at = nil
236
-
237
- if (@connected and @active_message)
238
- message_callback(:timeout, "Response timed out before send could complete")
239
- error_notification(:timeout, "Response timed out")
240
- debug_notification(:timeout, "Response timed out")
241
- send_callback(:on_error)
242
- elsif (!@connected)
243
- remote_options = @options
244
- interpreter = @interpreter
245
-
246
- if (self.proxy_connection_initiated?)
247
- remote_options = @options[:proxy]
248
- end
249
-
250
- message = "Timed out before a connection could be established to #{remote_options[:host]}:#{remote_options[:port]}"
251
-
252
- if (interpreter)
253
- message << " using #{interpreter.label}"
254
- end
255
-
256
- connect_notification(false, message)
257
- debug_notification(:timeout, message)
258
- error_notification(:timeout, message)
259
-
260
- send_callback(:on_error)
261
- else
262
- interpreter = @interpreter
263
-
264
- if (interpreter and interpreter.respond_to?(:close))
265
- interpreter.close
266
- else
267
- send_callback(:on_disconnect)
268
- end
269
- end
270
-
271
- close_connection
272
- end
273
205
 
274
206
  # Returns true if pipelining support has been detected on the connection,
275
207
  # false otherwise.
@@ -1,6 +1,6 @@
1
1
  class Remailer::SMTP::Server::Interpreter < Remailer::Interpreter
2
2
  # == State Definitions ====================================================
3
-
3
+
4
4
  default do |error|
5
5
  delegate.send_line("500 Invalid command")
6
6
  end
@@ -159,8 +159,8 @@ class Remailer::SMTP::Server::Interpreter < Remailer::Interpreter
159
159
 
160
160
  default do |line|
161
161
  # RFC5321 4.5.2 - Leading dot is removed if line has content
162
-
163
- @transaction.data << (line.sub(/^\./, '') + Remailer::Constants::CRLF)
162
+
163
+ @transaction.data << (line.sub(/^\./, '') << Remailer::Constants::CRLF)
164
164
  end
165
165
  end
166
166
 
data/remailer.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "remailer"
8
- s.version = "0.5.1"
8
+ s.version = "0.5.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Scott Tadman"]
12
- s.date = "2012-03-19"
12
+ s.date = "2012-11-30"
13
13
  s.description = "EventMachine SMTP Mail User Agent"
14
14
  s.email = "scott@twg.ca"
15
15
  s.extra_rdoc_files = [
@@ -56,7 +56,7 @@ Gem::Specification.new do |s|
56
56
  ]
57
57
  s.homepage = "http://github.com/twg/remailer"
58
58
  s.require_paths = ["lib"]
59
- s.rubygems_version = "1.8.17"
59
+ s.rubygems_version = "1.8.24"
60
60
  s.summary = "Reactor-Ready SMTP Mailer"
61
61
 
62
62
  if s.respond_to? :specification_version then
data/test/helper.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'test/unit'
3
3
 
4
- $LOAD_PATH.unshift(File.expand_path(*%w[ .. lib ]), File.dirname(__FILE__))
4
+ $LOAD_PATH.unshift(File.expand_path('../lib', File.dirname(__FILE__)))
5
5
  $LOAD_PATH.unshift(File.dirname(__FILE__))
6
6
 
7
7
  require 'timeout'
@@ -14,6 +14,8 @@ rescue => e
14
14
  raise "EventMachine gem could not be loaded: #{e.class}: #{e}"
15
15
  end
16
16
 
17
+ puts $LOAD_PATH.inspect
18
+
17
19
  require 'remailer'
18
20
 
19
21
  class Proc
@@ -31,7 +31,7 @@ class RemailerIMAPClientTest < Test::Unit::TestCase
31
31
  capabilities
32
32
  end
33
33
 
34
- assert_equal %w[ IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 XYZZY SASL-IR AUTH=XOAUTH ], capabilities
34
+ assert_equal %w[ IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN X-GM-EXT-1 XYZZY SASL-IR AUTH=XOAUTH AUTH=XOAUTH2 ], capabilities
35
35
 
36
36
  # -- LOGIN ------------------------------------------------------------
37
37
 
@@ -1,4 +1,4 @@
1
- require File.expand_path(File.join(*%w[ .. helper ]), File.dirname(__FILE__))
1
+ require File.expand_path('../helper', File.dirname(__FILE__))
2
2
 
3
3
  class RemailerSMTPServerTest < Test::Unit::TestCase
4
4
  def test_bind
@@ -67,9 +67,9 @@ class RemailerSMTPServerTest < Test::Unit::TestCase
67
67
 
68
68
  sender = 'sender@example.com'.freeze
69
69
  recipient = 'recipient@example.net'.freeze
70
- data = "Subject: Re: Test Message\r\n\r\nTest message.\r\n\r\n.test\r\n.\r\n".freeze
70
+ content = "Subject: Re: Test Message\r\n\r\nTest message.\r\n\r\n.test\r\n.\r\n".freeze
71
71
 
72
- client.send_email(sender, recipient, data)
72
+ client.send_email(sender, recipient, content)
73
73
 
74
74
  assert_eventually(30) do
75
75
  transaction
@@ -77,7 +77,7 @@ class RemailerSMTPServerTest < Test::Unit::TestCase
77
77
 
78
78
  assert_equal sender, transaction.sender
79
79
  assert_equal [ recipient ], transaction.recipients
80
- assert_equal data, transaction.data
80
+ assert_equal content + Remailer::Constants::CRLF, transaction.data
81
81
  end
82
82
  end
83
83
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: remailer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-19 00:00:00.000000000 Z
12
+ date: 2012-11-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: eventmachine
16
- requirement: &2157010820 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,7 +21,12 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2157010820
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  description: EventMachine SMTP Mail User Agent
26
31
  email: scott@twg.ca
27
32
  executables: []
@@ -86,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
91
  version: '0'
87
92
  requirements: []
88
93
  rubyforge_project:
89
- rubygems_version: 1.8.17
94
+ rubygems_version: 1.8.24
90
95
  signing_key:
91
96
  specification_version: 3
92
97
  summary: Reactor-Ready SMTP Mailer