1 2005-05-06 Ben Maurer <bmaurer@ximian.com>
3 * StringBuilder.cs (InternalEnsureCapacity): It is possible that
4 the size we attempt to grow to is more than the max capacity, but
5 that a smaller size will do. In this case, don't throw an
6 exception. Fixes #72244
8 2005-04-16 Atsushi Enomoto <atsushi@ximian.com>
10 * NormalizationForm.cs : new file.
12 2005-03-20 Ben Maurer <bmaurer@ximian.com>
14 * StringBuilder.cs (set_Length): If we set the length, we must
15 clobber the cached string.
17 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
19 * UnicodeEncoding.cs: same fix (\uFEFF) but for Unicode. Patch by
22 2005-03-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
24 * UTF7Encoding.cs: fix for characters encoded as a shifted sequence
25 whose length is greater than 3. Patch by Svetlana Zholkovsky.
27 2005-01-31 Ben Maurer <bmaurer@ximian.com>
29 * StringBuilder.cs (Remove): We need to do the check that the
30 string isnt being cached *before* we munge it.
32 2005-01-21 Ben Maurer <bmaurer@ximian.com>
34 * StringBuilder.cs: Don't allocate memory on the .ctor, do it
35 lazily. This saves us lots of memory if you only use the
36 stringbuilder once. Also, we can allocate on the second Append,
37 which might reduce the number of buffers allocated.
39 2005-01-14 Lluis Sanches Gual <lluis@novell.com>
41 * StringBuilder.cs: Improved parameter check.
43 2005-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
45 * StringBuilder.cs: when creating the StringBuilder from a string, the
46 maximum capacity remains Int32.MaxValue.
48 2005-01-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
50 * StringBuilder.cs: throw if the new size is greater than the maximum
51 capacity for the StringBuilder. Patch by luke@octerbar.net. Fixes
54 2004-12-15 Sebastien Pouliot <sebastien@ximian.com>
56 * UTF7Encoding.cs: Fixed warning for unused variable.
58 2004-09-30 Juraj Skripsky <js@hotfeet.ch>
60 * Encoding.cs: Add encoding name "latin1" for compatibility with
63 2004-09-25 Zoltan Varga <vargaz@freemail.hu>
65 * StringBuilder.cs (Append): Use InternalStrcpy to append char arrays.
67 2004-09-09 Tim Coleman <tim@timcoleman.com>
69 * StringBuilder.cs: Added AppendLine methods for Fx 2.0
71 2004-06-23 Sebastien Pouliot <sebastien@ximian.com>
73 * UTF7Encoding.cs: Fixed decoding table. Fixed char count calculation.
74 Follow the RFC1642 rules for "overbits".
76 2004-06-15 Gert Driesen <drieseng@users.sourceforge.net>
78 * ASCIIEncoding.cs: added TODO for serialization
79 * StringBuilder.cs: added TODO for serialization
80 * UnicodeEncoding.cs: added TODO for serialization
81 * UTF7Encoding.cs: added TODO for serialization
82 * UTF8Encoding.cs: added TODO for serialization
84 2004-06-10 Gert Driesen <drieseng@users.sourceforge.net>
86 * Encoding.cs: Marked protected internal field as internal to
89 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
91 * UTF8Encoding.cs : Length check must be done only when the character
92 sequence is valid (i.e. should not check when it is overlongs).
93 See also TestThrowOnInvalid().
95 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
97 * UTF8Encoding.cs : Added Overlong check to InternalGetCharCount().
99 2004-06-07 Atsushi Enomoto <atsushi@ximian.com>
101 * UTF8Encoding.cs : Throw overlongs error only when throwOnInvalid is
102 true. Otherwise just ignore them.
104 2004-05-26 Sebastien Pouliot <sebastien@ximian.com>
106 * StringBuilder.cs: Fixed potential integer overflows in several
109 2004-05-14 Sebastien Pouliot <sebastien@ximian.com>
111 * UTF8Encoding.cs: Moved charCount-- after the check for surrogate
112 pair. This fix bug #57009 (and 2 failing unit tests). Added code
113 to check for some (like MS) overlongs.
115 2004-05-03 Lluis Sanches Gual <lluis@ximian.com>
117 * Encoding.cs: Use name const to load I18N assembly.
119 2004-04-25 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
121 * Encoding.cs: Call shortcut String.ToLowerInvariant
123 2004-04-13 Miguel de Icaza <miguel@ximian.com>
125 * Encoding.cs: Use new internal codepage setup.
127 2004-04-10 Atsushi Enomoto <atsushi@ximian.com>
129 * UTF7Encoding.cs : GetMaxByteCount() was based on incorrect formula.
131 2004-03-19 Dick Porter <dick@ximian.com>
133 * UnicodeEncoding.cs: GetCharCount(), GetChars(): Check for the
134 BOM at the beginning of the range of characters we're interested
135 in, not at the beginning of the array. Fixes bug 51531.
137 2004-03-10 Juraj Skripsky <juraj@hotfeet.ch>
140 (Insert int, char[]): fix by using new string(char[]) instead of
141 char[].ToString() and simplify.
142 (Insert int, string, int): add LAMESPEC note.
143 (Insert int char[], int, int): handle value==null according to spec.
144 Use a string instead of char array + Array.Copy (gonzalo)
146 2004-03-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
149 (Append (string)): remove redundant check.
151 2004-01-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
154 (Remove): fixed offsets when copying and set the new size. Fixes bug
157 2004-01-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
159 * StringBuilder.cs: added checks for null in a few Append methods.
161 Tue Jan 13 22:23:25 CET 2004 Paolo Molaro <lupus@ximian.com>
163 * StringBuilder.cs: fixed start offset in Append(char).
165 2004-01-12 Patrik Torstensson
167 * StringBuilder.cs: new implementation that uses
168 string as a buffer instead of a array of chars.
170 2003-12-07 Ben Maurer <bmaurer@users.sourceforge.net>
172 * UTF8Encoding.cs (GetBytes string): Do not call base
173 The version in Encoding will call string.ToCharArray (),
174 allocating an extra array. By calling the better method
175 in our own class we can save memory.
177 2003-11-17 Ben Maurer <bmaurer@users.sourceforge.net>
179 * StringBuilder.cs (Insert int, char): It is really silly and
180 wasteful to allocate an array here. We can just copy the value
183 2003-11-11 Miguel de Icaza <miguel@ximian.com>
185 * Encoding.cs: Use an internal variable to track the parameters of
186 each encoder, since the .NET API does not expose virtual methods
187 in the child classes, we should not depend on that.
189 * ASCIIEncoding.cs, UTF7Encoding, UTF8Encoding, UnicodeEncoding:
190 Initialize the parameters for base class encoding here.
192 2003-09-01 Miguel de Icaza <miguel@ximian.com>
194 * Encoding.cs (UTF8Unmarked): make it also not error out on
195 invalid input, that is what the Microsoft default is for the
196 StreamReader and BinaryReader expect (our main consumers).
198 2003-08-21 Ben Maurer <bmaurer@users.sourceforge.net>
201 (AppendFormat) Use FormatHelper in System.String to avoid
202 allocating an extra StringBuilder.
203 (Append string, int, int), (Append char, int): Both were
204 allocating extra strings.
206 2003-06-05 Nick Drochak <ndrochak@gol.com>
208 * UTF8Encoding.cs: Cleanups according to class status page
210 2003-05-10 Miguel de Icaza <miguel@ximian.com>
212 * Encoding.cs (GetEncoding): Add all the aliases documented in the
213 framework. We were missing a few.
215 Reorganize the table. Also, convert the input name into the
216 lower-case - to _ before we compare against our table.
218 2003-05-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
220 * StringBuilder.cs: fixed bug #41397.
222 2003-04-12 Miguel de Icaza <miguel@ximian.com>
224 * Encoding.cs: Enabled the code paths that we did have commented
225 out, they seem to work now.
227 Fri Apr 11 08:29:50 CEST 2003 Paolo Molaro <lupus@ximian.com>
229 * StringBuilder.cs: cache the result from ToString().
231 2003-03-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
233 * UnicodeEncoding.cs: changed WebName from unicodeFFFE to utf-16be.
234 (unicodeFFFE is MS compliant, but isn't valid IANA encoding name.)
236 2003-03-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
238 * ASCIIEncoding.cs: fixed bug #38984.
240 2003-03-05 Aleksey Demakov <avd@openlinksw.com>
243 * Latin1Encoding.cs: fix GetString (byte[]) and
244 GetString (byte[], int, int) for zero-length case.
246 2003-02-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
248 * Latin1Encoding.cs: added Serializable attribute.
250 2003-02-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
252 * Encoding.cs: removed UnixConsoleEncoding.
254 2003-01-30 Zoltan Varga <vargaz@freemail.hu>
256 * StringBuilder.cs: fix the constructor: 'value' can be NULL,
257 'capacity' must be >=0, use defaultCapacity only if capacity equals 0.
258 This fixes the StringBuilder unit tests.
260 2003-01-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
262 * StringBuilder.cs: fixed typo in set_Length.
264 2002-12-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
266 * Encoding.cs: g_get_encoding () returns "ASCII". In Default, when the
267 encoding is not found, default to UTF8Unmarked. Removed comment in
268 UnixConsoleEncoding, because it's now Default, which gets the
269 encoding internally using g_get_encoding ().
271 2002-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
273 * StringBuilder.cs: fixed constructor. Thanks to marcusU for reporting.
275 Tue Nov 19 13:03:27 CET 2002 Paolo Molaro <lupus@ximian.com>
277 * UTF8Encoding.cs: fix GetByteCount (), too.
279 2002-11-19 Miguel de Icaza <miguel@ximian.com>
281 * UnicodeEncoding.cs: the bytemark should only be used to return
282 information in GetPreamble, not to actually encode the information
283 on the stream. That is taken care of by the Stream classes.
285 * UTF8Encoding.cs: ditto.
287 2002-11-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
289 * StringBuilder.cs: only move the remaining chars in Remove.
291 2002-11-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
293 * Encoding.cs: unixConsoleEncoding is now the same as Default. Avoid
294 locking whenever possible.
296 2002-10-30 Miguel de Icaza <miguel@ximian.com>
298 * Encoding.cs (UTF8Unmarked): New static property, used to return
299 a no-markers UTf8 encoder, used in a few places in the class library.
301 2002-09-06 Miguel de Icaza <miguel@ximian.com>
303 * Encoding.cs (UTF8, Unicode): Create with a preamble, that is
304 what the Microsoft version does.
306 (UnixConsoleEncoding): New internal method, used to get the
307 encoding, in the future, this should pull the locale, map to
308 charset and then code page.
310 Wed Sep 4 14:01:25 CEST 2002 Paolo Molaro <lupus@ximian.com>
312 * Encoding.cs: use icall to get default codepage.
313 * DefaultEncoding.cs: remove useless class.
315 Mon Aug 26 16:44:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
317 * *.cs: change to conform to mono coding style.
319 2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
327 * UnicodeEncoding.cs: added Serializable attribute.
329 2002-08-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
331 * StringBuilder.cs: improved performace by using String.InternalCopyTo
332 instead of using ToCharArray all over the place (more that 50% of
333 speed improvement when using Append).
335 Wed Aug 21 20:02:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
337 * *.cs: imported the code donated by Rhys Weatherley
338 <rweather@southern-storm.com.au>.
340 2002-08-18 Dick Porter <dick@ximian.com>
342 * Encoding.cs: Make GetString() return a useful representation of
343 the bytes, rather than "System.Char[]"
345 2002-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
347 * StringBuilder.cs: added IndexerName to indexer.
349 2002-08-01 Jason Diamond <jason@injektilo.org>
351 * Encoding.cs: Use GetByteCount instead of GetMaxByteCount when
352 converting chars to bytes.
354 2002-07-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
356 * StringBuilder.cs: updated comments. MaxCapacity always returns
359 2002-06-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
361 * StringBuilder.cs: implemented AppendFormat methods using
362 String.Format. Thanks Paolo!
364 This makes xsp generate correct C# output in linux :-). I still need
365 to do more testing, though.
367 Mon Jun 3 12:58:40 CEST 2002 Paolo Molaro <lupus@ximian.com>
369 * ASCIIEncoding.cs: fixed handling of 0 bytecount.
371 2002-05-19 Martin Baulig <martin@gnome.org>
373 * Encoder.cs (IConvEncoder.GetByteCount, IConvEncoder.GetBytes):
374 Added exception handling.
376 * Decoder.cs (IConvDecoder.GetCharCount, IConvDecoder.GetChars):
377 Added exception handling.
379 2002/04/02 Nick Drochak <ndrochak@gol.com>
381 * StringBuilder.cs (Append): Removed obsolete overload.
383 2002-03-21 Mike Kestner <mkestner@speakeasy.net>
385 * ASCIIEncoding.cs : Fix off by one error in Get(Char|Byte)Count.
387 Thu Mar 21 17:38:19 CET 2002 Paolo Molaro <lupus@ximian.com>
389 * StringBuilder.cs: no need to intern the string returned by ToString().
391 2002-03-17 Mike Kestner <mkestner@speakeasy.net>
393 * ASCIIEncoding.cs: Implement all the overridden methods. No longer
394 dependent on iconv icalls.
395 * Encoding.cs: Fix count bugs in GetBytes and GetChars. Add virtual
398 Wed Mar 13 00:26:29 CET 2002 Paolo Molaro <lupus@ximian.com>
400 * StringBuilder.cs: make ToString() return a interned string, this
401 seems to be required to make switch on string work.
403 Fri Mar 8 17:29:58 CET 2002 Paolo Molaro <lupus@ximian.com>
405 * StringBuilder.cs: make Append(char) do the smart thing.
407 2002-01-05 Ravi Pratap <ravi@ximian.com>
409 * ASCIIEncoding.cs, Encoding.cs, UTF7Encoding.cs,
410 UnicodeEncoding.cs: MonoTODO attribute marking.
412 * StringBuilder.cs : Ditto.
414 Wed Nov 14 17:05:22 CET 2001 Paolo Molaro <lupus@ximian.com>
416 * Encoding.cs: renamed some fields.
417 * StringBuilder.cs: CLSCompliant updates.
419 2001-10-29 Nick Drochak <ndrochak@gol.com>
421 * StringBuilder.cs: Throw exceptions when constructor paramter(s) are
422 invalid. Just like MS does (as best as I can tell).
424 Tests for these exceptions are now added to the unit tests as well.
426 2001-10-25 Nick Drochak <ndrochak@gol.com>
428 * StringBuilder.cs: Throw exception if they try to make a StringBuilder
429 whose capacity is greater than the MaxCapacity.
431 I added some tests for the constructors and the above exception. More
434 2001-10-23 Nick Drochak <ndrochak@gol.com>
436 * StringBuilder.cs: Refactored constructor code into just one
437 constructor. All the other construtors call it. Also supplied missing
438 constructors so the class has all those in the spec.
440 Added the MaxCapacity property as well, however this needs to be
441 completed to return a value is related to the available system memory.
443 2001-10-07 Miguel de Icaza <miguel@ximian.com>
445 * Encoding.cs, UTF8Encoding.cs, UTF7Encoding.cs, ASCIIEncoding.cs,
446 UnicodeEncoding.cs: Corrected API.
448 * UTF8Encoding.cs: Checked in changes from Rafael.
450 2001-08-28 Dietmar Maurer <dietmar@ximian.com>
452 * UTF8Encoding.cs: impl. clumsy GetBytes
454 2001-07-16 Marcin Szczepanski <marcins@zipworld.com.au>
456 * StringBuilder.cs (Text): Fixed.
458 * StringBuilderTest.cs: Implement Test suite.
460 2001-07-12 Marcin Szczepanski <marcins@zipworld.com.au>
462 * StringBuilder.cs: Implemented.
464 The only methods left unimplemented are the AppendFormat( ... )
465 ones just because it's probably better to wait until some of the
466 Format related classes are implemented. I've put that as a TODO
467 comment at the top and created the methods with a "nop" body.
469 2001-06-26 Sean MacIsaac <macisaac@ximian.com>
471 * UnicodeEncoding.cs: Members added so that a clean compile is
474 * ASCIIEncoding.cs: Members added so that a clean compile is
477 * UTF7Encoding.cs: Members added so that a clean compile is
480 * UTF8Encoding.cs: Members added so that a clean compile is
483 * Encoding.cs: All public members included. Most members