2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs
	Made ArrayList.GetRange () make a wrapper around the array list, like Microsoft does. Fixes bug #39724.

2003-05-03 Ben Maurer <bmaurer@users.sourceforge.net>
* ArrayList.cs
	Added methods to support IList wrappers

2003-04-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ArrayList.cs: patch from bernard@ugsolutions.com (Bernie Solomon)
	that fixes bug #41684.

2003-04-15 Eduardo Garcia Cebollero <kiwnix@yahoo.es>

	* CaseInsensitiveComparerTest.cs: Fixed Compare Method (now works
	like MS.NET) and implemented the
	CaseInsensitiveComparerTest(culture) constructor.

2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Queue.cs: fixed bug #39046.

2003-02-15  Pedro Martnez Juli  <yoros@wanadoo.es>

	* Hashtable.cs: Make hashtable serializable (at least with binary
	formatter). This process was started by the Hashtable maintainer.

2003-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ArrayList.cs: fixed setSize (!).

2003-01-31  Zoltan Varga  <vargaz@freemail.hu>

	* ArrayList.cs (RemoveAt): duplicated the the code from RemoveRange
	here, since RemoveAt raises a different exception than RemoveRange
	when the index is out-of-range. Fixes the ArrayList unit tests.

	* ArrayList.cs (RemoveRange): fixed indentation.

2003-01-12  Varga Zoltan <vargaz@freemail.hu>

	* ArrayList.cs (RemoveRange): Patch for allowing zero-size
	removal at the end of a list. It also cleans up the argument
	checking code so the raised exceptions have the same message as
	under MS.NET.

2003-01-10  Duncan Mak  <duncan@ximian.com>

	* ArrayList.cs (Insert): Patch from Zoltan
	(Zoltan.2.Varga@nokia.com).

2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* Hashtable.cs: add the key to the error message when
	'key duplication'.

2002-10-15  Vladimir Vukicevic  <vladimir@pobox.com>

	* Queue.cs: update new capacity in grow(), preventing queue from
	constantly looping over old elements in Dequeue(). Also use
	capacity instead of contents.Length in Enqueue().

2002-09-24  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs: Make enumerator throw exception if the ArrayList is
	mutated (Insert, Delete, etc.). Also, fix bug in InsertRange() when
	this was passed as parameter.

2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ArrayList.cs: fixed bug #29658.

2002-08-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>

	* ArrayList.cs:
	* BitArray.cs:
	* CaseInsensitiveComparer.cs:
	* CaseInsensitiveHashCodeProvider.cs:
	* IEnumerable.cs:
	* Queue.cs: misc. fixes based on class status page.

2002-07-22  Tim Coleman  <tim@timcoleman.com>
	* CaseInsensitiveHashCodeProvider.cs: Added missing constructor
		which was breaking System.Web build on linux

2002-07-05  Sergey Chaban <serge@wildwestsoftware.com>

	* SortedList.cs: Implemented thread-safe wrapper. Changed some
	args to camelCase.

2002-07-02  Nick Drochak  <ndrochak@gol.com>

	* SortedList.cs: Constructors should use the capacity given regardless 
	how small. After a Clear() the Capacit should be 16. Since a Dictionary
	might be used in the constructor, make sure we trap exceptions thrown
	by the Comparer, like in Add().

2002-06-30  Nick Drochak  <ndrochak@gol.com>

	* SortedList.cs: Many fixed. A lot of checking for null and throwing
	exceptions.  A few logic bugs fixed as well

2002-06-25   Nick Drochak  <ndrochak@gol.com>

	* Queue.cs (CopyTo): Fix logic for copying the circular array.
	(Enqueue): Use actual length of array to determine when to grow
	(QueueEnumerator) Fixed Current to use array length, not capacity, and
	fixed off-by-one errror in MoveNext().

Tue Jun 4 13:08:43 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: fixed RemoveAt() implementation.

2002-05-27  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs (LastIndexOf): Return -1 if searching for null, also
	fix check of parameters sent to make sure we don't search beyond the
	beginning of the list.
	(ListWrapper): Throw exception if called with null.
	We now pass all unit tests.

2002-05-23  Duncan Mak  <duncan@ximian.com>

	* ArrayList.cs (Wrapper): Preliminary implementation of
	ArrayList.Wrapper (IList).

2002-05-22  Martin Baulig  <martin@gnome.org>

	* ArrayList.cs: Made count, capacity and dataArray the first three
	fields in the class.  They're read by the reflection library.

2002-05-21  Lawrence Pit  <loz@cable.a2000.nl>

	* ArrayList.cs: Fixed bug where a capacity of 0 could be reached, 
	thereby causing problems when trying to add elements.

