tmail 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/CHANGES +5 -0
  2. data/NOTES +84 -0
  3. data/README +6 -1
  4. data/ext/Makefile +20 -0
  5. data/ext/{tmail/base64 → mailscanner/tmail}/MANIFEST +1 -1
  6. data/ext/mailscanner/tmail/depend +1 -0
  7. data/ext/mailscanner/tmail/extconf.rb +24 -0
  8. data/ext/{tmail/scanner_c/scanner_c.c → mailscanner/tmail/mailscanner.c} +8 -7
  9. data/lib/tmail/base64.rb +29 -52
  10. data/lib/tmail/encode.rb +37 -38
  11. data/lib/tmail/interface.rb +632 -49
  12. data/lib/tmail/main.rb +4 -0
  13. data/lib/tmail/net.rb +0 -35
  14. data/lib/tmail/quoting.rb +8 -8
  15. data/lib/tmail/scanner.rb +10 -6
  16. data/lib/tmail/scanner_r.rb +3 -5
  17. data/lib/tmail/version.rb +2 -2
  18. data/log/ChangeLog.txt +1131 -0
  19. data/log/History.txt +40 -0
  20. data/log/Todo.txt +32 -0
  21. data/meta/MANIFEST +118 -0
  22. data/meta/ROLLRC +3 -0
  23. data/meta/icli.yaml +2 -2
  24. data/meta/{tmail-1.1.1.roll → project.yaml} +3 -7
  25. data/sample/bench_base64.rb +48 -0
  26. data/{bat → script}/changelog +0 -0
  27. data/script/clobber/distclean +8 -0
  28. data/{bat → script}/clobber/package +0 -0
  29. data/script/compile +32 -0
  30. data/{bat → script}/config.yaml +2 -2
  31. data/{bat → script}/prepare +4 -2
  32. data/{bat → script}/publish +0 -0
  33. data/{bat → script}/release +0 -0
  34. data/{bat → script}/setup +0 -0
  35. data/{bat → script}/stats +0 -0
  36. data/{bat → script}/tag +0 -0
  37. data/script/test +36 -0
  38. data/test/fixtures/raw_email_reply +32 -0
  39. data/test/fixtures/raw_email_with_bad_date +48 -0
  40. data/test/test_address.rb +1 -3
  41. data/test/test_attachments.rb +1 -2
  42. data/test/test_base64.rb +3 -2
  43. data/test/test_encode.rb +1 -0
  44. data/test/test_header.rb +2 -3
  45. data/test/test_helper.rb +8 -2
  46. data/test/test_mail.rb +45 -16
  47. data/test/test_mbox.rb +1 -1
  48. data/test/test_port.rb +1 -1
  49. data/test/test_scanner.rb +1 -1
  50. data/test/test_utils.rb +1 -2
  51. metadata +82 -76
  52. data/bat/compile +0 -42
  53. data/bat/rdoc +0 -42
  54. data/bat/test +0 -25
  55. data/ext/tmail/Makefile +0 -25
  56. data/ext/tmail/base64/base64.c +0 -264
  57. data/ext/tmail/base64/depend +0 -1
  58. data/ext/tmail/base64/extconf.rb +0 -38
  59. data/ext/tmail/scanner_c/MANIFEST +0 -4
  60. data/ext/tmail/scanner_c/depend +0 -1
  61. data/ext/tmail/scanner_c/extconf.rb +0 -38
  62. data/lib/tmail/tmail.rb +0 -1
@@ -0,0 +1,4 @@
1
+ require 'tmail/version'
2
+ require 'tmail/mail'
3
+ require 'tmail/mailbox'
4
+ require 'tmail/core_extensions'
@@ -128,41 +128,6 @@ module TMail
128
128
  'using C.T.Encoding with multipart mail is not permitted'
129
129
  end
130
130
  end
131
-
132
- def create_empty_mail
133
- self.class.new(StringPort.new(''), @config)
134
- end
135
-
136
- def create_reply
137
- setup_reply create_empty_mail()
138
- end
139
-
140
- def setup_reply( m )
141
- if tmp = reply_addresses(nil)
142
- m.to_addrs = tmp
143
- end
144
-
145
- mid = message_id(nil)
146
- tmp = references(nil) || []
147
- tmp.push mid if mid
148
- m.in_reply_to = [mid] if mid
149
- m.references = tmp unless tmp.empty?
150
- m.subject = 'Re: ' + subject('').sub(/\A(?:\s*re:)+/i, '')
151
-
152
- m
153
- end
154
-
155
- def create_forward
156
- setup_forward create_empty_mail()
157
- end
158
-
159
- def setup_forward( mail )
160
- m = Mail.new(StringPort.new(''))
161
- m.body = decoded
162
- m.set_content_type 'message', 'rfc822'
163
- m.encoding = encoding('7bit')
164
- mail.parts.push m
165
- end
166
131
 
167
132
  end
168
133
 
@@ -13,12 +13,12 @@ module TMail
13
13
  from_charset = sub_header("content-type", "charset")
14
14
  case (content_transfer_encoding || "7bit").downcase
15
15
  when "quoted-printable"
16
- # the default charset is set to iso-8859-1 instead of 'us-ascii'.
16
+ # the default charset is set to iso-8859-1 instead of 'us-ascii'.
17
17
  # This is needed as many mailer do not set the charset but send in ISO. This is only used if no charset is set.
18
18
  if !from_charset.blank? && from_charset.downcase == 'us-ascii'
19
19
  from_charset = 'iso-8859-1'
20
20
  end
21
-
21
+
22
22
  Unquoter.unquote_quoted_printable_and_convert_to(quoted_body,
23
23
  to_charset, from_charset, true)
24
24
  when "base64"
@@ -35,9 +35,9 @@ module TMail
35
35
 
36
36
  def body(to_charset = 'utf-8', &block)
37
37
  attachment_presenter = block || Proc.new { |file_name| "Attachment: #{file_name}\n" }
38
-
38
+
39
39
  if multipart?
