1 2007-05-03 Dick Porter <dick@ximian.com>
5 * UTF7Encoding.cs: Update to 2.0 profile
7 2007-02-01 Gert Driesen <drieseng@users.sourceforge.net>
9 * Encoding.cs: Enabled ArgumentException in GetEncoding (string) again.
10 In Encoding.Default, catch both ArgumentException and NotSupportException.
12 2007-02-01 Atsushi Enomoto <atsushi@ximian.com>
14 * Encoding.cs : the change broke the build, so reverted part of it.
16 2007-01-31 Gert Driesen <drieseng@users.sourceforge.net>
18 * Encoding.cs: Also set ParamName of the ArgumentException.
20 2007-01-31 Gert Driesen <drieseng@users.sourceforge.net>
22 * Encoding.cs: In GetEncoding (int) do not allow codepage value below zero
23 and above 0xffff. Modified NotSupportedException to ArgumentException in
26 2006-12-18 Atsushi Enomoto <atsushi@ximian.com>
28 * EncoderFallbackBuffer.cs : implement Reset().
30 2006-10-25 Ben Maurer <bmaurer@andrew.cmu.edu>
32 * Encoding.cs: Make the GetByteCcount method used fixed pointers
33 removes quite a few allocations from Banshee.
35 2006-09-03 Zoltan Varga <vargaz@gmail.com>
37 * StringBuilder.cs (.ctor): Add a comment.
39 2006-08-24 Atsushi Enomoto <atsushi@ximian.com>
42 Consider DecoderFallback and EncoderFallback in 2.0 Equals()
44 * UTF32Encoding.cs, UTF7Encoding.cs :
45 Fixed GetHashCode() and Equals() as well.
46 Added several missing overrides in 2.0.
48 2006-08-24 Atsushi Enomoto <atsushi@ximian.com>
50 * Encoding.cs : implemented IsAlwaysNormalized().
51 * Latin1Encoding.cs : IsAlwaysNormalized() does not return false
54 2006-07-18 Kornél Pál <kornelpal@gmail.com>
56 * ASCIIEncoding.cs: Fixed GetString () methods to use ASCII rather
57 than new string (sbyte*, int, int) that uses Encoding.Default.
58 * Latin1Encoding.cs: Fixed GetString () methods to use Latin 1 rather
59 than new string (sbyte*, int, int) that uses Encoding.Default.
61 2006-07-11 Kornél Pál <kornelpal@gmail.com>
63 * StringBuilder.cs: Pad the string with NULL characters when setting
64 Length. This is now documented:
65 http://msdn2.microsoft.com/en-us/library/system.text.stringbuilder.length.aspx
67 2006-07-06 Kornél Pál <kornelpal@gmail.com>
69 * CodePageEncoding.cs: Corrected comments.
70 * MLangCodePageEncoding.cs: Corrected comments. Removed unnesessary
71 ArgumentExceptions in private constructors.
72 * SurrogateEncoder.cs: Corrected comments.
74 2006-07-05 Kornél Pál <kornelpal@gmail.com>
76 * CodePageEncoding.cs: Return the same real object in subsequent
77 calls to GetRealObject ().
78 * MLangCodePageEncoding.cs: Return the same real object in
79 subsequent calls to GetRealObject (). Rename Encoder and Decoder
80 MLangEncoder and MLangDecoder. These classes are not serializable
81 in 1.x although MS.NET 2.0 can deserialize them.
82 * SurrogateEncoder.cs: Return the same real object in subsequent
83 calls to GetRealObject ().
85 2006-07-04 Kornél Pál <kornelpal@gmail.com>
87 * CodePageEncoding.cs: Added comment on usage.
88 * MLangCodePageEncoding.cs: Added comment on usage.
89 * SurrogateEncoder.cs: Added comment on usage.
91 2006-07-03 Kornél Pál <kornelpal@gmail.com>
93 * CodePageEncoding.cs: Added.
94 * MLangCodePageEncoding.cs: Added.
95 * SurrogateEncoder.cs: Added.
97 2006-06-27 Atsushi Enomoto <atsushi@ximian.com>
99 * EncodingInfo.cs : EncodingName is WebName, not EncodingName.
101 2006-06-24 Kornél Pál <kornelpal@gmail.com>
103 * UnicodeEncoding.cs: Don't detect byte order. Only readers like
104 StreamReader should detect byte order marks.
106 2006-06-21 Kornél Pál <kornelpal@gmail.com>
108 * Encoding.cs: Return big-endian UTF-32 in GetEncodings () and
111 2006-06-06 Kornél Pál <kornelpal@gmail.com>
113 * UnicodeEncoding.cs: Override GetString (byte [], int, int) in
114 profile 1.x as well because performance improvement is worth the
115 signature difference. (Fix regression of r61250.)
117 2006-05-30 Gert Driesen <drieseng@users.sourceforge.net>
119 * ASCIIEncoding.cs: Marked class ComVisible (true) on 2.0 profile.
120 Marked 2.0-only members as ComVisible (false).
121 * Decoder.cs: Marked class ComVisible (true) on 2.0 profile. Marked
122 2.0-only members as ComVisible (false).
123 * Encoder.cs: Marked class ComVisible (true) on 2.0 profile. Marked
124 2.0-only members as ComVisible (false).
125 * Encoding.cs: Marked class ComVisible (true) on 2.0 profile. Marked
126 2.0-only members as ComVisible (false).
127 * NormalizationForm.cs: Marked ComVisible (true).
128 * StringBuilder.cs: Marked class ComVisible (true) on 2.0 profile.
129 Marked 2.0-only methods as ComVisible (false).
130 * UnicodeEncoding.cs: GetString (byte[], int, int) is only available
131 in 2.0 profile. Marked 2.0-only methods ComVisible (false). Added
132 missing ctor in 2.0 profile, and marked in MonoTODO.
133 * UTF7Encoding.cs: Marked class ComVisible (true) on 2.0 profile.
134 * UTF8Encoding.cs: Marked 2.0-only methods as ComVisible (false).
136 2006-05-25 Atsushi Enomoto <atsushi@ximian.com>
138 * EncodingInfo.cs, Encoding.cs :
139 Implemented Encoding.GetEncodings(). It's so hacky!
141 2006-04-13 Kornél Pál <kornelpal@gmail.com>
143 * Encoding.cs: GetString (byte []): Wrap GetString (byte [], int, int)
144 as MS.NET does. This is a more reasonable high level wrapper
146 * UnicodeEncoding.cs: GetBytes (string): Implement as a wrapper
147 instead of using GetBytesInternal to be MS.NET compatible.
148 Override GetString (byte [], int, int) to speed up string creation.
150 2006-04-13 Atsushi Enomoto <atsushi@ximian.com>
152 * ASCIIEncoding.cs : 2.0 decoder fallback support was missing.
154 2006-03-30 Atsushi Enomoto <atsushi@ximian.com>
156 * Encoder.cs, Decoder.cs : implemented Convert(). Also added argument
157 check in some methods.
159 2006-03-30 Atsushi Enomoto <atsushi@ximian.com>
161 * ASCIIEncoding.cs : added overriden methods in NET_2_0 (maybe
162 there are optimizations, but for now we need something just works).
164 2006-03-24 Atsushi Enomoto <atsushi@ximian.com>
166 * UTF8Encoding.cs : made internal implementation as pointer-based,
167 and added pointer-based converter method overloads.
169 2006-03-21 Kornél Pál <kornelpal@gmail.com>
171 * UnicodeEncoding.cs: Use unsafe code for copying characters to speed
174 2006-03-09 Zoltan Varga <vargaz@gmail.com>
176 * Encoding.cs: Add stub for net 2.0 GetEncodings () method.
178 2006-02-14 Atsushi Enomoto <atsushi@ximian.com>
180 * UTF8Encoding.cs : Fallback was indicating incorrect index.
183 2006-02-10 Atsushi Enomoto <atsushi@ximian.com>
185 * ASCIIEncoding.cs : (GetChars) reduced either one store or one jump
186 in IL. 10% performance improvement.
188 2006-02-03 Atsushi Enomoto <atsushi@ximian.com>
190 * UTF8Encoding.cs : avoid possible overflow.
192 2006-02-03 Atsushi Enomoto <atsushi@ximian.com>
194 * UTF8Encoding.cs : In zero-charbuffer case, byte buffer count should
195 be checked. Also it should not ignore leftOver characters even if
196 byte buffer length is 0.
198 2006-02-03 Atsushi Enomoto <atsushi@ximian.com>
200 * UTF8Encoding.cs : Fast path optimization for InternalGetByteCount()
201 and InternalGetBytes().
203 2006-02-03 Atsushi Enomoto <atsushi@ximian.com>
206 actually leftover bits needs more careful handleding. So it's
207 better to be rather close to the original GetBytes().
208 Also changed leftOver handling so that it will be able to support
211 2006-02-03 Atsushi Enomoto <atsushi@ximian.com>
214 GetBytes(string, ...) could reuse InternalGetBytes() using fixed
215 pointers. However, InternalGetBytes() was slower than
216 GetBytes(string, ...), so first replaced existing InternalGetBytes()
217 with GetBytes() internals, and GetBytes(string, ...) switched to
218 InternalGetBytes(). Now GetBytes() implementation code is reduced
221 2006-02-02 Atsushi Enomoto <atsushi@ximian.com>
223 * UTF8Encoding.cs : fast path optimization was pretty insufficient.
224 Now it handles the entire bytes, not just half of them.
226 2006-02-02 Atsushi Enomoto <atsushi@ximian.com>
228 * UTF8Encoding.cs : zero-length check was wrong. Check it by
229 "charIndex == chars.Length" instead of "charCount == 0".
231 2006-02-02 Atsushi Enomoto <atsushi@ximian.com>
233 * UTF8Encoding.cs : switched GetBytes() to pointer-based code.
234 Implemented 2.0 pointer-based GetBytes(). 10% perf. improvement.
236 2006-01-30 Atsushi Enomoto <atsushi@ximian.com>
238 * UTF8Encoding.cs : InternalGetCharCount() optimization again, and
239 this time InternalGetChars() as well.
241 2006-01-24 Mike Glenn <mglenn@zoominternet.net>
243 * StringBuilder.cs: Avoid computing computation for the string
246 2006-01-24 Atsushi Enomoto <atsushi@ximian.com>
248 * UTF8Encoding.cs : reverted the previous change. Looks like it broke
251 2006-01-24 Atsushi Enomoto <atsushi@ximian.com>
253 * UTF8Encoding.cs : InternalGetCharCount() optimization: fast path
256 2006-01-24 Atsushi Enomoto <atsushi@ximian.com>
258 * UTF7Encoding.cs UTF8Encoding.cs :
259 Fixed bug #77315 (Patch by pawel.sakowski@mind-breeze.com).
260 Make strict check for invalid surrogate.
262 2006-01-23 Atsushi Enomoto <atsushi@ximian.com>
264 * EncoderFallbackException.cs EncoderExceptionFallback.cs
265 DecoderFallbackBuffer.cs EncoderReplacementFallback.cs
266 EncoderFallbackBuffer.cs DecoderExceptionFallbackBuffer.cs
267 EncoderFallback.cs DecoderReplacementFallbackBuffer.cs
268 DecoderFallbackException.cs DecoderExceptionFallback.cs
269 DecoderReplacementFallback.cs EncoderExceptionFallbackBuffer.cs
270 EncoderReplacementFallbackBuffer.cs :
271 include them in net_2_0bootstrap build.
273 2006-01-20 Atsushi Enomoto <atsushi@ximian.com>
275 * Decoder.cs : ditto.
277 2006-01-20 Atsushi Enomoto <atsushi@ximian.com>
279 * Encoder.cs : Fallback should be initialized to have an instance.
281 2006-01-20 Atsushi Enomoto <atsushi@ximian.com>
283 * Encoding.cs : Cloned instances should not be read-only.
285 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
287 * UTF8Encoding.cs : (GetChars) let ABCREM work effectively.
289 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
291 * Encoding.cs : now under 2.0 GetBytes(string,...) dispatches to
292 byte*-based GetBytes().
293 * UTF8Encoding.cs : avoid extraneous DecoderFallbackBuffer creation
294 which came to happen after introducing fallback buffer.
296 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
298 * Encoding.cs, ASCIIEncoding.cs, Latin1Encoding.cs :
301 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
303 * Encoder.cs : added new GetByteCount()/GetBytes() overloads.
304 Added FallbackBuffer.
305 * Decoder.cs : added new GetCharCount()/GetChars() overloads.
307 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
309 * EncodingInfo.cs : new file.
311 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
313 * UTF32Encoding.cs : Sealed. Added the overload which has
314 throwOnInvalid parameter.
315 * NormalizationForm.cs : removed [Serializable].
317 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
319 * Encoding.cs : added UTF32.
321 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
323 * UTF32Encoding.cs : surrogate pairs vanished in GetBytes() when the
326 2005-11-28 Atsushi Enomoto <atsushi@ximian.com>
328 * UTF32Encoding.cs : new file.
330 2005-11-22 Atsushi Enomoto <atsushi@ximian.com>
332 * ASCIIEncoding.cs, Latin1Encoding.cs : added EncoderFallback support.
333 * Encoding.cs : changed default fallback selection. Seems like only
334 ASCII and GB18030 uses '?' for replacement.
335 * UTF8Encoding.cs : now that Fallback is read only by default, we
338 2005-11-16 Atsushi Enomoto <atsushi@ximian.com>
340 * UTF8Encoding.cs : safer UTF8Decoder ctor.
342 2005-11-16 Atsushi Enomoto <atsushi@ximian.com>
344 * Decoder.cs : added FallbackBuffer property.
345 * UTF8Encoding.cs : In NET_2_0, use DecoderFallbackBuffer instead of
348 2005-11-15 Atsushi Enomoto <atsushi@ximian.com>
350 * DecoderReplacementFallbackBuffer.cs : it does not have to preserve
352 * EncoderReplacementFallbackBuffer.cs : implemented.
353 * DecoderReplacementFallback.cs, EncoderReplacementFallback.cs :
356 2005-11-15 Atsushi Enomoto <atsushi@ximian.com>
358 * DecoderFallbackBuffer.cs : Reset() does nothing here.
359 * DecoderReplacementFallbackBuffer.cs : implemented, but no idea how
360 bytesUnknown is used.
362 2005-11-15 Atsushi Enomoto <atsushi@ximian.com>
364 * Encoding.cs : added ICloneable, Clone() and new GetEncoding().
366 2005-11-15 Atsushi Enomoto <atsushi@ximian.com>
368 * Encoding.cs : Added IsReadOnly, DecoderFallback and EncoderFallback.
369 * Encoder.cs : Added Fallback property.
370 * Decoder.cs : Added Fallback property.
372 2005-11-15 Atsushi Enomoto <atsushi@ximian.com>
374 * EncoderFallbackBuffer.cs, EncoderFallback.cs,
375 EncoderExceptionFallbackBuffer.cs,
376 EncoderReplacementFallbackBuffer.cs,
377 EncoderFallbackException.cs,
378 EncoderExceptionFallback.cs,
379 EncoderReplacementFallback.cs : new files (not actually used yet).
380 * DecoderExceptionFallback.cs, DecoderFallbackException.cs,
381 DecoderReplacementFallback.cs : [Serializable] and sealed.
382 * DecoderReplacementFallbackBuffer.cs : Reset() was missing.
384 2005-11-14 Atsushi Enomoto <atsushi@ximian.com>
386 * DecoderFallbackBuffer.cs, DecoderFallback.cs,
387 DecoderExceptionFallbackBuffer.cs,
388 DecoderReplacementFallbackBuffer.cs,
389 DecoderFallbackException.cs,
390 DecoderExceptionFallback.cs,
391 DecoderReplacementFallback.cs : new files (not actually used yet).
393 2005-11-14 Miguel de Icaza <miguel@novell.com>
395 * ASCIIEncoding.cs, Encoding: Another snack, just a few methods
398 Also add some checks that were missing.
400 2005-11-11 Sebastien Pouliot <sebastien@ximian.com>
402 * StringBuilder.cs: Fix ISerializable.GetObjectData (remoting tests
403 were failing under 2.0) and two possible integer overflow in CopyTo.
405 2005-11-11 Miguel de Icaza <miguel@novell.com>
407 * Encoding.cs, UnicodeEncoding.cs: A few 2.x methods.
409 * StringBuilder.cs (Text): Added serialization support in 2.x.
411 2005-10-22 Jonathan Pryor <jonpryor@vt.edu>
413 * UTF8Encoding.cs (InternalGetChars/InternalGetCharCount): Fix lead byte
414 check logic for 6 octet sequences. ((ch & 0xFC) == 0xFC) is always true
415 for 0xFF, even though 0xFF isn't a valid lead byte. It should be
416 ((ch & 0xFE) == 0xFC).
418 2005-08-25 Atsushi Enomoto <atsushi@ximian.com>
420 * UTF8Encoding.cs : (InternalGetChars/InternalGetCharCount):
421 Don't exclude FEFF in the resulting text.
423 2005-06-21 Ben Maurer <bmaurer@ximian.com>
425 * StringBuilder.cs (Replace): Do the correct thing when we replace
426 with a longer string. Thanks to Alexander Beznozdrev
427 <abeznozdrev@croc.ru>
429 2005-05-26 Ben Maurer <bmaurer@ximian.com>
431 * Encoding.cs: Use static object for locking. `volatile' to
432 prevent double checked locking error.
434 * StringBuilder.cs: Remove = null inits on fields, saves a few
435 instructions. When we compare _cached_str == _str, we are only
436 interested in pointer based equality, so just do that.
438 2005-05-06 Ben Maurer <bmaurer@ximian.com>
440 * StringBuilder.cs (InternalEnsureCapacity): It is possible that
441 the size we attempt to grow to is more than the max capacity, but
442 that a smaller size will do. In this case, don't throw an
443 exception. Fixes #72244
445 2005-04-16 Atsushi Enomoto <atsushi@ximian.com>
447 * NormalizationForm.cs : new file.
449 2005-03-20 Ben Maurer <bmaurer@ximian.com>
451 * StringBuilder.cs (set_Length): If we set the length, we must
452 clobber the cached string.
454 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
456 * UnicodeEncoding.cs: same fix (\uFEFF) but for Unicode. Patch by
459 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
461 * UTF7Encoding.cs: fix for characters encoded as a shifted sequence
462 whose length is greater than 3. Patch by Svetlana Zholkovsky.
464 2005-01-31 Ben Maurer <bmaurer@ximian.com>
466 * StringBuilder.cs (Remove): We need to do the check that the
467 string isnt being cached *before* we munge it.
469 2005-01-21 Ben Maurer <bmaurer@ximian.com>
471 * StringBuilder.cs: Don't allocate memory on the .ctor, do it
472 lazily. This saves us lots of memory if you only use the
473 stringbuilder once. Also, we can allocate on the second Append,
474 which might reduce the number of buffers allocated.
476 2005-01-14 Lluis Sanches Gual <lluis@novell.com>
478 * StringBuilder.cs: Improved parameter check.
480 2005-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
482 * StringBuilder.cs: when creating the StringBuilder from a string, the
483 maximum capacity remains Int32.MaxValue.
485 2005-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
487 * StringBuilder.cs: throw if the new size is greater than the maximum
488 capacity for the StringBuilder. Patch by luke@octerbar.net. Fixes
491 2004-12-15 Sebastien Pouliot <sebastien@ximian.com>
493 * UTF7Encoding.cs: Fixed warning for unused variable.
495 2004-09-30 Juraj Skripsky <js@hotfeet.ch>
497 * Encoding.cs: Add encoding name "latin1" for compatibility with
500 2004-09-25 Zoltan Varga <vargaz@freemail.hu>
502 * StringBuilder.cs (Append): Use InternalStrcpy to append char arrays.
504 2004-09-09 Tim Coleman <tim@timcoleman.com>
506 * StringBuilder.cs: Added AppendLine methods for Fx 2.0
508 2004-06-23 Sebastien Pouliot <sebastien@ximian.com>
510 * UTF7Encoding.cs: Fixed decoding table. Fixed char count calculation.
511 Follow the RFC1642 rules for "overbits".
513 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
515 * ASCIIEncoding.cs: added TODO for serialization
516 * StringBuilder.cs: added TODO for serialization
517 * UnicodeEncoding.cs: added TODO for serialization
518 * UTF7Encoding.cs: added TODO for serialization
519 * UTF8Encoding.cs: added TODO for serialization
521 2004-06-10 Gert Driesen <drieseng@users.sourceforge.net>
523 * Encoding.cs: Marked protected internal field as internal to
526 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
528 * UTF8Encoding.cs : Length check must be done only when the character
529 sequence is valid (i.e. should not check when it is overlongs).
530 See also TestThrowOnInvalid().
532 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
534 * UTF8Encoding.cs : Added Overlong check to InternalGetCharCount().
536 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
538 * UTF8Encoding.cs : Throw overlongs error only when throwOnInvalid is
539 true. Otherwise just ignore them.
541 2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
543 * StringBuilder.cs: Fixed potential integer overflows in several
546 2004-05-14 Sebastien Pouliot <sebastien@ximian.com>
548 * UTF8Encoding.cs: Moved charCount-- after the check for surrogate
549 pair. This fix bug #57009 (and 2 failing unit tests). Added code
550 to check for some (like MS) overlongs.
552 2004-05-03 Lluis Sanches Gual <lluis@ximian.com>
554 * Encoding.cs: Use name const to load I18N assembly.
556 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
558 * Encoding.cs: Call shortcut String.ToLowerInvariant
560 2004-04-13 Miguel de Icaza <miguel@ximian.com>
562 * Encoding.cs: Use new internal codepage setup.
564 2004-04-10 Atsushi Enomoto <atsushi@ximian.com>
566 * UTF7Encoding.cs : GetMaxByteCount() was based on incorrect formula.
568 2004-03-19 Dick Porter <dick@ximian.com>
570 * UnicodeEncoding.cs: GetCharCount(), GetChars(): Check for the
571 BOM at the beginning of the range of characters we're interested
572 in, not at the beginning of the array. Fixes bug 51531.
574 2004-03-10 Juraj Skripsky <juraj@hotfeet.ch>
577 (Insert int, char[]): fix by using new string(char[]) instead of
578 char[].ToString() and simplify.
579 (Insert int, string, int): add LAMESPEC note.
580 (Insert int char[], int, int): handle value==null according to spec.
581 Use a string instead of char array + Array.Copy (gonzalo)
583 2004-03-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
586 (Append (string)): remove redundant check.
588 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
591 (Remove): fixed offsets when copying and set the new size. Fixes bug
594 2004-01-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
596 * StringBuilder.cs: added checks for null in a few Append methods.
598 Tue Jan 13 22:23:25 CET 2004 Paolo Molaro <lupus@ximian.com>
600 * StringBuilder.cs: fixed start offset in Append(char).
602 2004-01-12 Patrik Torstensson
604 * StringBuilder.cs: new implementation that uses
605 string as a buffer instead of a array of chars.
607 2003-12-07 Ben Maurer <bmaurer@users.sourceforge.net>
609 * UTF8Encoding.cs (GetBytes string): Do not call base
610 The version in Encoding will call string.ToCharArray (),
611 allocating an extra array. By calling the better method
612 in our own class we can save memory.
614 2003-11-17 Ben Maurer <bmaurer@users.sourceforge.net>
616 * StringBuilder.cs (Insert int, char): It is really silly and
617 wasteful to allocate an array here. We can just copy the value
620 2003-11-11 Miguel de Icaza <miguel@ximian.com>
622 * Encoding.cs: Use an internal variable to track the parameters of
623 each encoder, since the .NET API does not expose virtual methods
624 in the child classes, we should not depend on that.
626 * ASCIIEncoding.cs, UTF7Encoding, UTF8Encoding, UnicodeEncoding:
627 Initialize the parameters for base class encoding here.
629 2003-09-01 Miguel de Icaza <miguel@ximian.com>
631 * Encoding.cs (UTF8Unmarked): make it also not error out on
632 invalid input, that is what the Microsoft default is for the
633 StreamReader and BinaryReader expect (our main consumers).
635 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
638 (AppendFormat) Use FormatHelper in System.String to avoid
639 allocating an extra StringBuilder.
640 (Append string, int, int), (Append char, int): Both were
641 allocating extra strings.
643 2003-06-05 Nick Drochak <ndrochak@gol.com>
645 * UTF8Encoding.cs: Cleanups according to class status page
647 2003-05-10 Miguel de Icaza <miguel@ximian.com>
649 * Encoding.cs (GetEncoding): Add all the aliases documented in the
650 framework. We were missing a few.
652 Reorganize the table. Also, convert the input name into the
653 lower-case - to _ before we compare against our table.
655 2003-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
657 * StringBuilder.cs: fixed bug #41397.
659 2003-04-12 Miguel de Icaza <miguel@ximian.com>
661 * Encoding.cs: Enabled the code paths that we did have commented
662 out, they seem to work now.
664 Fri Apr 11 08:29:50 CEST 2003 Paolo Molaro <lupus@ximian.com>
666 * StringBuilder.cs: cache the result from ToString().
668 2003-03-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
670 * UnicodeEncoding.cs: changed WebName from unicodeFFFE to utf-16be.
671 (unicodeFFFE is MS compliant, but isn't valid IANA encoding name.)
673 2003-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
675 * ASCIIEncoding.cs: fixed bug #38984.
677 2003-03-05 Aleksey Demakov <avd@openlinksw.com>
680 * Latin1Encoding.cs: fix GetString (byte[]) and
681 GetString (byte[], int, int) for zero-length case.
683 2003-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
685 * Latin1Encoding.cs: added Serializable attribute.
687 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
689 * Encoding.cs: removed UnixConsoleEncoding.
691 2003-01-30 Zoltan Varga <vargaz@freemail.hu>
693 * StringBuilder.cs: fix the constructor: 'value' can be NULL,
694 'capacity' must be >=0, use defaultCapacity only if capacity equals 0.
695 This fixes the StringBuilder unit tests.
697 2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
699 * StringBuilder.cs: fixed typo in set_Length.
701 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
703 * Encoding.cs: g_get_encoding () returns "ASCII". In Default, when the
704 encoding is not found, default to UTF8Unmarked. Removed comment in
705 UnixConsoleEncoding, because it's now Default, which gets the
706 encoding internally using g_get_encoding ().
708 2002-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
710 * StringBuilder.cs: fixed constructor. Thanks to marcusU for reporting.
712 Tue Nov 19 13:03:27 CET 2002 Paolo Molaro <lupus@ximian.com>
714 * UTF8Encoding.cs: fix GetByteCount (), too.
716 2002-11-19 Miguel de Icaza <miguel@ximian.com>
718 * UnicodeEncoding.cs: the bytemark should only be used to return
719 information in GetPreamble, not to actually encode the information
720 on the stream. That is taken care of by the Stream classes.
722 * UTF8Encoding.cs: ditto.
724 2002-11-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
726 * StringBuilder.cs: only move the remaining chars in Remove.
728 2002-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
730 * Encoding.cs: unixConsoleEncoding is now the same as Default. Avoid
731 locking whenever possible.
733 2002-10-30 Miguel de Icaza <miguel@ximian.com>
735 * Encoding.cs (UTF8Unmarked): New static property, used to return
736 a no-markers UTf8 encoder, used in a few places in the class library.
738 2002-09-06 Miguel de Icaza <miguel@ximian.com>
740 * Encoding.cs (UTF8, Unicode): Create with a preamble, that is
741 what the Microsoft version does.
743 (UnixConsoleEncoding): New internal method, used to get the
744 encoding, in the future, this should pull the locale, map to
745 charset and then code page.
747 Wed Sep 4 14:01:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
749 * Encoding.cs: use icall to get default codepage.
750 * DefaultEncoding.cs: remove useless class.
752 Mon Aug 26 16:44:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
754 * *.cs: change to conform to mono coding style.
756 2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
764 * UnicodeEncoding.cs: added Serializable attribute.
766 2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
768 * StringBuilder.cs: improved performace by using String.InternalCopyTo
769 instead of using ToCharArray all over the place (more that 50% of
770 speed improvement when using Append).
772 Wed Aug 21 20:02:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
774 * *.cs: imported the code donated by Rhys Weatherley
775 <rweather@southern-storm.com.au>.
777 2002-08-18 Dick Porter <dick@ximian.com>
779 * Encoding.cs: Make GetString() return a useful representation of
780 the bytes, rather than "System.Char[]"
782 2002-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
784 * StringBuilder.cs: added IndexerName to indexer.
786 2002-08-01 Jason Diamond <jason@injektilo.org>
788 * Encoding.cs: Use GetByteCount instead of GetMaxByteCount when
789 converting chars to bytes.
791 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
793 * StringBuilder.cs: updated comments. MaxCapacity always returns
796 2002-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
798 * StringBuilder.cs: implemented AppendFormat methods using
799 String.Format. Thanks Paolo!
801 This makes xsp generate correct C# output in linux :-). I still need
802 to do more testing, though.
804 Mon Jun 3 12:58:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
806 * ASCIIEncoding.cs: fixed handling of 0 bytecount.
808 2002-05-19 Martin Baulig <martin@gnome.org>
810 * Encoder.cs (IConvEncoder.GetByteCount, IConvEncoder.GetBytes):
811 Added exception handling.
813 * Decoder.cs (IConvDecoder.GetCharCount, IConvDecoder.GetChars):
814 Added exception handling.
816 2002/04/02 Nick Drochak <ndrochak@gol.com>
818 * StringBuilder.cs (Append): Removed obsolete overload.
820 2002-03-21 Mike Kestner <mkestner@speakeasy.net>
822 * ASCIIEncoding.cs : Fix off by one error in Get(Char|Byte)Count.
824 Thu Mar 21 17:38:19 CET 2002 Paolo Molaro <lupus@ximian.com>
826 * StringBuilder.cs: no need to intern the string returned by ToString().
828 2002-03-17 Mike Kestner <mkestner@speakeasy.net>
830 * ASCIIEncoding.cs: Implement all the overridden methods. No longer
831 dependent on iconv icalls.
832 * Encoding.cs: Fix count bugs in GetBytes and GetChars. Add virtual
835 Wed Mar 13 00:26:29 CET 2002 Paolo Molaro <lupus@ximian.com>
837 * StringBuilder.cs: make ToString() return a interned string, this
838 seems to be required to make switch on string work.
840 Fri Mar 8 17:29:58 CET 2002 Paolo Molaro <lupus@ximian.com>
842 * StringBuilder.cs: make Append(char) do the smart thing.
844 2002-01-05 Ravi Pratap <ravi@ximian.com>
846 * ASCIIEncoding.cs, Encoding.cs, UTF7Encoding.cs,
847 UnicodeEncoding.cs: MonoTODO attribute marking.
849 * StringBuilder.cs : Ditto.
851 Wed Nov 14 17:05:22 CET 2001 Paolo Molaro <lupus@ximian.com>
853 * Encoding.cs: renamed some fields.
854 * StringBuilder.cs: CLSCompliant updates.
856 2001-10-29 Nick Drochak <ndrochak@gol.com>
858 * StringBuilder.cs: Throw exceptions when constructor paramter(s) are
859 invalid. Just like MS does (as best as I can tell).
861 Tests for these exceptions are now added to the unit tests as well.
863 2001-10-25 Nick Drochak <ndrochak@gol.com>
865 * StringBuilder.cs: Throw exception if they try to make a StringBuilder
866 whose capacity is greater than the MaxCapacity.
868 I added some tests for the constructors and the above exception. More
871 2001-10-23 Nick Drochak <ndrochak@gol.com>
873 * StringBuilder.cs: Refactored constructor code into just one
874 constructor. All the other construtors call it. Also supplied missing
875 constructors so the class has all those in the spec.
877 Added the MaxCapacity property as well, however this needs to be
878 completed to return a value is related to the available system memory.
880 2001-10-07 Miguel de Icaza <miguel@ximian.com>
882 * Encoding.cs, UTF8Encoding.cs, UTF7Encoding.cs, ASCIIEncoding.cs,
883 UnicodeEncoding.cs: Corrected API.
885 * UTF8Encoding.cs: Checked in changes from Rafael.
887 2001-08-28 Dietmar Maurer <dietmar@ximian.com>
889 * UTF8Encoding.cs: impl. clumsy GetBytes
891 2001-07-16 Marcin Szczepanski <marcins@zipworld.com.au>
893 * StringBuilder.cs (Text): Fixed.
895 * StringBuilderTest.cs: Implement Test suite.
897 2001-07-12 Marcin Szczepanski <marcins@zipworld.com.au>
899 * StringBuilder.cs: Implemented.
901 The only methods left unimplemented are the AppendFormat( ... )
902 ones just because it's probably better to wait until some of the
903 Format related classes are implemented. I've put that as a TODO
904 comment at the top and created the methods with a "nop" body.
906 2001-06-26 Sean MacIsaac <macisaac@ximian.com>
908 * UnicodeEncoding.cs: Members added so that a clean compile is
911 * ASCIIEncoding.cs: Members added so that a clean compile is
914 * UTF7Encoding.cs: Members added so that a clean compile is
917 * UTF8Encoding.cs: Members added so that a clean compile is
920 * Encoding.cs: All public members included. Most members