2002-05-06  Duncan Mak  <duncan@ximian.com>

	* Queue.cs (TrimToSize): Implemented.
	
2002-05-05  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs: Throw RankException when constructing from a 
	multi-dimensional array. Confirmed behavior from MS.NET

Thu May 2 15:18:11 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: make mcs compile again: it's allowed to
	call arraylist.CopyTo(array, 0) when the length of the array
	is also 0.

Wed May 1 17:05:40 CEST 2002 Paolo Molaro <lupus@ximian.com>

	* SortedList.cs: fix RemoveAt () to use the correct length in
	Array.Copy.

2002-05-01  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs (Add & AddRange) : Throw exceptions where needed.

2002/05/01  Nick Drochak <ndrochak@gol.com>

	* ArrayList.cs (CopyTo) : Check parameters and throw exceptions
	where needed.

2002/04/30  Nick Drochak <ndrochak@gol.com>

	* ArrayList.cs (Clear) : Throw exception if ReadOnly or FixedSize.
		(InsertRange) : Implement.
		(SetRange) : Implement.

2002-04-30  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs (TrimToSize) : Implement.

2002-04-28  Duncan Mak  <duncan@ximian.com>

	* ArrayList.cs (InsertRange): 
	(SetRange):
	(Remove):
	(TrimToSize): Throw exceptions where needed.

2002-04-29  Nick Drochak  <ndrochak@gol.com>

	* Hashtable.cs (CopyTo): Throw exceptions where needed.

2002-04-28  Duncan Mak  <duncan@ximian.com>

	* ArrayList.cs (ReadOnly):
	(IList.ReadOnly): Implemented.

	(Synchronized):
	(IList.Synchronized): Implemented.

	(ixedSize):
	(IList.FixedSize): Implemented.

2002-03-24  Duncan Mak  <duncan@ximian.com>

	* SortedList.cs (Synchronized): Stubbed out a missing method
	pointed out by Jakk Simm's test suite.

2002-03-14  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs (FixedSize(ArrayList)): should return an ArrayList. The
	other FixedSize() methods returns an IList.

2002-03-13  Duncan Mak  <duncan@ximian.com>

	* ArrayList.cs (FixedSize): Changed the return type to IList if
	the argument is an IList.
	(Synchronized): Ditto here.

2002-03-08  Sergey Chaban <serge@wildwestsoftware.com>

	* Hashtable.cs: Fixed ToPrime () bug. Removed ALLOC_GRAIN.
	Removed unused code from static constructor.
	GetObjectData () - Version is the same as modificationCount.

2002-02-20  Nick Drochak  <ndrochak@gol.com>

	* ArrayList.cs: Add MonoTODO's where necessary. Fix bugs discovered
	by Bucky's tests. Implement a couple of things that were left undone.

Mon Feb 11 19:49:25 CET 2002 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: Dick's fix to contructor.

2002-02-07  Duncan Mak  <duncan@ximian.com>

	* Hashtable.cs: Implemented parts of the ISerializable
	interface. GetObjectData () is good, but serialization constructor
	needs some more love.

Sat Jan 5 15:56:54 CET 2002 Paolo Molaro <lupus@ximian.com>

	* Hashtable.cs: the IDictionaryEnumerator returns DictionaryEntries.

2002-01-04  Ravi Pratap  <ravi@ximian.com>

	* Correct name to MonoTODO everywhere.

2002-01-04  Ravi Pratap  <ravi@ximian.com>

	* ArrayList.cs : Setting an index does not implicitly
	extend the arraylist : remove FIXME.

	Decorate incomplete elements with the TODO attribute.

	* BitArray.cs : Insert TODO attributes where appropriate.

	* CaseInsensitiveHashcodeProvider.cs: Ditto.

	* Hashtable.cs, SortedList.cs : Ditto.
	
Thu Dec 13 20:17:08 CET 2001 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: implemented AddRange(), CopyTo().

2001-11-19  Miguel de Icaza  <miguel@ximian.com>

	* DictionaryBase.cs: Implemented.

Wed Nov 14 16:45:49 CET 2001 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: implement ArrayListEnumerator.
	* Hashtable.cs: hardcode the prime number table.

2001-11-06 Nick Drochak <ndrochak@gol.com>
	* Queue.cs: Fixes from Ricardardo.  QueueTest also updated.

2001-11-04 Nick Drochak <ndrochak@gol.com>
	* Queue.cs: Fixed small syntax errors that were preventing the compile.
	I changed the build file to include Queue.cs as well.

