Project

General

Profile

root / branches / compiler / cSharp / ooasCompiler / src / libs / c5 / RELEASE-NOTES.txt

1
RELEASE NOTES FOR C5 GENERIC COLLECTION LIBRARY FOR C#/CLI
2
------------------------------
3

    
4
Release 1.1.0 of 2008-02-10
5

    
6
New functionality:
7

    
8
 * Interface C5.ICollection<T> now extends generic interface
9
   System.Collections.Generic.ICollection<T>.  The C5.ICollection<T>
10
   interface in some cases describe different exceptions than
11
   specified by SCG.ICollection<T>, but we have not attempted to fix
12
   this because the .NET collection implemented in some cases throw
13
   other exceptions than those specified anyway.
14

    
15
 * Interface C5.IList<T> now extends interface non-generic interface
16
   System.Collections.IList, so C5 list collections can be passed to
17
   .NET GUI components and other framework methods.
18

    
19
 * Exception-free methods 
20

    
21
  	bool TryPredecessor(T x, out T res)
22
 	bool TrySuccessor(T x, out T res)
23
 	bool TryWeakPredecessor(T x, out T res)
24
 	bool TryWeakSuccessor(T x, out T res)
25

    
26
   have been added to the ISorted<T> interface and the classes that
27
   implement it.   
28

    
29
 * Added methods analogous to the above to ISortedDictionary<K,V> and
30
   the classes that implement it.
31

    
32
 * Event raising on SortedDictionary<T> finally implemented, thanks to
33
   Markus Griep.  Hence all unit tests should now succeed.
34

    
35
 * The missing custom comparers and equality comparers have been added
36
   for all primitive types except bool.  
37

    
38
 * The book "The C5 Generic Collection Library" has been updated
39
   to reflect these changes.
40

    
41
Bugs fixed:
42

    
43
 * SortedArray<T>.UpdateOrAdd and SortedArray<T>.FindOrAdd did not
44
   expand the underlying array correctly
45

    
46
 * HashDictionary.UpdateOrAdd returned the new value, not the old one.
47

    
48
 * CollectionBase.StaticEquals threw exception when exactly one
49
   argument was null.  
50

    
51
 * HashedLinkedList<T>.Remove could fail with NullReferenceException.
52

    
53
 * HashSet<T>.UpdateOrAdd(item, out old) did not set old=default(T)
54
   when item was not already in the set.
55

    
56
 * HashBag<T>.CopyTo could throw when copying from empty collection.
57

    
58
------------------------------
59

    
60
Release 1.0.2 of 2007-06-01
61

    
62
Bugs fixed:
63

    
64
 * SortedDictionaryBase was not marked as [Serializable]
65
 
66
 * ArrayList.expand did not update the array field of (other) views
67

    
68
 * IntervalHeap::Replace would throw an exception on one-element heap
69

    
70
------------------------------
71

    
72
Release 1.0.1 of 2006-06-27
73

    
74
Bugs fixed:
75

    
76
 * CircularQueue<T> indexer was wrong
77

    
78
 * Some equality comparers created by C5.EqualityComparer<T>.Default
79
   were not marked serializable
80

    
81
 * HashSet<T>.RetainAll could leave internal data inconsistent
82

    
83
 * TreeDictionary<K,V> was not marked serializable
84

    
85
 * HashedLinkedList<T> problem related to tag group implementation
86

    
87
 * Dispose() could fail on newly created lists
88

    
89
New features:
90

    
91
 * A strong name (.snk) is included 
92

    
93
 * C5.IList<T> now derives from System.Collections.Generic.IList<T>
94

    
95
 * Added C5.build file for NAnt, due to Johan Warlander
96

    
97
The technical report has been updated to reflect the above changes.
98

    
99
------------------------------
100

    
101
Release 1.00 of 2006-01-30
102

    
103
First complete release.  There are lots of changes since the
104
PreRelease:
105

    
106
 * Interface design has been reorganized and simplified
107

    
108
 * New functionality added (too much to describe here)
109

    
110
 * Updated for Microsoft C#/CLI 2.0 release version
111

    
112
 * Comprehensive documentation in ITU Technical Report ITU-TR-2006-76
113

    
114
------------------------------
115

    
116
PreRelease 0.5 of 2004-08-06
117

    
118
First public release, essentially a preview of the library, for beta 1
119
of Microsoft C#/CLI 2.0.
120

    
121
------------------------------