69af6d8426d7864ea73017f15a649d430d758f5c
[mono.git] / mcs / class / corlib / System.Text / ChangeLog
1 2006-02-10  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * ASCIIEncoding.cs : (GetChars) reduced either one store or one jump
4           in IL. 10% performance improvement.
5
6 2006-02-03  Atsushi Enomoto  <atsushi@ximian.com>
7
8         * UTF8Encoding.cs : avoid possible overflow.
9
10 2006-02-03  Atsushi Enomoto  <atsushi@ximian.com>
11
12         * UTF8Encoding.cs : In zero-charbuffer case, byte buffer count should
13           be checked. Also it should not ignore leftOver characters even if
14           byte buffer length is 0.
15
16 2006-02-03  Atsushi Enomoto  <atsushi@ximian.com>
17
18         * UTF8Encoding.cs : Fast path optimization for InternalGetByteCount()
19           and InternalGetBytes().
20
21 2006-02-03  Atsushi Enomoto  <atsushi@ximian.com>
22
23         * UTF8Encoding.cs :
24           actually leftover bits needs more careful handleding. So it's
25           better to be rather close to the original GetBytes().
26           Also changed leftOver handling so that it will be able to support
27           fallback.
28
29 2006-02-03  Atsushi Enomoto  <atsushi@ximian.com>
30
31         * UTF8Encoding.cs :
32           GetBytes(string, ...) could reuse InternalGetBytes() using fixed
33           pointers. However, InternalGetBytes() was slower than
34           GetBytes(string, ...), so first replaced existing InternalGetBytes()
35           with GetBytes() internals, and GetBytes(string, ...) switched to 
36           InternalGetBytes(). Now GetBytes() implementation code is reduced
37           to one method.
38
39 2006-02-02  Atsushi Enomoto  <atsushi@ximian.com>
40
41         * UTF8Encoding.cs : fast path optimization was pretty insufficient.
42           Now it handles the entire bytes, not just half of them.
43
44 2006-02-02  Atsushi Enomoto  <atsushi@ximian.com>
45
46         * UTF8Encoding.cs : zero-length check was wrong. Check it by
47           "charIndex == chars.Length" instead of "charCount == 0".
48
49 2006-02-02  Atsushi Enomoto  <atsushi@ximian.com>
50
51         * UTF8Encoding.cs : switched GetBytes() to pointer-based code.
52           Implemented 2.0 pointer-based GetBytes(). 10% perf. improvement.
53
54 2006-01-30  Atsushi Enomoto  <atsushi@ximian.com>
55
56         * UTF8Encoding.cs : InternalGetCharCount() optimization again, and
57           this time InternalGetChars() as well.
58
59 2006-01-24  Mike Glenn <mglenn@zoominternet.net>
60
61         * StringBuilder.cs: Avoid computing computation for the string
62         length twice.
63
64 2006-01-24  Atsushi Enomoto  <atsushi@ximian.com>
65
66         * UTF8Encoding.cs : reverted the previous change. Looks like it broke
67           the build.
68
69 2006-01-24  Atsushi Enomoto  <atsushi@ximian.com>
70
71         * UTF8Encoding.cs : InternalGetCharCount() optimization: fast path
72           for ASCII range.
73
74 2006-01-24  Atsushi Enomoto  <atsushi@ximian.com>
75
76         * UTF7Encoding.cs UTF8Encoding.cs :
77           Fixed bug #77315 (Patch by pawel.sakowski@mind-breeze.com).
78           Make strict check for invalid surrogate.
79
80 2006-01-23  Atsushi Enomoto  <atsushi@ximian.com>
81
82         * EncoderFallbackException.cs EncoderExceptionFallback.cs
83           DecoderFallbackBuffer.cs EncoderReplacementFallback.cs
84           EncoderFallbackBuffer.cs DecoderExceptionFallbackBuffer.cs
85           EncoderFallback.cs DecoderReplacementFallbackBuffer.cs
86           DecoderFallbackException.cs DecoderExceptionFallback.cs
87           DecoderReplacementFallback.cs EncoderExceptionFallbackBuffer.cs
88           EncoderReplacementFallbackBuffer.cs :
89           include them in net_2_0bootstrap build.
90
91 2006-01-20  Atsushi Enomoto  <atsushi@ximian.com>
92
93         * Decoder.cs : ditto.
94
95 2006-01-20  Atsushi Enomoto  <atsushi@ximian.com>
96
97         * Encoder.cs : Fallback should be initialized to have an instance.
98
99 2006-01-20  Atsushi Enomoto  <atsushi@ximian.com>
100
101         * Encoding.cs : Cloned instances should not be read-only.
102
103 2005-12-08  Atsushi Enomoto  <atsushi@ximian.com>
104
105         * UTF8Encoding.cs : (GetChars) let ABCREM work effectively.
106
107 2005-12-08  Atsushi Enomoto  <atsushi@ximian.com>
108
109         * Encoding.cs : now under 2.0 GetBytes(string,...) dispatches to
110           byte*-based GetBytes().
111         * UTF8Encoding.cs : avoid extraneous DecoderFallbackBuffer creation
112           which came to happen after introducing fallback buffer.
113
114 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
115
116         * Encoding.cs, ASCIIEncoding.cs, Latin1Encoding.cs :
117           Added IsSingleByte.
118
119 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
120
121         * Encoder.cs : added new GetByteCount()/GetBytes() overloads.
122           Added FallbackBuffer.
123         * Decoder.cs : added new GetCharCount()/GetChars() overloads.
124
125 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
126
127         * EncodingInfo.cs : new file.
128
129 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
130
131         * UTF32Encoding.cs : Sealed. Added the overload which has
132           throwOnInvalid parameter.
133         * NormalizationForm.cs : removed [Serializable].
134
135 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
136
137         * Encoding.cs : added UTF32.
138
139 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
140
141         * UTF32Encoding.cs : surrogate pairs vanished in GetBytes() when the 
142           endianness is big.
143
144 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
145
146         * UTF32Encoding.cs : new file.
147
148 2005-11-22  Atsushi Enomoto  <atsushi@ximian.com>
149
150         * ASCIIEncoding.cs, Latin1Encoding.cs : added EncoderFallback support.
151         * Encoding.cs : changed default fallback selection. Seems like only
152           ASCII and GB18030 uses '?' for replacement.
153         * UTF8Encoding.cs : now that Fallback is read only by default, we
154           need special setter.
155
156 2005-11-16  Atsushi Enomoto  <atsushi@ximian.com>
157
158         * UTF8Encoding.cs : safer UTF8Decoder ctor.
159
160 2005-11-16  Atsushi Enomoto  <atsushi@ximian.com>
161
162         * Decoder.cs : added FallbackBuffer property.
163         * UTF8Encoding.cs : In NET_2_0, use DecoderFallbackBuffer instead of
164           "throwOnInvalid".
165
166 2005-11-15  Atsushi Enomoto  <atsushi@ximian.com>
167
168         * DecoderReplacementFallbackBuffer.cs : it does not have to preserve
169           byte buffer.
170         * EncoderReplacementFallbackBuffer.cs : implemented.
171         * DecoderReplacementFallback.cs, EncoderReplacementFallback.cs :
172           Removed MonoTODO.
173
174 2005-11-15  Atsushi Enomoto  <atsushi@ximian.com>
175
176         * DecoderFallbackBuffer.cs : Reset() does nothing here.
177         * DecoderReplacementFallbackBuffer.cs : implemented, but no idea how
178           bytesUnknown is used.
179
180 2005-11-15  Atsushi Enomoto  <atsushi@ximian.com>
181
182         * Encoding.cs : added ICloneable, Clone() and new GetEncoding().
183
184 2005-11-15  Atsushi Enomoto  <atsushi@ximian.com>
185
186         * Encoding.cs : Added IsReadOnly, DecoderFallback and EncoderFallback.
187         * Encoder.cs : Added Fallback property.
188         * Decoder.cs : Added Fallback property.
189
190 2005-11-15  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * EncoderFallbackBuffer.cs, EncoderFallback.cs,
193           EncoderExceptionFallbackBuffer.cs,
194           EncoderReplacementFallbackBuffer.cs,
195           EncoderFallbackException.cs,
196           EncoderExceptionFallback.cs,
197           EncoderReplacementFallback.cs : new files (not actually used yet).
198         * DecoderExceptionFallback.cs, DecoderFallbackException.cs,
199           DecoderReplacementFallback.cs : [Serializable] and sealed.
200         * DecoderReplacementFallbackBuffer.cs : Reset() was missing.
201
202 2005-11-14  Atsushi Enomoto  <atsushi@ximian.com>
203
204         * DecoderFallbackBuffer.cs, DecoderFallback.cs,
205           DecoderExceptionFallbackBuffer.cs,
206           DecoderReplacementFallbackBuffer.cs,
207           DecoderFallbackException.cs,
208           DecoderExceptionFallback.cs,
209           DecoderReplacementFallback.cs : new files (not actually used yet).
210
211 2005-11-14  Miguel de Icaza  <miguel@novell.com>
212
213         * ASCIIEncoding.cs, Encoding: Another snack, just a few methods
214         missing.  
215
216         Also add some checks that were missing.
217
218 2005-11-11  Sebastien Pouliot  <sebastien@ximian.com>
219
220         * StringBuilder.cs: Fix ISerializable.GetObjectData (remoting tests 
221         were failing under 2.0) and two possible integer overflow in CopyTo.
222
223 2005-11-11  Miguel de Icaza  <miguel@novell.com>
224
225         * Encoding.cs, UnicodeEncoding.cs: A few 2.x methods. 
226
227         * StringBuilder.cs (Text): Added serialization support in 2.x. 
228
229 2005-10-22  Jonathan Pryor  <jonpryor@vt.edu>
230
231         * UTF8Encoding.cs (InternalGetChars/InternalGetCharCount): Fix lead byte
232           check logic for 6 octet sequences.  ((ch & 0xFC) == 0xFC) is always true 
233           for 0xFF, even though 0xFF isn't a valid lead byte.  It should be 
234           ((ch & 0xFE) == 0xFC).
235
236 2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>
237
238         * UTF8Encoding.cs : (InternalGetChars/InternalGetCharCount):
239           Don't exclude FEFF in the resulting text.
240
241 2005-06-21  Ben Maurer  <bmaurer@ximian.com>
242
243         * StringBuilder.cs (Replace): Do the correct thing when we replace
244         with a longer string. Thanks to Alexander Beznozdrev
245         <abeznozdrev@croc.ru>
246
247 2005-05-26  Ben Maurer  <bmaurer@ximian.com>
248
249         * Encoding.cs: Use static object for locking. `volatile' to
250         prevent double checked locking error.
251
252         * StringBuilder.cs: Remove = null inits on fields, saves a few
253         instructions. When we compare _cached_str == _str, we are only
254         interested in pointer based equality, so just do that.
255
256 2005-05-06  Ben Maurer  <bmaurer@ximian.com>
257
258         * StringBuilder.cs (InternalEnsureCapacity): It is possible that
259         the size we attempt to grow to is more than the max capacity, but
260         that a smaller size will do. In this case, don't throw an
261         exception. Fixes #72244
262
263 2005-04-16  Atsushi Enomoto  <atsushi@ximian.com>
264
265         * NormalizationForm.cs : new file.
266
267 2005-03-20  Ben Maurer  <bmaurer@ximian.com>
268
269         * StringBuilder.cs (set_Length): If we set the length, we must
270         clobber the cached string.
271
272 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
273
274         * UnicodeEncoding.cs: same fix (\uFEFF) but for Unicode. Patch by
275         Svetlana Zholkovsky.
276
277 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
278
279         * UTF7Encoding.cs: fix for characters encoded as a shifted sequence
280         whose length is greater than 3. Patch by Svetlana Zholkovsky.
281
282 2005-01-31  Ben Maurer  <bmaurer@ximian.com>
283
284         * StringBuilder.cs (Remove): We need to do the check that the
285         string isnt being cached *before* we munge it.
286
287 2005-01-21  Ben Maurer  <bmaurer@ximian.com>
288
289         * StringBuilder.cs: Don't allocate memory on the .ctor, do it
290         lazily. This saves us lots of memory if you only use the
291         stringbuilder once. Also, we can allocate on the second Append,
292         which might reduce the number of buffers allocated.
293
294 2005-01-14 Lluis Sanches Gual  <lluis@novell.com>
295
296         * StringBuilder.cs: Improved parameter check.
297
298 2005-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
299
300         * StringBuilder.cs: when creating the StringBuilder from a string, the
301         maximum capacity remains Int32.MaxValue.
302
303 2005-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
304
305         * StringBuilder.cs: throw if the new size is greater than the maximum
306         capacity for the StringBuilder. Patch by luke@octerbar.net. Fixes
307         bug #62422.
308
309 2004-12-15  Sebastien Pouliot  <sebastien@ximian.com>
310
311         * UTF7Encoding.cs:  Fixed warning for unused variable.
312
313 2004-09-30  Juraj Skripsky <js@hotfeet.ch>
314
315         * Encoding.cs: Add encoding name "latin1" for compatibility with
316         MS.NET.
317
318 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
319
320         * StringBuilder.cs (Append): Use InternalStrcpy to append char arrays.
321
322 2004-09-09  Tim Coleman <tim@timcoleman.com>
323
324         * StringBuilder.cs: Added AppendLine methods for Fx 2.0
325
326 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
327
328         * UTF7Encoding.cs: Fixed decoding table. Fixed char count calculation.
329         Follow the RFC1642 rules for "overbits".
330
331 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
332
333         * ASCIIEncoding.cs: added TODO for serialization
334         * StringBuilder.cs: added TODO for serialization
335         * UnicodeEncoding.cs: added TODO for serialization
336         * UTF7Encoding.cs: added TODO for serialization
337         * UTF8Encoding.cs: added TODO for serialization
338
339 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
340
341         * Encoding.cs: Marked protected internal field as internal to
342         fix API signature
343
344 2004-06-07  Atsushi Enomoto  <atsushi@ximian.com>
345
346         * UTF8Encoding.cs : Length check must be done only when the character
347           sequence is valid (i.e. should not check when it is overlongs).
348           See also TestThrowOnInvalid().
349
350 2004-06-07  Atsushi Enomoto  <atsushi@ximian.com>
351
352         * UTF8Encoding.cs : Added Overlong check to InternalGetCharCount().
353
354 2004-06-07  Atsushi Enomoto  <atsushi@ximian.com>
355
356         * UTF8Encoding.cs : Throw overlongs error only when throwOnInvalid is
357           true. Otherwise just ignore them.
358
359 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
360
361         * StringBuilder.cs: Fixed potential integer overflows in several 
362         methods.
363
364 2004-05-14  Sebastien Pouliot  <sebastien@ximian.com>
365
366         * UTF8Encoding.cs: Moved charCount-- after the check for surrogate 
367         pair. This fix bug #57009 (and 2 failing unit tests). Added code
368         to check for some (like MS) overlongs.
369
370 2004-05-03 Lluis Sanches Gual  <lluis@ximian.com>
371
372         * Encoding.cs: Use name const to load I18N assembly.
373
374 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
375
376         * Encoding.cs: Call shortcut String.ToLowerInvariant
377
378 2004-04-13  Miguel de Icaza  <miguel@ximian.com>
379
380         * Encoding.cs: Use new internal codepage setup.
381
382 2004-04-10  Atsushi Enomoto  <atsushi@ximian.com>
383
384         * UTF7Encoding.cs : GetMaxByteCount() was based on incorrect formula.
385
386 2004-03-19  Dick Porter  <dick@ximian.com>
387
388         * UnicodeEncoding.cs: GetCharCount(), GetChars(): Check for the
389         BOM at the beginning of the range of characters we're interested
390         in, not at the beginning of the array.  Fixes bug 51531.
391
392 2004-03-10  Juraj Skripsky <juraj@hotfeet.ch>
393
394         * StringBuilder.cs
395         (Insert int, char[]): fix by using new string(char[]) instead of
396         char[].ToString() and simplify.
397         (Insert int, string, int): add LAMESPEC note.
398         (Insert int char[], int, int): handle value==null according to spec. 
399         Use a string instead of char array + Array.Copy (gonzalo)
400
401 2004-03-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
402
403         * StringBuilder.cs:
404         (Append (string)): remove redundant check.
405
406 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
407
408         * StringBuilder.cs:
409         (Remove): fixed offsets when copying and set the new size. Fixes bug
410         #53240.
411
412 2004-01-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
413
414         * StringBuilder.cs: added checks for null in a few Append methods.
415
416 Tue Jan 13 22:23:25 CET 2004 Paolo Molaro <lupus@ximian.com>
417
418         * StringBuilder.cs: fixed start offset in Append(char).
419
420 2004-01-12  Patrik Torstensson
421
422         * StringBuilder.cs: new implementation that uses
423         string as a buffer instead of a array of chars.
424
425 2003-12-07 Ben Maurer  <bmaurer@users.sourceforge.net>
426
427         * UTF8Encoding.cs (GetBytes string): Do not call base
428         The version in Encoding will call string.ToCharArray (),
429         allocating an extra array. By calling the better method
430         in our own class we can save memory.
431
432 2003-11-17 Ben Maurer  <bmaurer@users.sourceforge.net>
433
434         * StringBuilder.cs (Insert int, char): It is really silly and
435         wasteful to allocate an array here. We can just copy the value
436         over.
437
438 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
439
440         * Encoding.cs: Use an internal variable to track the parameters of
441         each encoder, since the .NET API does not expose virtual methods
442         in the child classes, we should not depend on that.
443         
444         * ASCIIEncoding.cs, UTF7Encoding, UTF8Encoding, UnicodeEncoding:
445         Initialize the parameters for base class encoding here.
446
447 2003-09-01  Miguel de Icaza  <miguel@ximian.com>
448
449         * Encoding.cs (UTF8Unmarked): make it also not error out on
450         invalid input, that is what the Microsoft default is for the
451         StreamReader and BinaryReader expect (our main consumers).
452
453 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
454
455         * StringBuilder.cs
456         (AppendFormat) Use FormatHelper in System.String to avoid
457         allocating an extra StringBuilder.
458         (Append string, int, int), (Append char, int): Both were
459         allocating extra strings.
460
461 2003-06-05  Nick Drochak  <ndrochak@gol.com>
462
463         * UTF8Encoding.cs: Cleanups according to class status page
464
465 2003-05-10  Miguel de Icaza  <miguel@ximian.com>
466
467         * Encoding.cs (GetEncoding): Add all the aliases documented in the
468         framework.  We were missing a few.
469         
470         Reorganize the table.  Also, convert the input name into the
471         lower-case - to _ before we compare against our table.
472         
473 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
474
475         * StringBuilder.cs: fixed bug #41397.
476
477 2003-04-12  Miguel de Icaza  <miguel@ximian.com>
478
479         * Encoding.cs: Enabled the code paths that we did have commented
480         out, they seem to work now.
481
482 Fri Apr 11 08:29:50 CEST 2003 Paolo Molaro <lupus@ximian.com>
483
484         * StringBuilder.cs: cache the result from ToString().
485
486 2003-03-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
487
488         * UnicodeEncoding.cs: changed WebName from unicodeFFFE to utf-16be.
489           (unicodeFFFE is MS compliant, but isn't valid IANA encoding name.)
490
491 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
492
493         * ASCIIEncoding.cs: fixed bug #38984.
494
495 2003-03-05  Aleksey Demakov <avd@openlinksw.com>
496
497         * ASCIIEncoding.cs:
498         * Latin1Encoding.cs: fix GetString (byte[]) and
499         GetString (byte[], int, int) for zero-length case.
500
501 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
502
503         * Latin1Encoding.cs: added Serializable attribute.
504
505 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
506
507         * Encoding.cs: removed UnixConsoleEncoding.
508
509 2003-01-30  Zoltan Varga  <vargaz@freemail.hu>
510
511         * StringBuilder.cs: fix the constructor: 'value' can be NULL,
512         'capacity' must be >=0, use defaultCapacity only if capacity equals 0.
513         This fixes the StringBuilder unit tests.
514
515 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
516
517         * StringBuilder.cs: fixed typo in set_Length.
518
519 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
520
521         * Encoding.cs: g_get_encoding () returns "ASCII". In Default, when the
522         encoding is not found, default to UTF8Unmarked. Removed comment in
523         UnixConsoleEncoding, because it's now Default, which gets the 
524         encoding internally using g_get_encoding ().
525
526 2002-12-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
527
528         * StringBuilder.cs: fixed constructor. Thanks to marcusU for reporting.
529
530 Tue Nov 19 13:03:27 CET 2002 Paolo Molaro <lupus@ximian.com>
531
532         * UTF8Encoding.cs: fix GetByteCount (), too.
533
534 2002-11-19  Miguel de Icaza  <miguel@ximian.com>
535
536         * UnicodeEncoding.cs: the bytemark should only be used to return
537         information in GetPreamble, not to actually encode the information
538         on the stream.  That is taken care of by the Stream classes.
539
540         * UTF8Encoding.cs: ditto.
541
542 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
543
544         * StringBuilder.cs: only move the remaining chars in Remove.
545
546 2002-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
547
548         * Encoding.cs: unixConsoleEncoding is now the same as Default. Avoid
549         locking whenever possible.
550
551 2002-10-30  Miguel de Icaza  <miguel@ximian.com>
552
553         * Encoding.cs (UTF8Unmarked): New static property, used to return
554         a no-markers UTf8 encoder, used in a few places in the class library.
555
556 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
557
558         * Encoding.cs (UTF8, Unicode): Create with a preamble, that is
559         what the Microsoft version does.
560
561         (UnixConsoleEncoding): New internal method, used to get the
562         encoding, in the future, this should pull the locale, map to
563         charset and then code page. 
564
565 Wed Sep 4 14:01:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
566
567         * Encoding.cs: use icall to get default codepage.
568         * DefaultEncoding.cs: remove useless class.
569
570 Mon Aug 26 16:44:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
571
572         * *.cs: change to conform to mono coding style.
573
574 2002-08-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
575
576         * ASCIIEncoding.cs:
577         * Decoder.cs:
578         * Encoder.cs:
579         * Encoding.cs:
580         * UTF7Encoding.cs:
581         * UTF8Encoding.cs:
582         * UnicodeEncoding.cs: added Serializable attribute.
583
584 2002-08-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
585
586         * StringBuilder.cs: improved performace by using String.InternalCopyTo
587         instead of using ToCharArray all over the place (more that 50% of
588         speed improvement when using Append).
589
590 Wed Aug 21 20:02:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
591
592         * *.cs: imported the code donated by Rhys Weatherley
593         <rweather@southern-storm.com.au>.
594
595 2002-08-18  Dick Porter  <dick@ximian.com>
596
597         * Encoding.cs: Make GetString() return a useful representation of
598         the bytes, rather than "System.Char[]"
599
600 2002-08-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
601
602         * StringBuilder.cs: added IndexerName to indexer.
603
604 2002-08-01  Jason Diamond <jason@injektilo.org>
605
606         * Encoding.cs: Use GetByteCount instead of GetMaxByteCount when
607         converting chars to bytes.
608
609 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
610
611         * StringBuilder.cs: updated comments. MaxCapacity always returns
612         Int32.MaxValue.
613
614 2002-06-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
615
616         * StringBuilder.cs: implemented AppendFormat methods using
617         String.Format. Thanks Paolo!
618
619         This makes xsp generate correct C# output in linux :-). I still need
620         to do more testing, though.
621
622 Mon Jun 3 12:58:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
623
624         * ASCIIEncoding.cs: fixed handling of 0 bytecount.
625
626 2002-05-19  Martin Baulig  <martin@gnome.org>
627
628         * Encoder.cs (IConvEncoder.GetByteCount, IConvEncoder.GetBytes):
629         Added exception handling.
630
631         * Decoder.cs (IConvDecoder.GetCharCount, IConvDecoder.GetChars):
632         Added exception handling.
633
634 2002/04/02  Nick Drochak <ndrochak@gol.com>
635
636         * StringBuilder.cs (Append): Removed obsolete overload.
637
638 2002-03-21  Mike Kestner  <mkestner@speakeasy.net>
639
640         * ASCIIEncoding.cs : Fix off by one error in Get(Char|Byte)Count.
641
642 Thu Mar 21 17:38:19 CET 2002 Paolo Molaro <lupus@ximian.com>
643
644         * StringBuilder.cs: no need to intern the string returned by ToString().
645
646 2002-03-17  Mike Kestner  <mkestner@speakeasy.net>
647
648         * ASCIIEncoding.cs: Implement all the overridden methods. No longer
649           dependent on iconv icalls.
650         * Encoding.cs: Fix count bugs in GetBytes and GetChars. Add virtual
651           to GetBytes.
652
653 Wed Mar 13 00:26:29 CET 2002 Paolo Molaro <lupus@ximian.com>
654
655         * StringBuilder.cs: make ToString() return a interned string, this
656         seems to be required to make switch on string work.
657
658 Fri Mar 8 17:29:58 CET 2002 Paolo Molaro <lupus@ximian.com>
659
660         * StringBuilder.cs: make Append(char) do the smart thing.
661
662 2002-01-05  Ravi Pratap  <ravi@ximian.com>
663
664         * ASCIIEncoding.cs, Encoding.cs, UTF7Encoding.cs, 
665         UnicodeEncoding.cs: MonoTODO attribute marking.
666
667         * StringBuilder.cs : Ditto.
668         
669 Wed Nov 14 17:05:22 CET 2001 Paolo Molaro <lupus@ximian.com>
670
671         * Encoding.cs: renamed some fields.
672         * StringBuilder.cs: CLSCompliant updates.
673
674 2001-10-29  Nick Drochak  <ndrochak@gol.com>
675
676         * StringBuilder.cs: Throw exceptions when constructor paramter(s) are
677                 invalid. Just like MS does (as best as I can tell).
678
679         Tests for these exceptions are now added to the unit tests as well.
680
681 2001-10-25  Nick Drochak  <ndrochak@gol.com>
682
683         * StringBuilder.cs: Throw exception if they try to make a StringBuilder
684                 whose capacity is greater than the MaxCapacity.
685
686         I added some tests for the constructors and the above exception. More
687         coming soon.
688
689 2001-10-23  Nick Drochak  <ndrochak@gol.com>
690
691         * StringBuilder.cs: Refactored constructor code into just one
692         constructor. All the other construtors call it. Also supplied missing
693         constructors so the class has all those in the spec.
694
695         Added the MaxCapacity property as well, however this needs to be 
696         completed to return a value is related to the available system memory.
697
698 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
699
700         * Encoding.cs, UTF8Encoding.cs, UTF7Encoding.cs, ASCIIEncoding.cs,
701         UnicodeEncoding.cs: Corrected API.
702
703         * UTF8Encoding.cs: Checked in changes from Rafael.
704
705 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
706
707         * UTF8Encoding.cs: impl. clumsy GetBytes
708
709 2001-07-16  Marcin Szczepanski <marcins@zipworld.com.au>
710
711         * StringBuilder.cs (Text): Fixed.
712
713         * StringBuilderTest.cs: Implement Test suite.
714
715 2001-07-12  Marcin Szczepanski <marcins@zipworld.com.au>
716
717         * StringBuilder.cs: Implemented.
718
719         The only methods left unimplemented are the AppendFormat( ... )
720         ones just because it's probably better to wait until some of the
721         Format related classes are implemented.  I've put that as a TODO
722         comment at the top and created the methods with a "nop" body.
723
724 2001-06-26  Sean MacIsaac  <macisaac@ximian.com>
725
726         * UnicodeEncoding.cs: Members added so that a clean compile is
727         possible.
728
729         * ASCIIEncoding.cs: Members added so that a clean compile is
730         possible.
731
732         * UTF7Encoding.cs: Members added so that a clean compile is
733         possible.
734
735         * UTF8Encoding.cs: Members added so that a clean compile is
736         possible.
737
738         * Encoding.cs: All public members included.  Most members
739         unimplemented.