2009-03-01 Zoltan Varga <vargaz@gmail.com>
[mcs.git] / class / System / System.Collections.Specialized / ChangeLog
blob35b5f1f951962ea1182855d20b77e1582f15b7d8
1 2009-03-01  Zoltan Varga  <vargaz@gmail.com>
3         * NameValueCollection.cs (AsSingleString): Avoid the allocation of
4         a stringbuilder for collections with only one element.
6 2008-09-09  Scott Peterson  <lunchtimemama@gmail.com>
8         * BitVector32.cs: Minor fixes. Simplified Section.ToString and
9         GetHashCode, and BitVector32.Equals.
11 2008-08-06  Scott Peterson  <lunchtimemama@gmail.com>
13         * BitVector32.cs: Fixed a bug which allowed for invalid sections
14         to be created with CreateSection. Also simplified HighestSetBit
15         algorithm and got rid ofNumberOfSetBits (using HighestSetBit
16         works just fine).
18 2008-07-31  Jb Evain  <jbevain@novell.com>
20         * StringDictionary.cs: remove ComponentModel bits for NET_2_1.
22 2008-04-13  Jb Evain  <jbevain@novell.com>
24         * CollectionsUtil.cs: internalize for the 2.1 profile.
25         Merged from the Moonlight 2 branch.
27 2008-01-07  Juraj Skripsky <js@hotfeet.ch>
29         * NameObjectCollectionBase.cs: Add argument checking in CopyTo,
30         replace use of enumerator by for-loop. Check IsReadOnly in BaseSet()
31         only on the 2.0 profile.
33 2007-04-29  Ilya Kharmatsky <ilyak@mainsoft.com>
35         * NameValueCollection.cs: Proper exception handling in several
36         constructors and CopyTo method, under NET_2_0 target.
38 2007-04-15  Marek Safar  <marek.safar@gmail.com>
40         * ListDictionary: Removed not used variable.
42 2007-03-27  Alan McGovern  <alan.mcgovern@gmail.com>
44         * BitVector32.cs: Bugfix for op_inequality.
46 2007-01-18  Konstantin Triger  <kostat@mainsoft.com>
48         * OrderedDictionary.cs: use IEqualityComparer for key comparison.
50 2006-10-03  Andrew Skiba  <andrews@mainsoft.com>
52         * ListDictionary.cs: remove unnecessary out parameter
54 2006-10-02  Gert Driesen  <drieseng@users.sourceforge.net>
56         * CollectionsUtil.cs: Set eol-style to CRLF.
57         * StringDictionary.cs: Fixed line endings. Set eol-style to CRLF.
58         * StringEnumerator.cs: Set eol-style to CRLF.
59         * OrderDictionary.cs: Set eol-style to CRLF.
61 2006-09-30  Gert Driesen  <drieseng@users.sourceforge.net>
63         * OrderedDictionary.cs: IsReadOnly, indexers, Keys and Values should
64         not be virtual.
66 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
68         * BitVector32.cs : oops those operators are for BitVector32.Section,
69           not BitVector32 itself.
71 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
73         * BitVector32.cs : added operator== and != in 2.0.
75 2006-03-11  Miguel de Icaza  <miguel@novell.com>
77         * IOrderedDictionary.cs: Flag GetEnumerator as a "new" method to
78         avoid warning.
80 2005-11-30  Sebastien Pouliot  <sebastien@ximian.com> 
82         * OrderedDictionary.cs: OnDeserialization is protected virtual (not 
83         private).
85 2005-11-30  Sebastien Pouliot  <sebastien@ximian.com>
87         * BitVector32.cs: Fixed 2.0 API changes and this[int] setter under 2.0
88         * HybridDictionary.cs: Fixed Contains different behaviour under 2.0.
89         * IOrderedDictionary.cs: Added missing GetEnumarator to the interface.
90         * NameObjectCollectionBase.cs: Fixed 2.0 API changes and 
91         serialization.
92         * NameValueCollection.cs: Fixed 2.0 API changes.
93         * OrderedDictionary.cs: Fixed API changes, serialization and this[int]
94         setter.
95         * StringDictionary.cs: Added missing null checks.
97 2005-10-26  Raja R Harinath  <rharinath@novell.com>
99         * HybridDictionary.cs (is_list): Remove.
100         (inner): Remove 'set' accessor.
101         (HybridDictionary, Switch): Initialize 'list' and 'hashtable' directly.
103 2005-10-26  Svetlana Zholkovsky  <svetlanaz@mainsoft.com>
105         * NameObjectCollectionBase.cs
106       ListDictionary.cs
107       HybridDictionary.cs
108       Fix serialization compatibility with .NET
110 2005-09-01  Raja R Harinath  <rharinath@novell.com>
112         * NameValueCollection.cs (Add): Add a key from the other
113         collection even if its associated value list is empty.
114         Fix regression introduced by last change.
116 2005-08-30  Jackson Harper  <jackson@ximian.com>
118         * NameValueCollection.cs: Don't crash when we have empty
119         collections.
121 2005-08-19  Jb Evain  <jbevain@gmail.com>
123         * NameObjectCollectionBase (GetEnumerator):
124                 Use the virtual modifier only in 2.0 profile.
126 2005-08-03  Raja R Harinath  <rharinath@novell.com>
128         * ListDictionary.cs: Rewrite to reduce key comparison overhead.
129         Unify all list traversals into FindEntry.
130         (AreEqual): Remove.
131         (FindEntry): Split into two duplicate loops, one when comparer ==
132         null, the other when it isn't.  Add new out parameter that points
133         to the entry preceding the result.
134         (Add, AddImpl, this []): Update.
135         (Remove): Use FindEntry for traversal.
136         (CopyTo): Add more tests.
137         (ListEntryEnumerator): Simplify.
138         (ListEntryCollection, ListEntryCollectionEnumerator): Likewise.
140         * HybridDictionary.cs: Rewrite to avoid a test on each operation.
141         (list, hashtable): Remove.
142         (inner): New IDictionary field that can hold either a list
143         dictionary or a hashtable.
144         (is_list): New.  Notes whether 'inner' holds a list dictionary or not.
145         (Clear): Don't change a hashtable to a list dictionary.
147 2005-07-25  Lluis Sanchez Gual <lluis@novell.com>
149         * NameObjectCollectionBase.cs: Don't throw an exception in
150         OnDeserialization if infoCopy has not been set, which means that
151         the serialization constructor has not been called, because
152         a subclass may completely override that constructor.
153         This fixes bug #75607.
155 2005-05-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
157         * ProcessStringDictionary.cs: PlatformID for 2.0.
159 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
161         * NameObjectCollectionBase.cs: after 1.0, this uses DefaultInvariant for
162         the hash code provider and comparer, as Ben said.
164 2005-05-05  Lluis Sanchez Gual <lluis@novell.com>
166         * OrderedDictionary.cs: Don't crash when removing an item
167         that is not in the dictionary.
169 2005-05-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
171         * ProcessStringDictionary.cs: on non-windows system, don't make the
172         hashtable case-insensitive. Fixes bug #74796.
174 2005-03-23  Lluis Sanchez Gual <lluis@novell.com>
176         * OrderedDictionary.cs: Fix bug in item setter.
178 2005-03-04  Lluis Sanchez Gual <lluis@novell.com>
180         * OrderedDictionary.cs: Implemented.
182 2004-08-16  Duncan Mak  <duncan@ximian.com>
184         * NameObjectCollectionBase.cs: Fix line endings. It's mostly in
185         DOS endings, so I left it at that.
186         (GetEnumerator): Made virtual.
188 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
190         * HybridDictionary.cs: Fixed Contains for null argument (again). Return
191         false when dictionary is empty or else throw an ArgumentNullException.
192         * NameObjectCollectionBase.cs: Now use IComparer to compare keys. This
193         completes a TODO and fix Remove in NameValueCollection.
194         * NameValueCollection.cs: Added missing Rank check in CopyTo (Array,
195         int).
197 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
199         * HybridDictionary.cs: Fixed Contains for null argument.
200         * NameValueCollection.cs: Fixed Set to remove existing values. Fixed
201         Add(NVC) to throw same exception as MS implementation.
203 2004-05-24  Lluis Sanchez Gual  <lluis@ximian.com>
205         * StringCollection.cs: Renamed internal variable to make serialization
206           compatible with MS.NET.
208 2004-03-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
210         * ListDictionary.cs: mark ListEntry as serializable. Thanks to Jan
211         Jaros.
213 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
215         * ProcessStringDictionary.cs: the same as StringDictionary, but
216         doesn't turn keys into lowercase.
218 2003-11-18  Todd Berman <tberman@gentoo.org>
220         * IOrderedDictionary.cs: new v2 interface
222 2003-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
224         * NameObjectCollectionBase.cs: added serialization support.
226 2003-09-04  Duncan Mak  <duncan@ximian.com>
228         Patches from Alon Gazit <along@mainsoft.com>.
230         * BitVector32.cs (CreateSection): Check that the new
231         calculated offset isn't more than 32 and not that the sum of the
232         new offset and the number of set bits is more than 32.
233         (this): Perform bitwise and with the complement of the mask
234         shifted version (~(section.Mask << section.Offset)) and not with
235         the shifted version of the mask's complement (~section.Mask <<
236         section.Offset).
237         (this): Currently doesn't return the correct value when the data
238         in the BitVector32 instance is negative.
239         
240         * ListDictionary.cs (CopyTo): If the array is null, it should
241         throw ArgumentNullException. If the index is less than 0, it
242         should throw ArgumentOutOfRangeException.
243         (Remove): Throw ArgumentNullException when the parameter is null.
245 2003-07-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
247         * StringDictionary.cs: Reworked attributes based on the new Consts scheme
249 2003-07-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
251         * NameObjectCollectionBase.cs: Implemented a few missing methods, fixed public signatures
253 2003-07-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
255         * NameObjectCollectionBase.cs: Fixed signature to be CLSCompliant, changed/corrected header
256         * StringCollection.cs: Improved implementation (should perform better)
258 2003-07-02  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
260         * BitVector32.cs: Implemented missing method
261         * NameValueCollection.cs: Fixed public signature, Styleguidelined header
262         * StringDictionary.cs: Added missing attribute, fixed visibilities
264 2003-06-08  Ben Maurer <bmaurer@users.sourceforge.net>
265         * StringCollection.cs: Rewrote. Now uses ArrayList. Fixes up quite
266         a few Rotor bugs.
268 2003-03-03  Miguel de Icaza  <miguel@ximian.com>
270         * NameValueCollection.cs: Uncoment constructor, an old MCS bug
271         prevented this from working.  Removed test for nullitude of col,
272         as it would have aborted anyways on the dereference in the base
273         constructor call. 
275 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
277         * StringCollection.cs: fixed range checks in CopyTo.
279 2002-11-06  Daniel Stodden <stodden@in.tum.de>
281         * ListDictionary.cs:
282                 - Filled in missing CopyTo()s.
283                 - No, overwriting an entry should not change the Count <:)
285 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
287         * NameValueCollection.cs: fixed Add (NameValueCollection).
289 2002-09-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
291         * StringCollection.cs: fixes bug #29791. Thanks to Marcus Urban
292         (mathpup@mylinuxisp.com).
294 2002-07-22  Tim Coleman <tim@timcoleman.com>
295         * NameObjectCollectionBase.cs: added iterator stubb to 
296                 NameObjectCollectionBase.KeysCollection
298 2002-07-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
300         * HybridDictionary.cs:
301         (Remove): fixed. The value is either in the list or in the hash.
303 2002-06-24  Andrew Birkett <adb@tardis.ed.ac.uk>
305         * BitVector32.cs: Implemented 'set' section indexer.  Check for
306         overly large sections.  Factored out some helper methods. 
308 2002-05-11  Lawrence Pit <loz@cable.a2000.nl>
310         * NameValueCollection.AsStringArray: fixed ArgumentNullException bug.
312 2002-05-10  Lawrence Pit <loz@cable.a2000.nl>
314         * HybridDictionary.cs: implemented
315         * CollectionsUtil.cs: implemented
316         * BitVector32.cs: implemeneted
317         * Modified signature of method ListDictionary.GetEnumerator 
319 Fri Feb 8 18:02:50 CET 2002 Paolo Molaro <lupus@ximian.com>
321         * NameObjectCollectionBase.cs, NameValueCollection.cs: tweaks to make
322         it compile and provide the constructor needed by nunitcore.
324 2002-01-05  Ravi Pratap  <ravi@ximian.com>
326         * BitVector32.cs, ListDictionary.cs : MonoTODO everywhere!
328         * NameObjectCollectionBase.cs, NameValueCollection.cs : Ditto.
330 2001-08-24  Nick Drochak  <ndrochak@gol.com>
331         * NameObjectCollectionBase.cs: Add stub implementation
332         * common.src: Add NameObjectCollectionBase to the build
333         * NameValueCollection.cs: add 'override' to CopyTo().  Maybe
334                 this code actually belongs in the superclass.
336 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
338         * common.src: Add NameValueCollection.cs to the build
340 2001-08-22      John Barnette   <jbarn@httcb.net>
341         * StringDictionary.cs:
342                 Initial working implementation.
343         * ListDictionary.cs:
344                 Initial working implementation.
346 2001-07-17      John Barnette   <jbarn@httcb.net>
347         * StringCollection.cs:
348                 Implemented and working according to spec.
349         * StringIterator.cs:
350                 (ADDED) Implemented and working according to spec.
351         * StringCollectionTest.cs:
352                 (ADDED) Initial revision contains 17 tests; all of 'em
353                 run correctly.  More complicated tests to follow.
355 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
357         * StringCollection.cs: Added so that CodeDom.* would compile.