40
- parts.collect { |part|
40
+ parts.collect { |part|
41
41
  header = part["content-type"]
42
42
 
43
43
  if part.multipart?
@@ -81,13 +81,13 @@ module TMail
81
81
  end
82
82
  end
83
83
  end
84
-
84
+
85
85
  def unquote_quoted_printable_and_convert_to(text, to, from, preserve_underscores=false)
86
86
  text = text.gsub(/_/, " ") unless preserve_underscores
87
87
  text = text.gsub(/\r\n|\r/, "\n") # normalize newlines
88
88
  convert_to(text.unpack("M*").first, to, from)
89
89
  end
90
-
90
+
91
91
  def unquote_base64_and_convert_to(text, to, from)
92
92
  convert_to(Base64.decode(text), to, from)
93
93
  end
@@ -122,7 +122,7 @@ if __FILE__ == $0
122
122
 
123
123
  class TC_Unquoter < Test::Unit::TestCase
124
124
  def test_unquote_quoted_printable
125
- a ="=?ISO-8859-1?Q?[166417]_Bekr=E6ftelse_fra_Rejsefeber?="
125
+ a ="=?ISO-8859-1?Q?[166417]_Bekr=E6ftelse_fra_Rejsefeber?="
126
126
  b = TMail::Unquoter.unquote_and_convert_to(a, 'utf-8')
127
127
  assert_equal "[166417] Bekr\303\246ftelse fra Rejsefeber", b
128
128
  end
@@ -134,7 +134,7 @@ if __FILE__ == $0
134
134
  end
135
135
 
136
136
  def test_unquote_without_charset
137
- a ="[166417]_Bekr=E6ftelse_fra_Rejsefeber"
137
+ a ="[166417]_Bekr=E6ftelse_fra_Rejsefeber"
138
138
  b = TMail::Unquoter.unquote_and_convert_to(a, 'utf-8')
139
139
  assert_equal "[166417]_Bekr=E6ftelse_fra_Rejsefeber", b
140
140
  end
@@ -29,16 +29,20 @@
29
29
  # with permission of Minero Aoki.
30
30
  #++
31
31
 
32
- require 'tmail/require_arch'
32
+ #require 'tmail/require_arch'
33
33
  require 'tmail/utils'
34
+ require 'tmail/config'
34
35
 
35
36
  module TMail
36
- require 'tmail/scanner_r.rb'
37
+ # NOTE: It woiuld be nice if these two libs could boith be called "mailscanner", and
38
+ # the native extension would have precedence. However RubyGems boffs that up b/c
39
+ # it does not gaurantee load_path order.
37
40
  begin
38
- raise LoadError, 'Turn off Ruby extention by user choice' if ENV['NORUBYEXT']
39
- require_arch('scanner_c') #require 'tmail/scanner_c.so'
40
- Scanner = Scanner_C
41
+ raise LoadError, 'Turned off native extentions by user choice' if ENV['NORUBYEXT']
42
+ require('tmail/mailscanner') # c extension
43
+ Scanner = MailScanner
41
44
  rescue LoadError
42
- Scanner = Scanner_R
45
+ require 'tmail/scanner_r'
46
+ Scanner = MailScanner
43
47
  end
44
48
  end
@@ -29,12 +29,11 @@
29
29
 
30
30
  require 'tmail/config'
31
31
 
32
-
33
32
  module TMail
34
33
 
35
- class Scanner_R
34
+ class MailScanner
36
35
 
37
- Version = '0.10.7'
36
+ Version = '0.11.0'
38
37
  Version.freeze
39
38
 
40
39
  MIME_HEADERS = {
@@ -44,9 +43,8 @@ module TMail
44
43
  }
45
44
 
46
45
  alnum = 'a-zA-Z0-9'
47
- atomsyms = %q[ _#!$%&`'*+-{|}~^@/=? ].strip
46
+ atomsyms = %q[ _#!$%&`'*+-{|}~^/=? ].strip
48
47
  tokensyms = %q[ _#!$%&`'*+-{|}~^@. ].strip
49
-
50
48
  atomchars = alnum + Regexp.quote(atomsyms)
51
49
  tokenchars = alnum + Regexp.quote(tokensyms)
52
50
  iso2022str = '\e(?!\(B)..(?:[^\e]+|\e(?!\(B)..)*\e\(B'
@@ -30,8 +30,8 @@
30
30
  module TMail #:nodoc:
31
31
  module VERSION #:nodoc:
32
32
  MAJOR = 1
33
- MINOR = 1
34
- TINY = 1
33
+ MINOR = 2
34
+ TINY = 0
35
35
 
36
36
  STRING = [MAJOR, MINOR, TINY].join('.')
37
37
  end
@@ -0,0 +1,1131 @@
1
+ == Fri Nov 30 08:04:09 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
2
+
3
+ * Closed 16025 - TMail scanner.rb would not parse ATOM chars correctly making it fail tests where the C version passed them. Fixed this by updating the Scanner.rb version to be in step with the C version (there was an extra @ symbol in the ATOM CHARS definition that was not in the C version.) (mikel)
4
+
5
+ == Mon Nov 19 23:15:29 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
6
+
7
+ * Added about 500 lines of documentation to the interface.rb file.
8
+
9
+ * Changed TMail::Mail#sender to have a default "default" value of nil to be in alignment with all the other interface values.
10
+
11
+ == Thu Nov 15 13:26:45 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
12
+
13
+ * Closed 15445 - TMail::Mail#create_forward now returns a new Mail object that has the original mail as an encoded 7 bit multipart attachment. Also moved create_forward and create_reply from tmail/net into tmail/interface as it makes more sense to have it there.
14
+
15
+ * Closed 15643 - TMail::Mail#reply_addresses was returning an empty array if reply_to was set to nil (ie, the header field existed but was empty) instead of returning the from address or default.
16
+
17
+ * Did a BUNCH of documentation of the tmail/interface.rb file.
18
+
19
+ * Made base64_decode and base64_encode into ! versions as they are destructive on the mail body (encodes the body to base64 or decodes it), made aliases for base64_decode and base64_encode to point back to the bang versions. Doing this with a view to change base64_encode to a non destructive version (returns the encoded body) in future versions.
20
+
21
+ = Version 1.1.1. Released Mon Oct 24 21:14:00 2007 +1100
22
+
23
+ == Thu Nov 1 10:02:26 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
24
+
25
+ * Closed Did another patch on the folding, re-read the RFC's and got clarification on when SHOULD and MUST fold. New folding section at the bottom of encode handles various line lengths which include or do not include whitespace
26
+
27
+ == Wed Oct 31 05:10:34 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
28
+
29
+ * Put in an escape clause in the def fold method of class Encode to skip folding of any X- header line.
30
+
31
+ == Sun Oct 28 03:45:16 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
32
+
33
+ * Refactored how the package was going to_s - made the handling of quotation marks inside of the header more consistent and in accordance with the RFCs on the matter (ie, a filename in a content-disposition field paramater filename=README.TXT will not be quoted unless it contains special characters per RFC 1521 )
34
+
35
+ == Sun Oct 28 03:45:16 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
36
+
37
+ * Made the package into a GEM
38
+
39
+ == Sat Oct 27 05:43:36 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
40
+
41
+ * Re-factored the quotation handling - learnt more about how this is implemented by Minero, and re-wrote my handling of it to preserve quotation marks in the headers
42
+
43
+ == Sat Oct 27 05:43:36 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
44
+
45
+ * Closed 15077 - Assigning the body via mail.body would not reparse the email body text. Changed mail.rb to reparse body if assigned via body= String.
46
+
47
+ == Thu Oct 25 05:52:02 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
48
+
49
+ * Moved facade.rb to interface.rb - updated mail.rb to reflect this
50
+
51
+ == Thu Oct 25 05:39:09 GMT 2007 Mikel Lindsaar <raasdnil@gmail.com>
52
+
53
+ * Totally rewrote the README file to be in RDoc format and provide a beginning place for the RDoc documentation
54
+
55
+ * Cleaned up the root directory of all the spurious files.
56
+
57
+ * Merged the Changelog files and made it into RDoc format.
58
+
59
+ * Cleaned up the Bugs and TODO files
60
+
61
+ * Added RDoc headers to each source file.
62
+
63
+ * Started doing the RDoc on the utils.rb file
64
+
65
+ == Thu Oct 25 11:12:00 2007 +1100 Mikel Lindsaar <raasdnil@gmail.com>
66
+
67
+ * Added quickstart page to WWW as well as applied styling to all existing pages in the site.
68
+
69
+ * Uploaded site to rubyforge
70
+
71
+ == Thu Oct 25 9:00:00 2007 Tom <transfire@gmail.com>
72
+
73
+ * Added website to trunk, basic styling and templates, logos and general layout.
74
+
75
+ = Version 0.11.0. Released Mon Oct 24 21:14:00 2007 +1100
76
+
77
+ == Wed Oct 24 17:50:00 2007 +1100 Mikel Lindsaar <raasdnil@gmail.com>
78
+
79
+ * Fixed all but two tests which are one encoding problem with relating to RFC 2231 and another problem where special characters are not properly quoted if they are the name portion of an email address (ie, TMail does not handle the address <"@"@example.com> properly)
80
+
81
+ * Closed #14964 - The TMail from ActionMailer Preview Release 2.0 is now fully merged. All previous tests and examples relating to TMail that were part of ActionMailer 2.0 Preview Release now pass.
82
+
83
+ * Closed #15008 - Fixed handling of multipart content type headers. Now tested against many types of email. TMails' behaviour now is to take any boundary type, if it contains illegal characters, it will wrap it in "" when requesting the content type by mail['content-type] you will receive it unquoted, when outputting the email to_s as a whole you will receive the content-type field with the boundary section quoted if it contains illegal characters.
84
+
85
+ * Replaced id with object_id line 221 in stringio.rb
86
+
87
+ == Wed Oct 24 15:35:00 2007 +1100 Mikel Lindsaar <raasdnil@gmail.com>
88
+
89
+ * Copied over the TMail/*.rb files from the TRUNK version of Rails ActionMailer (2.0 Preview Release) into branch for 0.11.0
90
+
91
+ * Fixed up many broken tests so that they pass (testing errors, including wrong paths etc)
92
+
93
+ * Closed #15002 - Fixed error where handling of MIME content-type headers that had quoted parameters due to including RFC 2045 special characters were being stripped of their quotation marks when the mail object was sent "to_s". Now any quotation marks that were in the original are maintained in the result
94
+
95
+ * Closed #14999 - TMail now "fixes" illegal Content-Type bondary= parameter by wrapping it in double quotation marks per RFC 2045 and also produces this in the mail.to_s method
96
+
97
+ * Added in tmail/core_extensions.rb which installs Object.blank? unless Object already responds_to?(:blank?) ie, we are already in a Rails environment.
98
+
99
+ * Updated names of the test files as a start to cleaning up the tests directory.
100
+
101
+ = Version 0.10.9. Released Mon Oct 22 00:36:00 2007 +1100
102
+
103
+ == Mon Oct 22 22:32:00 2007 Mikel Lindsaar <raasdnil@gmail.com>
104
+
105
+ * General cleanup - converted all files to UTF-8 from the various encodings.
106
+
107
+ == Mon Oct 22 22:00:00 2007 +1100 Mikel Lindsaar <raasdnil@gmail.com>
108
+
109
+ * Fixed all tests so that they now pass - were problems with the times being checked were hard coded for Tokyo time and so would fail in a different time zone. All of these now pass
110
+
111
+ * Fixed handling of MIME content-type header handling so that TMail now quotes any content-type it finds to contain invalid characters per RFC 2045 which are "/", "?" or "=". Per RFC, handling is to put double quotes are put around it with the quote_boundary method, we now do this.
112
+
113
+ * Updated Copyright year for Minero Aoki
114
+
115
+ = Version 0.10.8. Released Fri Feb 20 09:37:34 2004
116
+
117
+ == Fri Feb 20 09:34:40 2004 Minero Aoki <aamine@loveruby.net>
118
+
119
+ * lib/tmail/*.rb, ext/.c: Lesser GPL is LGPL 2.1.
120
+
121
+ * lib/tmail/*.rb, ext/*.c: update Copyright year.
122
+
123
+ == Fri Feb 20 09:33:42 2004 Minero Aoki <aamine@loveruby.net>
124
+
125
+ * Makefile: new target `import'.
126
+
127
+ * Makefile (dist): exectest.rb is useless now because tests do not use runit.
128
+
129
+ * Makefile (dist): remove web/.
130
+
131
+ == Fri Feb 20 09:31:58 2004 Minero Aoki <aamine@loveruby.net>
132
+
133
+ * lib/tmail/stringio.rb: import amstd/stringio.rb rev 1.12.
134
+
135
+ == Fri Feb 20 09:16:20 2004 Minero Aoki <aamine@loveruby.net>
136
+
137
+ * NEWS: new file.
138
+
139
+ == Fri Feb 20 09:02:35 2004 Minero Aoki <aamine@loveruby.net>
140
+
141
+ * Makefile (clean): cleans documentation
142
+
143
+ == Fri Feb 20 09:02:03 2004 Minero Aoki <aamine@loveruby.net>
144
+
145
+ * doc/* .rrd.m: use 'a|b' to expressing "type a or b".
146
+
147
+ == Fri Feb 20 08:57:24 2004 Minero Aoki <aamine@loveruby.net>
148
+
149
+ * doc/* .rrd.m: ( arg ) -> (arg).
150
+
151
+ == Fri Feb 20 08:49:09 2004 Minero Aoki <aamine@loveruby.net>
152
+
153
+ * lib/tmail/mailbox.rb: require 'tmail/textutils' to be independent.
154
+
155
+ == Fri Feb 20 08:35:00 2004 Minero Aoki <aamine@loveruby.net>
156
+
157
+ * Makefile: version 0.10.8.
158
+
159
+ * ext/tmail/scanner_c/scanner_c.c: ditto.
160
+
161
+ * lib/tmail/info.rb: ditto.
162
+
163
+ * lib/tmail/scanner_r.rb: ditto.
164
+
165
+ == Fri Feb 20 08:34:00 2004 Minero Aoki <aamine@loveruby.net>
166
+
167
+ * test/testbase64.rb: moved from ext/tmail/base64.
168
+
169
+ == Mon Nov 3 18:37:46 2003 Minero Aoki <aamine@loveruby.net>
170
+
171
+ * ext/tmail/base64/base64.c: eliminate cc warning.
172
+
173
+ * ext/tmail/base64/base64.c: use StringValue instead of rb_str2cstr if exists.
174
+
175
+ == Mon Nov 3 18:36:15 2003 Minero Aoki <aamine@loveruby.net>
176
+
177
+ * Makefile: replace `make' with $(MAKE) macro.
178
+
179
+ * Makefile: new target `clean'.
180
+
181
+ * ext/tmail/Makefile: replace `make' with $(MAKE) macro.
182
+
183
+ * ext/tmail/Makefile: new target `clean', `distclean'.
184
+
185
+ * lib/tmail/Makefile: add header.
186
+
187
+ == Mon Nov 3 18:34:12 2003 Minero Aoki <aamine@loveruby.net>
188
+
189
+ * lib/tmail/port.rb: #filename -> #path (alias filename)
190
+
191
+ * lib/tmail/port.rb: @filename -> @path
192
+
193
+ * lib/tmail/port.rb (copy_file): simplify.
194
+
195
+ * lib/tmail/port.rb: apply latest coding style.
196
+
197
+ == Sun Oct 12 12:50:35 2003 Minero Aoki <aamine@loveruby.net>
198
+
199
+ * Makefile: new target "test".
200
+
201
+ == Sun Oct 12 12:46:02 2003 Minero Aoki <aamine@loveruby.net>
202
+
203
+ * lib/tmail/textutils.rb: @uniq -> @@uniq, to allow including TextUtils.
204
+
205
+ * test/testtextutils.rb: new file.
206
+
207
+ * test/testtextutils.rb: test TextUtils#new_boundary.
208
+
209
+ == Thu Oct 9 05:10:51 2003 Brian F. Feldman <green@FreeBSD.org>
210
+
211
+ * mailbox.rb (fromaddr): should take parameter.
212
+
213
+ * header.rb (new_from_port): modify typo.
214
+
215
+ == Fri Sep 12 16:54:07 2003 Minero Aoki <aamine@loveruby.net>
216
+
217
+ * sample/sendmail.rb (setup_mail): small refactoring.
218
+
219
+ == Fri Sep 12 16:48:49 2003 Minero Aoki <aamine@loveruby.net>
220
+
221
+ * sample/extract-attachments.rb: new file.
222
+
223
+ == Fri Sep 12 16:23:46 2003 Minero Aoki <aamine@loveruby.net>
224
+
225
+ * lib/tmail/mailbox.rb (UNIXMbox): should be able to trancate mbox file. The patch is contributed
226
+ by Brian Fundakowski.
227
+
228
+ == Thu Aug 28 16:52:55 2003 Minero Aoki <aamine@loveruby.net>
229
+
230
+ * Makefile: install.rb -> setup.rb
231
+
232
+ == Tue Aug 12 09:20:05 2003 Minero Aoki <aamine@loveruby.net>
233
+
234
+ * lib/tmail/mail.rb ([]=): raise BadMessage if multiple headers set.
235
+
236
+ == Thu Aug 7 18:52:10 2003 Minero Aoki <aamine@loveruby.net>
237
+
238
+ * lib/tmail/mail.rb (read_multipart): return if the message have not boundary. [ruby-list:38050]
239
+
240
+ * test/testmail.rb: test it.
241
+
242
+ == Thu Aug 7 18:50:46 2003 Minero Aoki <aamine@loveruby.net>
243
+
244
+ * doc/mailbox.rrd.m: adjust header level.
245
+
246
+ * doc/port.rrd.m: ditto.
247
+
248
+ == Sat Aug 2 21:43:16 2003 Minero Aoki <aamine@loveruby.net>
249
+
250
+ * doc/address.rrd.m: use new ReferenceRD type designator.
251
+
252
+ * doc/config.rrd.m: ditto.
253
+
254
+ * doc/mail.rrd.m: ditto.
255
+
256
+ * doc/mailbox.rrd.m: ditto.
257
+
258
+ * doc/port.rrd.m: ditto.
259
+
260
+ * doc/tmail.rrd.m: ditto.
261
+
262
+ == Tue Jun 24 03:12:24 2003 Minero Aoki <aamine@as600.loveruby.net>
263
+
264
+ * lib/tmail/Makefile: rm -> rm -f.
265
+
266
+ * lib/tmail/Makefile: BSD make does not accept $<.
267
+
268
+ == Wed May 21 16:10:56 2003 Minero Aoki <aamine@loveruby.net>
269
+
270
+ * lib/tmail/mail.rb (set_disposition): tested.
271
+
272
+ * lib/tmail/textutils.rb: new const RFC2231_UNSAFE
273
+
274
+ * lib/tmail/encode.rb (encode_value): use RFC2231_UNSAFE.
275
+
276
+ * lib/tmail/encode.rb (encode_value): encoded hex must use capital A-F.
277
+
278
+ * test/testmail.rb: new method #test_set_disposition.
279
+
280
+ * test/testheader.rb: typo: attached -> attachment
281
+
282
+ * test/testheader.rb: test RFC2231 decoding.
283
+
284
+ == Mon May 19 07:34:01 2003 Minero Aoki <aamine@loveruby.net>
285
+
286
+ * sample/sendmail.rb: rewritten.
287
+
288
+ == Mon May 19 06:36:41 2003 Minero Aoki <aamine@loveruby.net>
289
+
290
+ * lib/tmail/mail.rb: include facade.rb.
291
+
292
+ * lib/tmail/facade.rb: removed.
293
+
294
+ * lib/tmail/utils.rb: move TextUtils modules in to tmail/textutils.rb.
295
+
296
+ * lib/tmail/textutils.rb: new file.
297
+
298
+ * lib/tmail/encode.rb: tmail/utils -> tmail/textutils
299
+
300
+ * lib/tmail/header.rb: ditto.
301
+
302
+ * lib/tmail/parser.y: ditto.
303
+
304
+ * lib/tmail/scanner.rb: ditto.
305
+
306
+ * lib/tmail/obsolete.rb: obsolete Mail.loadfrom, load_from.
307
+
308
+ * lib/tmail/obsolete.rb: Mail#from_address is not obsolete.
309
+
310
+ == Mon May 19 06:22:06 2003 Minero Aoki <aamine@loveruby.net>
311
+
312
+ * lib/tmail/Makefile: new task `clean' and `distclean'. [ruby-list:37687]
313
+
314
+ * ext/tmail/Makefile: ditto.
315
+
316
+ == Sun May 18 03:02:57 2003 Minero Aoki <aamine@loveruby.net>
317
+
318
+ * lib/tmail/Makefile: change racc log file name.
319
+
320
+ == Sun May 18 03:01:27 2003 Minero Aoki <aamine@loveruby.net>
321
+
322
+ * lib/tmail/parser.y: remove useless (last added) rule `received_spec'.
323
+
324
+ == Sun May 18 03:00:16 2003 Minero Aoki <aamine@loveruby.net>
325
+
326
+ * lib/tmail/parser.y (local): allow "foo.bar." and "foo..bar".
327
+
328
+ * lib/tmail/address.rb: allow empty "word".
329
+
330
+ * lib/tmail/address.rb (local): return '""' on empty local.
331
+
332
+ * test/testaddress.rb (test_parse__dot): test "foo.bar." and "foo..bar".
333
+
334
+ * test/testaddress.rb (test_parse__outofspec): Now empty local is legal.
335
+
336
+ == Sun May 18 02:56:07 2003 Minero Aoki <aamine@loveruby.net>
337
+
338
+ * Makefile (dist): version tag is like V1-2-3 ('_' -> '-')
339
+
340
+ == Sun May 18 02:04:34 2003 Minero Aoki <aamine@loveruby.net>
341
+
342
+ * lib/tmail/info.rb: update version.
343
+
344
+ * lib/tmail/scanner_r.rb: ditto.
345
+
346
+ * ext/tmail/scanner_c/scanner_c.c: ditto.
347
+
348
+ == Sun May 18 02:03:42 2003 Minero Aoki <aamine@loveruby.net>
349
+
350
+ * Makefile: new task `update'.
351
+
352
+ * Makefile (dist): export selected version.
353
+
354
+ == Sun May 18 01:00:47 2003 Minero Aoki <aamine@loveruby.net>
355
+
356
+ * lib/tmail/Makefile: fix quoting bug.
357
+
358
+ == Sun May 18 00:56:24 2003 Minero Aoki <aamine@loveruby.net>
359
+
360
+ * Makefile: define DEBUG=true on local compilation.
361
+
362
+ * lib/tmail/Makefile: add debug options if defined(DEBUG)
363
+
364
+ == Sun May 18 00:47:26 2003 Minero Aoki <aamine@loveruby.net>
365
+
366
+ * Makefile: put install.rb into packages.
367
+
368
+ * Makefile: put COPYING into packages.
369
+
370
+ == Sun May 18 00:44:28 2003 Minero Aoki <aamine@loveruby.net>
371
+
372
+ * Makefile: create lib/tmail/parser.rb before packing.
373
+
374
+ * lib/tmail/Makefile: use racc -E.
375
+
376
+ == Sun May 18 00:36:56 2003 Minero Aoki <aamine@loveruby.net>
377
+
378
+ * test/kcode.rb: "class RUNIT::TestCase" syntax is 1.8 feature.
379
+
380
+ == Sun May 18 00:28:22 2003 Minero Aoki <aamine@loveruby.net>
381
+
382
+ * Makefile: new task `doc'.
383
+
384
+ * Makefile: new task `site'.
385
+
386
+ * doc/index.html.m -> doc/index.rhtml.m
387
+
388
+ == Sat May 17 23:54:22 2003 Minero Aoki <aamine@loveruby.net>
389
+
390
+ * Remake: removed.
391
+
392
+ == Sat May 17 20:50:43 2003 Minero Aoki <aamine@loveruby.net>
393
+
394
+ * doc/address.rrd.m: add 'j' and '.' mark explicitly.
395
+
396
+ * doc/basics.rd.m: ditto.
397
+
398
+ * doc/config.rrd.m: ditto.
399
+
400
+ * doc/details.rd.m: ditto.
401
+
402
+ * doc/index.html.m: ditto.
403
+
404
+ * doc/mail.rrd.m: ditto.
405
+
406
+ * doc/mailbox.rrd.m: ditto.
407
+
408
+ * doc/port.rrd.m: ditto.
409
+
410
+ * doc/tmail.rrd.m: ditto.
411
+
412
+ * doc/usage.rd.m: ditto.
413
+
414
+ == Sat May 17 20:48:34 2003 Minero Aoki <aamine@loveruby.net>
415
+
416
+ * Makefile: cvs export option was wrong.
417
+
418
+ == Sat May 17 20:37:23 2003 Minero Aoki <aamine@loveruby.net>
419
+
420
+ * rename doc/
421
+ * -> doc/
422
+ * .m
423
+
424
+ == Sat May 17 20:13:40 2003 Minero Aoki <aamine@loveruby.net>
425
+
426
+ * Makefile: wrote .PHONY.
427
+
428
+ * ext/tmail/Makefile: wrote .PHONY.
429
+
430
+ == Fri May 16 22:55:52 2003 Minero Aoki <aamine@loveruby.net>
431
+
432
+ * Makefile: remove useless old code.
433
+
434
+ * lib/tmail/Makefile: new file.
435
+
436
+ * lib/tmail/stringio.rb: imported from amstd.
437
+
438
+ * ext/tmail/Makefile: new file.
439
+
440
+ == Fri May 16 22:27:28 2003 Minero Aoki <aamine@loveruby.net>
441
+
442
+ * .cvsignore -> lib/tmail/.cvsignore
443
+
444
+ == Fri May 16 22:23:57 2003 Minero Aoki <aamine@loveruby.net>
445
+
446
+ * accept setup.rb hierarchy in the repository.
447
+
448
+ == Fri May 16 21:18:44 2003 Minero Aoki <aamine@loveruby.net>
449
+
450
+ * encode.rb (concat_E): force to flush @text before process.
451
+
452
+ * encode.rb: update coding style.
453
+
454
+ * test/testmail.rb: test if comments are decoded/encoded.
455
+
456
+ == Fri May 16 21:01:55 2003 Minero Aoki <aamine@loveruby.net>
457
+
458
+ * test/testkcode.rb: new file.
459
+
460
+ * test/testmail.rb: use kcode.rb.
461
+
462
+ * test/testheader.rb: ditto.
463
+
464
+ == Fri May 16 20:58:01 2003 Minero Aoki <aamine@loveruby.net>
465
+
466
+ * mailbox.rb (MhMailbox#inspect): fix.
467
+
468
+ * mailbox.rb (UNIXMbox): new method UNIXMbox.static_new
469
+
470
+ * mailbox.rb (UNIXMbox): does update check of mail spool.
471
+
472
+ * mailbox.rb (UNIXMbox): fix temporal directory clean up.
473
+
474
+ == Fri May 16 20:50:40 2003 Minero Aoki <aamine@loveruby.net>
475
+
476
+ * facade.rb (Mail#friendly_from): use comments.
477
+
478
+ == Fri May 16 20:49:58 2003 Minero Aoki <aamine@loveruby.net>
479
+
480
+ * header.rb: update coding style.
481
+
482
+ == Fri May 16 20:44:49 2003 Minero Aoki <aamine@loveruby.net>
483
+
484
+ * parser.y (Parser#parse): decode comments.
485
+
486
+ * test/testheader.rb: test if comments are decoded.
487
+
488
+ == Fri May 16 20:42:59 2003 Minero Aoki <aamine@loveruby.net>
489
+
490
+ * mail.rb: rename method: Mail#select -> values_at
491
+
492
+ == Mon Apr 28 07:55:52 2003 Minero Aoki <aamine@loveruby.net>
493
+
494
+ * facade.rb (to, cc, bcc, from, reply_to): support AddressGroup.
495
+
496
+ * test/testmail.rb (to, cc, bcc, from, reply_to): ditto.
497
+
498
+ == Mon Apr 28 07:54:31 2003 Minero Aoki <aamine@loveruby.net>
499
+
500
+ * facade.rb: escape ']' following warning.
501
+
502
+ * scanner_r.rb: ditto.
503
+
504
+ == Sat Apr 5 01:40:44 2003 Minero Aoki <aamine@loveruby.net>
505
+
506
+ * Makefile: implement task `dist'.
507
+
508
+ == Sat Apr 5 01:24:08 2003 Minero Aoki <aamine@loveruby.net>
509
+
510
+ * b64 -> base64
511
+
512
+ * b64/tmbase64.c -> base64/base64.c
513
+
514
+ * base64/extconf.rb: Shared object name is 'base64.so'.
515
+
516
+ * encode.rb: require tmail/base64.rb explicitly.
517
+
518
+ == Sat Apr 5 01:22:40 2003 Minero Aoki <aamine@loveruby.net>
519
+
520
+ * Makefile: new task 'dist'.
521
+
522
+ == Sat Apr 5 01:02:40 2003 Minero Aoki <aamine@loveruby.net>
523
+
524
+ * Makefile: new file.
525
+
526
+ == Sat Apr 5 01:01:48 2003 Minero Aoki <aamine@loveruby.net>
527
+
528
+ * mv rmails.rb scanner_r.rb
529
+
530
+ * mv sc scanner_c
531
+
532
+ * mv sc/cmails.c scanner_c/scanner_c.c
533
+
534
+ * mv T test
535
+
536
+ == Sat Apr 5 00:30:53 2003 Minero Aoki <aamine@loveruby.net>
537
+
538
+ * mbox.rb: new file. Added for backward compatibility.
539
+
540
+ == Sat Apr 5 00:30:06 2003 Minero Aoki <aamine@loveruby.net>
541
+
542
+ * mbox.rb: renamed to mailbox.rb.
543
+
544
+ * mailbox.rb: new file.
545
+
546
+ == Sat Apr 5 00:30:06 2003 Minero Aoki <aamine@loveruby.net>
547
+
548
+ * mp.y -> parser.y
549
+
550
+ == Fri Nov 15 17:56:01 2002 Minero Aoki <aamine@loveruby.net>
551
+
552
+ * sc/mails.c: missing prototype.
553
+
554
+ = Version 0.10.6. Released Sun Nov 10 23:19:45 2002
555
+
556
+ == Sun Nov 10 23:19:17 2002 Minero Aoki <aamine@loveruby.net>
557
+
558
+ * doc/mail.rrd: format examples correctly.
559
+
560
+ == Sun Nov 10 22:59:08 2002 Minero Aoki <aamine@loveruby.net>
561
+
562
+ * doc/mail.rrd: add Mail#type_param, disposition_param.
563
+
564
+ == Sun Nov 10 22:37:42 2002 Minero Aoki <aamine@loveruby.net>
565
+
566
+ * address.rb: adjust to new coding rule.
567
+
568
+ * encode.rb: ditto.
569
+
570
+ * header.rb: ditto.
571
+
572
+ * mail.rb: ditto.
573
+
574
+ * mbox.rb: ditto.
575
+
576
+ * mp.y: ditto.
577
+
578
+ * net.rb: ditto.
579
+
580
+ * obsolete.rb: ditto.
581
+
582
+ * port.rb: ditto.
583
+
584
+ * rmails.rb: ditto.
585
+
586
+ == Sun Nov 10 22:37:01 2002 Minero Aoki <aamine@loveruby.net>
587
+
588
+ * T/testmail.rb: test whether the `default' arg is working.
589
+
590
+ * utils.rb: decode (wrongly encoded) parameters for Content-Disposition.
591
+
592
+ * T/testmail.rb: test MIME-B decode for disposition parameters.
593
+
594
+ * facade.rb: set_disposition should overwrites params.
595
+
596
+ * facade.rb: set_content_type should overwrites params.
597
+
598
+ == Sun Nov 10 20:46:25 2002 Minero Aoki <aamine@loveruby.net>
599
+
600
+ * facade.rb (set_content_type): reject wrong text like "text".
601
+
602
+ == Sun Nov 10 20:15:15 2002 Minero Aoki <aamine@loveruby.net>
603
+
604
+ * facade.rb: TMail::Mail#message_id, mime_version, content_type, sub_type, transfer_encoding,
605
+ disposition: default value did not work.
606
+
607
+ * facade.rb: new method TMail::Mail#disposition_params, disposition_param
608
+
609
+ == Sun Nov 10 20:13:35 2002 Minero Aoki <aamine@loveruby.net>
610
+
611
+ * mail.rb: new method TMail::Mail#each_port.
612
+
613
+ == Sun Nov 10 20:12:50 2002 Minero Aoki <aamine@loveruby.net>
614
+
615
+ * address.rb: type -> self.class
616
+
617
+ * header.rb: ditto.
618
+
619
+ * port.rb: ditto.
620
+
621
+ == Sun Nov 10 20:11:13 2002 Minero Aoki <aamine@loveruby.net>
622
+
623
+ * T/testmail.rb: check "Content-Type: text" (missing subtype).
624
+
625
+ == Sun Nov 10 20:10:22 2002 Minero Aoki <aamine@loveruby.net>
626
+
627
+ * sc/mails.c: Check_Type -> StringValue.
628
+
629
+ * sc/mails.c: reformat.
630
+
631
+ == Thu Nov 7 05:11:21 2002 Minero Aoki <aamine@loveruby.net>
632
+
633
+ * mbox.rb (UNIXMbox): fix typo. (thanks: Brian Fundakowski Feldman)
634
+
635
+ == Wed Aug 14 18:58:35 2002 Minero Aoki <aamine@loveruby.net>
636
+
637
+ * mail.rb: does not delay to read message body unless @port.reproducible?
638
+
639
+ * port.rb: new method Port#reproducible?
640
+
641
+ (thanks: Simon Conrad-Armes)
642
+
643
+ == Wed Aug 14 18:53:52 2002 Minero Aoki <aamine@loveruby.net>
644
+
645
+ * facade.rb: modify format.
646
+
647
+ = Version 0.10.5. Released Wed Jul 10 20:47:15 2002
648
+
649
+ == Wed Jul 10 20:25:16 2002 Minero Aoki <aamine@loveruby.net>
650
+
651
+ * facade.rb: new method Mail#header_string.
652
+
653
+ * facade.rb: new method Mail#type_params, type_param.
654
+
655
+ == Wed Jul 10 20:23:29 2002 Minero Aoki <aamine@loveruby.net>
656
+
657
+ * port.rb: reduce warnings.
658
+
659
+ == Wed Jul 10 20:23:03 2002 Minero Aoki <aamine@loveruby.net>
660
+
661
+ * b64/depend, sc/depend:
662
+ * .o depend on Makefile and
663
+ * .h
664
+
665
+ == Thu May 30 22:25:11 2002 Minero Aoki <aamine@loveruby.net>
666
+
667
+ * mbox.rb (Maildir#new_port): use unique sequence number instead of sleep & try. (patched by
668
+ Kikutani, Makoto)
669
+
670
+ * mbox.rb (Maildir#new_port): takes optional block to initialize mail file.
671
+
672
+ * port.rb (MaildirPort): new method #move_to_new, #move_to_cur.
673
+
674
+ == Thu May 30 21:28:52 2002 Minero Aoki <aamine@loveruby.net>
675
+
676
+ * header.rb: internal_new had not initialized @comment. (reported by Kikutani, Makoto)
677
+
678
+ * encode.rb (HFdecoder): quote phrase.
679
+
680
+ == Thu May 30 20:44:27 2002 Minero Aoki <aamine@loveruby.net>
681
+
682
+ * header.rb (ReturnPathHeader): support null address spec. (reported by Kikutani, Makoto)
683
+
684
+ == 0.10.4 (2002-05-17)
685
+
686
+ * Maildir が動いていなかった
687
+
688
+ * Maildir#each_port の渡すファイルが名前でソートされていたのを 時間順になるようにした (patched by Kukutani, Makoto)
689
+
690
+ * 空の Return-Path で落ちないようにした (reported by Morikawa-san) English: Maildir did not work correctly.
691
+
692
+ * Maildir#each_port yields filenames sorted by time, not filename. (patched by Kukutani, Makoto)
693
+
694
+ * allows empty return path (Return-Path: <>). (reported by Morikawa-san)
695
+
696
+ == 0.10.3 (2002-05-07)
697
+
698
+ * バージョン 1.0 で削除する予定のメソッドを obsolete.rb にまとめた。 これを require しないことで 1.0 の挙動をテストできる。(デフォルトでは require する)
699
+
700
+ * Mail の set 系メソッドほとんどがバグのため動かなかった* 新しいメソッド MhMailbox,UNIXMbox,Maildir#reverse_each_port (suggested by Takabayashi, Satoru)
701
+
702
+ * ドキュメントにある TMail::Mail#content_type が定義されていなかった (reported by yoshihisa masuda)
703
+
704
+ * Content-Type の main/sub のあとに ';' を許すようにした (suggested by Lars Christensen)
705
+
706
+ * Mutt の作る Maildir ファイルをパースできなかった* マルチパートメールが終端されていないとき、to_s で落ちる (reported by Kikutani, Makoto) English: devide obsolete methods into obsolete.rb.* Mail#to=, cc=, bcc=, ... did not work.* new methods MhMailbox,UNIXMbox,Maildir#reverse_each_port (suggested by Takabayashi, Satoru)
707
+
708
+ * TMail::Mail#content_type is described in document but not defined. (reported by yoshihisa masuda)
709
+
710
+ * allow ';' after content type. (suggested by Lars Christensen)
711
+
712
+ * TMail::Maildir fails to parse maildir filename created by Mutt.
713
+
714
+ * Unterminted multipart mail causes unexpected exception. (reported by Kikutani, Makoto)
715
+
716
+ == 0.10.2 (2002-02-21)
717
+
718
+ * UnstructuredHeader#to_s が落ちるバグを修正 (patched by Satoru Takabayashi)
719
+
720
+ * ReceivedHeader で、via があるのに by がないとき、 またはその逆のときに結果がおかしくなるバグを修正 (patched by Satoru Takabayashi)
721
+
722
+ * TMail::TextUtils.quote_phrase が落ちるバグを修正 (reported by Matt Armstrong) English: UnstructuredHeader#to_s did not work. (patched by Satoru Takabayashi)
723
+
724
+ * ReceivedHeader#to_s did not work when h.via exists and h.by not exists (and vice versa). (patched by Satoru Takabayashi)
725
+
726
+ * TMail::TextUtils.quote_phrase did not work. (reported by Matt Armstrong)
727
+
728
+ == 0.10.1 (2002-02-03)
729
+
730
+ * テストスクリプトをパッケージに追加。メールアドレスのパースに 関するテストスクリプトは大部分を RubyMail 0.2 (by Matt Armstrong) からもらいました。
731
+
732
+ * 新しいクラス TMail::Config
733
+
734
+ * 細かいパーサのバグをたくさん直した
735
+
736
+ * クオート中の生 JIS 文字列を許すようにした
737
+
738
+ * TMail::File
739
+
740
+ * Stream は削除 (通常の File で置きかえた)。 English: test scripts added. Many test cases are imported from RubyMail 0.2, written by Matt Armstrong.
741
+
742
+ * new class TMail::Config
743
+
744
+ * Minor parser bugs are
745
+ eliminated.
746
+
747
+ * Parser supports raw iso2022jp strings appeared in quoted-words.
748
+
749
+ * TMail::File
750
+
751
+ * Stream classes removed.
752
+
753
+ == 0.10.0 (2002-01-06)
754
+
755
+ * いくつか非互換の変更を加えた。 詳細はファイル Incompatibilities を参照のこと。
756
+
757
+ * amstd strscan を使うのをやめた
758
+
759
+ * mail.so は 1.7 最新では (問題なく動くが) ちょっと危険 English: changes many method features of TMail::Mail. see file Incompatibilities.
760
+
761
+ * TMail does not depend on amstd/strscan library.
762
+
763
+ * mails.so was riskful under latest 1.7
764
+
765
+ == 0.9.9 (2001-11-15)
766
+
767
+ * typo in tmail_attr_writer (patched by Shirai, Kaoru) English: typo in tmail_attr_writer (patched by Shirai, Kaoru)
768
+
769
+ == 0.9.8 (2001-09-07)
770
+
771
+ * 間違って 0.9.7 のアーカイブを上書きして壊してたのでその再修正 (thanks Masahiro Sekiya, Joseph McDonald)
772
+
773
+ * amstd/futils から fileutils に移行
774
+
775
+ * インストーラを setup.rb から install.rb (3.0.0) に移行 English: modify 0.9.7(2) pack miss. (thanks Masahiro Sekiya, Joseph McDonald)
776
+
777
+ * amstd/futils -> fileutils
778
+
779
+ * setup.rb -> install.rb 3.0.0
780
+
781
+ == 0.9.7 (2001-07-06)
782
+
783
+ * HeaderField#body が落ちるバグを修正
784
+
785
+ * Mail クラスのドキュメントを同期 English: modify bug in HeaderField#body
786
+
787
+ * sync TMail::Mail class reference manual
788
+
789
+ == 0.9.6 (2001-06-20)
790
+
791
+ * 新しいモジュール TMail::Base64
792
+
793
+ * デフォルトでは本体の改行コード変換を行わない English: new module TMail::Base64
794
+
795
+ * does not convert line terminator by default.
796
+
797
+ == 0.9.5 (2001-05-27)
798
+
799
+ * ヘッダエンコードで fold すると空白が消えるバグを修正 (thanks Akira Yamada)
800
+
801
+ * RFC2231 に半分対応 (fold に対応してない) (thanks Yasuhiro Arima) English: spaces were too removed when folding (thanks Akira Yamada)
802
+
803
+ * support RFC2231 (still imcomplete) (reported by Yasuhiro Arima)
804
+
805
+ == 0.9.4 (2001-04-25)
806
+
807
+ * インストーラをアップデート
808
+
809
+ * Mail.load
810
+
811
+ * Mail#strftime
812
+
813
+ * Ruby 1.4 に対応 English: update installer
814
+
815
+ * Mail.load
816
+
817
+ * Mail#strftime
818
+
819
+ * supports Ruby 1.4 again
820
+
821
+ == 0.9.3 (2001-03-10)
822
+
823
+ * インストーラをアップデート
824
+
825
+ * TMail::Mail.boundary のドキュメントが残ってた (TMail.new_boundary に移行)
826
+
827
+ * ヘッダの最後に改行がない場合を考慮 English: update installer
828
+
829
+ * remove TMail::Mail.boundary,msgid from document (use TMail.new_boundary, new_msgid)
830
+
831
+ * no need of NL at the tail of header
832
+
833
+ == 0.9.2 (2001-03-08)
834
+
835
+ * HF#inspect・Address#inspect の動作を変更
836
+
837
+ * Ruby バージョンのスキャナを KCODE に動的対応させた
838
+
839
+ * ライブラリのエントリポイントを 'tmail' に変更 ('tmail/tmail' も使えるが 1.0 あたりでなくすかも) English: HF#inspect, Address#inspect changed
840
+
841
+ * support SJIS in scanner
842
+
843
+ * library entry point is 'tmail' again (<- 'tmail/tmail')
844
+
845
+ == 0.9.1 (2001-03-02)
846
+
847
+ * マルチパートのパースにバグ English: bug in parsing MIME multipart
848
+
849
+ == 0.9.0 (2001-02-24)
850
+
851
+ * to_s, inspect の動作変更
852
+
853
+ * Mail#to, from などのデフォルト値が '' から nil に変更 English: change Mail#to_s/inspect action
854
+
855
+ * default value of Mail#to, from is now nil (not '')
856
+
857
+ == 0.8.18 (2001-01-27)
858
+
859
+ * push に引数のないところがあった
860
+
861
+ * Array#filter を使わないようにした (thanks l@kondara) English: modify push without arg
862
+
863
+ * do not use Array#filter (thanks l@kondara)
864
+
865
+ == 0.8.17 (2001-01-26)
866
+
867
+ * 日本語文字のエンコードで落ちるバグを修正 (thanks 小沢さん) English: modify MIME encoding bug
868
+
869
+ == 0.8.16 (2001-01-22)
870
+
871
+ * mails.so をスタティックリンクでも大丈夫なように修正 English: modify mails.so for static link
872
+
873
+ == 0.8.15 (2000-11-28)
874
+
875
+ * HFencoder のバグを修正 (thanks 前田修吾さん) English: debug HFencoder (thanks Shugo Maeda)
876
+
877
+ == 0.8.14 (2000-11-18)
878
+
879
+ * DateH#date= にバグ (thanks 前田修吾さん)
880
+
881
+ * StringH をデコードする時 EOL を消してから nkf に渡す
882
+
883
+ * Mail#ordered_each
884
+
885
+ * eof の時 StringPort#read_all、copy_to が失敗する English: bug in DateH#date= (thanks Shugo Maeda)
886
+
887
+ * gsub(EOL, '') before nkf
888
+
889
+ * Mail#ordered_each
890
+
891
+ * StringPort#read_all, copy_to failed if eof
892
+
893
+ == 0.8.13 (2000-09-19)
894
+
895
+ * MboxLoader が動かなかった (thanks 長沢研二さん)
896
+
897
+ * HeaderField#new_header English: MboxLoader was not work (reported by Kenji Nagasawa)
898
+
899
+ * HeaderField#new_header
900
+
901
+ == 0.8.12 (2000-07-13)
902
+
903
+ * scanner.rb の移動に対応 (thanks やまだあきらさん) English: racc/scanner.rb -> scanner.rb (thanks akira yamada)
904
+
905
+ == 0.8.11 (2000-05-29)
906
+
907
+ * HFencoder#value のエンコード部分が間違ってた
908
+
909
+ * TMail::CONTROL
910
+
911
+ * 日本語マニュアルが英語になっていた (泣。thanks るびきちさん) English: HFencoder#value encoding was wrong
912
+
913
+ * TMail::CONTROL
914
+
915
+ * all doc.ja/
916
+
917
+ * .html were ENGLISH (reported by rubikitch)
918
+
919
+ == 0.8.10 (2000-05-18)
920
+
921
+ * TMail.zonestr2i の返り値が間違っていた (thanks 刀野暢洋さん)
922
+
923
+ * datetime の秒が捨てられていた English: return values of TMail.zonestr2i was wrong (patched by tachino Nobuhiro)
924
+
925
+ * seconds in date-time was wrongly discarded
926
+
927
+ == 0.8.9 (2000-05-16)
928
+
929
+ * インストーラのアップデートと修正 (thanks rubikitch) English: update installer (thanks rubikitch)
930
+
931
+ == 0.8.8 (2000-05-12)
932
+
933
+ * sample/sendmail
934
+
935
+ * TMail#date=, mime_version=
936
+
937
+ * phrase のクオートを修正
938
+
939
+ * amstd アップデート (1.7.0) English: sample/sendmail
940
+
941
+ * TMail#date=, mime_version=
942
+
943
+ * modify phrase quoting
944
+
945
+ * update amstd package (1.7.0)
946
+
947
+ == 0.8.7 (2000-05-08)
948
+
949
+ * mails.rb: = じゃなくて == (thanks rubikitch)
950
+
951
+ * Racc ランタイムアップデート (1.0)
952
+
953
+ * amstd アップデート (1.6.2) English: mails.rb: not =, == (thanks rubikitch)
954
+
955
+ * update Racc runtime (1.0)
956
+
957
+ * update amstd package (1.6.2)
958
+
959
+ == 0.8.6 (2000-03-17)
960
+
961
+ * Racc ランタイムアップデート (0.12)
962
+
963
+ * strscan アップデート (0.5.5) English: update Racc runtime (0.12)
964
+
965
+ * update strscan package (0.5.5)
966
+
967
+ == 0.8.5 (2000-03-09)
968
+
969
+ * accept がマルチパートの時変になるバグ修正
970
+
971
+ * HeaderField#illegal?, empty?
972
+
973
+ * 致命的なとこだけスレッドに対応した English: Mail#accept had bug when multipart
974
+
975
+ * HeaderField#illegal?, empty?
976
+
977
+ * thread safe (only critical part)
978
+
979
+ == 0.8.4 (2000-03-09)
980
+
981
+ * ruby 1.5 での Symbol 導入に対応 English: for Symbol in ruby 1.5
982
+
983
+ == 0.8.3 (2000-03-04)
984
+
985
+ * Address#local,domain
986
+
987
+ * phrase、value などの文字列化の精度を改善した English: Address#local,domain
988
+
989
+ * better string convertion
990
+
991
+ == 0.8.2 (2000-02-23)
992
+
993
+ * FilePort#filename は public English: FilePort#filename is public
994
+
995
+ == 0.8.1 (2000-02-20)
996
+
997
+ * アドレスがない時でも Mail#to,from などが落ちないよう修正 English: modify Mail#to, from... for no addresses
998
+
999
+ == 0.8.0 (2000-02-19)
1000
+
1001
+ * 全てのクラスを TMail モジュールの中で定義
1002
+
1003
+ * スキャナを拡張モジュールにした
1004
+
1005
+ * TMail::Mail#body_port
1006
+
1007
+ * TMail::Mail#encoded, decoded
1008
+
1009
+ * ヘッダの文字列化システムが大きく変わった English: moves all classes into module TMail
1010
+
1011
+ * make scanner ruby extention
1012
+
1013
+ * TMail::Mail#body_port
1014
+
1015
+ * TMail::Mail#encoded, decoded
1016
+
1017
+ == 0.7.5 (2000-01-09)
1018
+
1019
+ * Racc の最新バージョンに対応 English: modify for racc 0.10.8
1020
+
1021
+ == 0.7.4 (1999-11-10)
1022
+
1023
+ * 数字のみのアカウントが変になる
1024
+
1025
+ * inspect がまたバグってた
1026
+
1027
+ * port.rb の typo
1028
+
1029
+ * amstd に対応 (must.rb -> amstd/must.rb) (all modifications are patched by Shugo Maeda) English: digit only account was wrong handled
1030
+
1031
+ * TMail#inspect contained bug
1032
+
1033
+ * type in port.rb
1034
+
1035
+ * amstd (must.rb -> amstd/must.rb) (all modifications are patched by Shugo Maeda)
1036
+
1037
+ == 0.7.3 (1999-11-06)
1038
+
1039
+ * ホスト名なしのアドレスを通すように修正 (thanks ts さん)
1040
+
1041
+ * ファイルをディレクトリに入れた (tmail.rb -> tmail/tmail.rb)
1042
+
1043
+ * racc 0.10 に対応
1044
+
1045
+ * パッケージングがかなり変化 English: parse error on address without hostname (patched by ts)
1046
+
1047
+ * main files are in tmail/ (tmail.rb -> tmail/tmail.rb)
1048
+
1049
+ * modified for racc 0.10
1050
+
1051
+ * wrote setup.rb
1052
+
1053
+ == 0.7.2 (1999-09-29)
1054
+
1055
+ * タイムゾーン関連のバグを修正
1056
+
1057
+ * Received: がひとつだけになってしまうバグを修正
1058
+
1059
+ * to_s がいろいろエンバグしてたのを修正 (thanks 前田修吾さん) English: about timezone
1060
+
1061
+ * multi Received: handling was wrong
1062
+
1063
+ * to_s contains bugs (patched by Shugo Maeda)
1064
+
1065
+ == 0.7.1 (1999-09-28)
1066
+
1067
+ * 細かいバグ修正
1068
+
1069
+ * ドキュメントの更新を忘れてた
1070
+
1071
+ * コメントをとりだせるようにした English: modify little bugs
1072
+
1073
+ * update documents
1074
+
1075
+ * can handle comments for structured header
1076
+
1077
+ == 0.7.0 (1999-09-02)
1078
+
1079
+ * ヘッダオブジェクトの遅延生成
1080
+
1081
+ * mailp.y: FROM VIA なども ATOM として評価するようにした。atom 追加 English: lazy header contruction
1082
+
1083
+ == 0.6.0 (1999-07-31)
1084
+
1085
+ * 入出力を port.rb に一本化 English: use port.rb
1086
+
1087
+ == 0.5.2 (1999-06-26)
1088
+
1089
+ * strscan に対応
1090
+
1091
+ * buffer.rb をやめ extiter.rb を使用 English: use strscan
1092
+
1093
+ * use extiter.rb, not buffer.rb
1094
+
1095
+ == 0.5.1 (1999-06-14)
1096
+
1097
+ * mailp.y を Racc 0.9 に対応
1098
+
1099
+ * 死ぬ気で英語マニュアルをつけた English: rewrite mailp.y for racc0.9.x
1100
+
1101
+ * wrote English manual
1102
+
1103
+ == 0.5.0 (1999-06-03)
1104
+
1105
+ * Header クラスを廃止
1106
+
1107
+ * recycle.rb buffer.rb を使用 English: now Header class is obsolute
1108
+
1109
+ * use recycle.rb, buffer.rb
1110
+
1111
+ == 0.4.8 (1999-05-?)
1112
+
1113
+ * パーサの精度が向上
1114
+
1115
+ * タイプミスなどをいくつか修正 English: modify mail parser
1116
+
1117
+ * modify some typos
1118
+
1119
+ == 0.3.0 (?)
1120
+
1121
+ == 0.2.0 (1998-10-30)
1122
+
1123
+ * まだ mail modules と呼ばれていた English: still named "Mail Modules"
1124
+
1125
+ == 0.1.0 (1998-10-26) .
1126
+
1127
+ * bug fix
1128
+
1129
+ == 0.0.0 (1998-10-23) .
1130
+
1131
+ * first release