2001-11-04 Nick Drochak <ndrochak@gol.com>
	* ArrayList.cs: Fixed "off by one" error when shifting left the array when
	items are removed.

	* CollectionBase.cs: Added OnValidate(), OnRemove() and OnRemoveComplete()
	hook methods to the RemoveAt() method.

2001-11-04 Nick Drochak <ndrochak@gol.com>
	* ArrayList.cs: Added private enumerator class and make GetEnumerator()
	methods return an instance of it.

Tue Sep 25 18:52:48 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* ArrayList.cs: fix Insert () to check capacity, not count.

Tue Sep 25 16:54:54 CEST 2001 Paolo Molaro <lupus@ximian.com>

	* DictionaryEntry.cs: added.

2001-08-10  Dietmar Maurer  <dietmar@ximian.com>

	* common.src: removed duplicate entries

2001-08-08 Nick Drochak <ndrochak@gol.com>

         * ReadOnlyCollectionBase.cs: Initialized private member.
         * CollectionBase.cs: Initialized private member.
	 * common.src : Added ReadOnlyCollectionBase.cs and CollectionBase.cs
	 * /mcs/class/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt
	 * /mcs/makefile: Used $(SYSTEMROOT) instead of hard coded //c/winnt

2001-08-08 Nick Drochak <nick@jobdragon.com>

         * CollectionBase.cs: Add
         * ReadOnlyCollectionBase.cs: Add
         * CollectionBaseTest.cs: Add
         * ReadOnlyCollectionBaseTest.cs: Add

2001-07-31 Garrett Rooney <rooneg@electricjellyfish.net>

	* StackTest.cs: Add Test case for System.Collections.Stack.  
	Contributed by Chris Hynes <chrish@assistedsolutions.com>

2001-07-30 Garrett Rooney <rooneg@electricjellyfish.net>

	* Stack.cs: Clone() doesn't need to check if it's synchronized, since 
	we override it in SyncStack anyway...  

	* Stack.cs: Pop() now shrinks the array if we drop below 1/4 full, to 
	avoid using massive amounts of memory that are not necessary.  We only 
	drop to half the current size, which I hope will avoid the 'ping-pong' 
	effect.

	* Stack.cs: SyncStack.IsReadOnly should return stack.IsReadOnly 
	instead of just returning false, since we may have a ReadOnly wrapper 
	in the future (although i can't imagine why).  Thanks to David 
	Menestrina <dmenest@yahoo.com> for pointing this out.

2001-07-23  Sergey Chaban <serge@wildwestsoftware.com>

	*  Hashtable.cs: Fixed bug in Clear(), the Count wasn't zeroed.
           From now, Clear() increases modification count.
           Fixed HCP bug in GetHash(object) - hcp.GetHashCode() was used
           instead of hcp.GetHashCode(key). This was resulted in the
           insanely long lookup times when HashCodeProvider was used to
           construct Hashtable. Added thread-safe wrapper.

2001-07-16  David Menestrina <dmenest@yahoo.com>

         * BitArray.cs: Add
         * BitArrayTest.cs: Add

2001-07-18  Miguel de Icaza  <miguel@ximian.com>

	* IDictionary.cs (Collections): IDictionary implements ICollection
	as well.  Thanks Sergey!

2001-07-18  Garrett Rooney  <rooneg@electricjellyfish.net>

	* Stack.cs Removed unnecessary locking from many methods of 
	SyncStack, removed SyncEnumerator because it was unnecessary, 
	added a modCount member to Stack and Stack.Enumerator, to 
	ensure that the Stack has not been modified out form under the 
	Enumerator, and changed the Enumerator to use a reference to the 
	stack rather than copying over the contents array.

2001-07-17  David Menestrina  <dmenest@yahoo.com>

        * Added implementation of BitArray.

2001-07-17  Miguel de Icaza  <miguel@ximian.com>

	* Hashtable.cs: Removed call to d.Count in the Hashtable
	constructor that takes an IDictionary as IDictionary does not
	provide a Count field.

2001-07-15  Sean MacIsaac  <macisaac@ximian.com>

	* IDictionary.cs: Clear was clear.

2001-07-13  Miguel de Icaza  <miguel@ximian.com>

	* All files: Renamespace things to System.

2001-07-05  Vladimir Vukicevic  <vladimir@ximian.com>

	* ArrayList.cs: initial checkin and implementation

	* ICollection.cs, IComprarer.cs, IDictionary.cs,
	  IDictionaryEnumerator.cs, IEnumerable.cs, IHashCodeProvider.cs,
	  IList.cs: initial checkin

