2007-12-05 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System / System.Net.Mail / ChangeLog
1 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * MailMessage.cs : fixing cosmetic .net compatibility. Automatically
4           fill ASCII when guessed encoding is nothing.
5
6 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
7
8         * SmtpClient.cs : fold base64 string at 76 characters.
9           Should fix bug #344974.
10
11 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
12
13         * Attachment.cs : use correct TransferEncoding when (Text)Encoding
14           is specified.
15         * MailMessage.cs : ContentTransferEncoding implementation went into
16           ContentType.
17
18 2007-12-04  Arina Itkes <arinai@mainsoft.com>
19
20         * SmtpException.cs, SmtpFailedRecipientException.cs,
21           SmtpFailedRecipientsException.cs: 
22           Changes for SOAP serialization compatibility with .NET. 
23
24 2007-11-05  Atsushi Enomoto  <atsushi@ximian.com>
25
26         fixed bug #339037.
27         * AlternateView.cs : CreateAlternateViewFromString() allows null
28           Encoding.
29         * SmtpClient.cs : looks like when Body is null and AlternativeViews
30           contains only 1 item, then the alternate view becomes as if it
31           were just a body. To make this possible, added couple of more
32           transfer-encoding conversion methods.
33           For more AlternateViews cases, Body is treated
34           as empty. With attachments it is even complicated: those alternate
35           views are just in one boundary, so do not send empty string.
36           Removed debug output (Console.WriteLine).
37
38           What a mess.
39
40 2007-10-30 Arina Itkes <arinai@mainsoft.com>
41
42         * SmtpClient.cs: Fix of SmtpClient.Read() method:
43         Added check of string position before calling 
44         Substring and IndexOf methods of string.
45
46 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
47
48         * SmtpClient.cs : small async refactory.
49
50 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
51
52         * SmtpClient.cs : Implemented async operations.
53
54 2007-10-23  Atsushi Enomoto  <atsushi@ximian.com>
55
56         * Attachment.cs : reverted previous change. NameEncoding is not
57           guessed at set_Name().
58
59 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
60
61         * SmtpClient.cs : lunatic cyclic build.
62
63 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
64
65         * AttachmentBase.cs : implemented Dispose(bool).
66
67 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
68
69         * AttachmentCollection.cs : remove TODO.
70         * Attachment.cs : guess NameEncoding when set_Name().
71         * MailMessage.cs : moved encoding guess impl to ContentType.
72         * SmtpClient.cs : moved RFC 2047 encoding impl to ContentType.
73           Support attachment Name encoding. Added some SSL changes (it's not
74           working yet).
75
76 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
77
78         * SmtpClient.cs : attachment refactory. First, determine whether we
79           send multipart/mixed for attachments. Second, determine whether we
80           send multipart/alternative for AlternateViews.
81           Consider LinkedResources. Mark EnableSsl as TODO.
82
83 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
84
85         * LinkedResource.cs : Now they are implemented and soon to be
86           supported. Fixed TransferEncoding (same as other AttachmentBase).
87
88 2007-10-22  Atsushi Enomoto  <atsushi@ximian.com>
89
90         * Attachment.cs : null name is allowed.
91
92 2007-10-19  Atsushi Enomoto  <atsushi@ximian.com>
93
94         * AlternateView.cs, AttachmentView.cs, AttachmentBase.cs :
95           reverted default back to TransferEncoding.Base64 again, and use
96           QuotedPrintable only when created from string.
97           No need to check null Stream at AlternateView.ctor(). See base.
98         * SmtpClient.cs : For multipart message, do not send body twice (it
99           still emits extraneous part, which should be fixed too).
100           Do not premise charset existence in every AttachmentBase.
101
102 2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * AlternateView.cs : dispose linked resources. Remove MonoTODOs.
105         * Attachment.cs : check null content string.
106           The string argument in .ctor(Stream,string) is name, not mediaType.
107           Use contentEncoding argument in CreateAttachmentFromString().
108         * AttachmentBase.cs : TransferEncoding default is QuotedPrintable.
109
110 2007-10-17  Atsushi Enomoto  <atsushi@ximian.com>
111
112         * MailMessage.cs : removed MonoTODO. some comment.
113         * SmtpException.cs, SmtpFailedRecipientsException.cs,
114           SmtpFailedRecipientException.cs : implemented serialization.
115
116 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
117
118         * SmtpClient.cs : use 3 StringBuilder.Replace() calls rather than
119           3 string.Replace() calls.
120
121 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
122
123         * SmtpClient.cs : do state check on other setters than set_Timeout().
124
125 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
126
127         * MailMessage.cs : Some entire refactory on BodyEncoding and
128           IsBodyHtml. BodyEncoding and SubjectEncoding are guessed when
129           Body and Subject are set for each.
130         * SmtpClient.cs :
131           Subject header is encoded according to RFC 2047.
132           Body is encoded according to RFC 2821.
133           Output Date header.
134           ToQuotedPrintable() should take encoding into consideration.
135           For SevenBit/Unknown TransferEncoding, just decode with ASCII.
136           In set_UseDefaultCredentials(), raise NIE only when value is true.
137           In set_Timeout(), raise an error when Send() is in progress.
138
139 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
140
141         * SmtpClient.cs : Replace every \r and \n with \r\n per RFC 2821 
142           section 2.3.7, or you will receive SMTP error 451.
143
144 2007-10-16  Atsushi Enomoto  <atsushi@ximian.com>
145
146         * AlternateViewCollection.cs, LinkedResourceCollection.cs,
147           AttachmentCollection.cs : added missing 2.0 members.
148
149 2007-06-17  Gert Driesen  <drieseng@users.sourceforge.net>
150
151         * MailAddress.cs: Throw ArgumentNullException if address is null.
152         Allow display name to be specified as part of the address. Fixes
153         bug #81854. Return zero-length string in DisplayName if no display 
154         name is set.
155
156 2007-05-31  Jeffrey Stedfast  <fejj@gnome.org>
157
158         * SmtpClient.cs: Added an extensions parser to figure out if the
159         ESMTP server supports things like STARTTLS and which AUTH
160         mechanisms are supported. Don't try authenticating if no authmechs
161         are supported.
162
163 2007-05-30  Jeffrey Stedfast  <fejj@novell.com>
164
165         * SmtpClient.cs: Fall back to HELO if EHLO fails. Also, do not
166         write out a Bcc header to the SMTP server - these are meant to be
167         dropped. MAIL FROM: and RCPT TO: commands are not meant to have a
168         space after the colon before the address - this will break on some
169         SMTP servers.
170
171 2007-02-16  Geoff Norton  <gnorton@customerdna.com>
172
173         * SmtpClient.cs: Dont send bare LF.  Send <CR><LF> regardless
174         of platform.  (ref: http://cr.yp.to/docs/smtplf.html)
175
176 2007-01-20  Miguel de Icaza  <miguel@novell.com>
177
178         * MailMessage.cs: Add suport to the MailMessage constructor to
179         take a comma-separated list of addresses (Bug #80548). 
180
181 2006-12-12  Miguel de Icaza  <miguel@novell.com>
182
183         * MailMessage.cs: Fix this code so that it correctly reports
184         ArgumentNullExceptions.
185
186 2006-12-12  Atsushi Enomoto  <atsushi@ximian.com>
187
188         * SmtpClient.cs : use CONFIGURATION_DEP when it is
189           System.Configuration.dll dependent.
190
191 2006-12-10  David Elkind  <davide@mainsoft.com>
192
193         * Attachment.cs - proper file name handling added
194         * AttachmentBase.cs - proper MIME type handling added
195         * MailAddress.cs - Proper mail address handling ('<' and '>' addition) added
196         * MailMessage.cs - Better construction sequence
197         * SmtpClient.cs - Added proper handling of composite message (consisting of alternate views/attachments)
198                         - Added handling of user credentials 
199                         - Added handling of TLS (under TARGET_JVM)
200                         - Some other minor fixes
201
202 2006-12-04  Konstantin Triger  <kostat@mainsoft.com>
203
204         * SmtpException.cs, SmtpFailedRecipientException.cs: TARGET_JVM limitation workaround.
205
206 2006-12-01  Sebastien Pouliot  <sebastien@ximian.com>
207
208         * SmtpClient.cs: Added MonoTODO for missing SSL/TLS support and 
209         updated existing MonoTODO (or changed them to FIXME) to be clearer
210         for anyone using the API.
211
212 2006-10-31  Sebastien Pouliot  <sebastien@ximian.com>
213
214         * SmtpException.cs: Fix visibility on .ctor(SerializationInfo,
215         StreamingContext).
216         * SmtpPermissionAttribute.cs: New (2.0). Security attribute for SMTP.
217         * SmtpPermission.cs: New (2.0). Security permission for SMTP.
218
219 2006-09-28  Andrew Skiba  <andrews@mainsoft.com>
220
221         * SmtpClient.cs: TARGET_JVM
222
223 2006-03-11  Miguel de Icaza  <miguel@novell.com>
224
225         * MailAddress.cs: Comment out unused field to remove warning. 
226
227 2006-1-13  John Luke  <john.luke@gmail.com>
228
229         * MailMessage.cs: add [MonoTODO] for FormatException in ctor,
230         throw ArugmentNullException's from the ctors,
231         add internal BodyContentType property,
232         change BodyEncoding to use BodyContentType,
233         change IsBodyHtml to use BodyContentType,
234         * SmtpClient.cs: set timeout initially to 100000,
235         don't throw ArgumentOutOfRangeException when Timeout = 0,
236         add [MonoTODO] for set_host, and throw Exceptions for it,
237         add [MonoTODO] for UseDefaultCredentials,
238         get messageContentType from the message,
239         use "127.0.0.1" for Host and 25 for Port
240         if host or port is not specified until reading
241         them from the configuration files is done
242
243 2006-1-02  John Luke  <john.luke@gmail.com>
244
245         * DeliveryNotificationOptions: fix value of Delay
246         
247 2005-12-26  John Luke  <john.luke@gmail.com>
248
249         * AttachmentCollection.cs: mark sealed
250         * DeliveryNotificationOptions.cs: fix values
251         
252 2005-12-25  John Luke  <john.luke@gmail.com>
253
254         * SmtpStatusCode.cs: OK > Ok
255         * AttachmentBase.cs: ContentID > ContentId,
256         add set_ContentType
257         * AlternateViewCollection.cs: remove destructor,
258         make default ctor internal
259         * MailMessage.cs: add default ctor,
260         remove destructor
261         * Attachment.cs: add (string, string) ctor,
262         add set_NameEncoding
263         * LinkedResourceCollection.cs: remove destructor,
264         make default ctor internal
265         * AttachmentCollection.cs: mark Dispose virtual,
266         add ISerializable, make default ctor internal
267
268 2005-12-24  John Luke  <john.luke@gmail.com>
269
270         * LinkedResource.cs: new File
271         * AttachmentBase.cs: new File
272         * MailPriority.cs: new File
273         * AlternateViewCollection.cs: new File
274         * DeliveryNotificationOptions.cs: new File
275         * SmtpFailedRecipientException.cs: new File
276         * AlternateView.cs: new File
277         * LinkedResourceCollection.cs: new File
278         * MailMessage.cs: add some missing properties, update API for 2.0 final 
279         * Attachment.cs: inherit from AttachmentBase, update API for 2.0 final
280         * MailAddress.cs: fix ToString, override Equals and GetHashCode
281         * SmtpFailedRecipientsException.cs: use SmtpFailedRecipientException
282         * SmtpException.cs: add [Serializable], ISerializable
283         * MailAddressCollection.cs: inherit from Collection<MailAddress>
284         * AttachmentCollection.cs: inherit from Collection<Attachment>
285         * SmtpAccess.cs: add missing value
286         * SmtpClient.cs: update for 2.0 final API
287         * SmtpStatusCode.cs: add missing value
288 2005-12-24  John Luke  <john.luke@gmail.com>
289
290         * MailMessage.cs: use text/plain by default,
291         patch by Andy Waddell <awaddell@fnfr.com>,
292         fixes bug #76972
293
294 2005-12-22  John Luke  <john.luke@gmail.com>
295
296         * SmtpClient.cs: remove use of TransferEncodings that
297         no longer exist in .net 2 final API
298         
299 2005-12-14  Chris Toshok  <toshok@ximian.com>
300
301         * SmtpDeliveryMethod.cs: new enum.
302
303 2004-09-10  Tim Coleman <tim@timcoleman.com>
304         * SmtpClient.cs SmtpFailedRecipientsException.cs:
305                 Add failed recipient exception handling.
306
307 2004-09-09  Tim Coleman <tim@timcoleman.com>
308         * AttachmentCollection.cs MailAddressCollection.cs:
309                 New classes
310         * Attachment.cs: Set content string
311         * MailMessage.cs: Use new collection classes
312         * SmtpClient.cs: Lots of MIME cleanup
313
314 2004-09-08  Tim Coleman <tim@timcoleman.com>
315         * Attachment.cs: Add SetContentFromFile methods
316         * MailMessage.cs: Add MIME-Version header
317         * SmtpClient.cs: Add some attachment handling.
318
319 2004-09-04  Tim Coleman <tim@timcoleman.com>
320         * Attachment.cs MailAddress.cs MailMessage.cs SendCompletedEventHandler.cs
321         * SmtpAccess.cs SmtpClient.cs SmtpException.cs SmtpStatusCode.cs:
322                 New class stubs for 2.0