1 RELEASE NOTES FOR C5 GENERIC COLLECTION LIBRARY FOR C#/CLI
2 ------------------------------
4 Release 1.1.1 of 2010-12-17
6 * Fixed 5 bugs found since the 1.1.0 release. Only one of this is
7 likely to break code: the specification and implementation of the
8 range indexer this[i,n] on TreeSet was wrong.
11 Release 1.1.0 of 2008-02-10
15 * Interface C5.ICollection<T> now extends generic interface
16 System.Collections.Generic.ICollection<T>. The C5.ICollection<T>
17 interface in some cases describe different exceptions than
18 specified by SCG.ICollection<T>, but we have not attempted to fix
19 this because the .NET collection implemented in some cases throw
20 other exceptions than those specified anyway.
22 * Interface C5.IList<T> now extends interface non-generic interface
23 System.Collections.IList, so C5 list collections can be passed to
24 .NET GUI components and other framework methods.
26 * Exception-free methods
28 bool TryPredecessor(T x, out T res)
29 bool TrySuccessor(T x, out T res)
30 bool TryWeakPredecessor(T x, out T res)
31 bool TryWeakSuccessor(T x, out T res)
33 have been added to the ISorted<T> interface and the classes that
36 * Added methods analogous to the above to ISortedDictionary<K,V> and
37 the classes that implement it.
39 * Event raising on SortedDictionary<T> finally implemented, thanks to
40 Marcus Griep. Hence all unit tests should now succeed.
42 * The missing custom comparers and equality comparers have been added
43 for all primitive types except bool.
45 * The book "The C5 Generic Collection Library" has been updated
46 to reflect these changes.
50 * SortedArray<T>.UpdateOrAdd and SortedArray<T>.FindOrAdd did not
51 expand the underlying array correctly
53 * HashDictionary.UpdateOrAdd returned the new value, not the old one.
55 * CollectionBase.StaticEquals threw exception when exactly one
58 * HashedLinkedList<T>.Remove could fail with NullReferenceException.
60 * HashSet<T>.UpdateOrAdd(item, out old) did not set old=default(T)
61 when item was not already in the set.
63 * HashBag<T>.CopyTo could throw when copying from empty collection.
65 ------------------------------
67 Release 1.0.2 of 2007-06-01
71 * SortedDictionaryBase was not marked as [Serializable]
73 * ArrayList.expand did not update the array field of (other) views
75 * IntervalHeap::Replace would throw an exception on one-element heap
77 ------------------------------
79 Release 1.0.1 of 2006-06-27
83 * CircularQueue<T> indexer was wrong
85 * Some equality comparers created by C5.EqualityComparer<T>.Default
86 were not marked serializable
88 * HashSet<T>.RetainAll could leave internal data inconsistent
90 * TreeDictionary<K,V> was not marked serializable
92 * HashedLinkedList<T> problem related to tag group implementation
94 * Dispose() could fail on newly created lists
98 * A strong name (.snk) is included
100 * C5.IList<T> now derives from System.Collections.Generic.IList<T>
102 * Added C5.build file for NAnt, due to Johan Warlander
104 The technical report has been updated to reflect the above changes.
106 ------------------------------
108 Release 1.00 of 2006-01-30
110 First complete release. There are lots of changes since the
113 * Interface design has been reorganized and simplified
115 * New functionality added (too much to describe here)
117 * Updated for Microsoft C#/CLI 2.0 release version
119 * Comprehensive documentation in ITU Technical Report ITU-TR-2006-76
121 ------------------------------
123 PreRelease 0.5 of 2004-08-06
125 First public release, essentially a preview of the library, for beta 1
126 of Microsoft C#/CLI 2.0.
128 ------------------------------