summaryrefslogtreecommitdiff
path: root/NEWS
blob: 7180a673863c713472365f6d2cb6e57557d3af2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
libgee 0.20.0
=============
 * No changes since previous release

libgee 0.19.91
==============
 * Fix to_array on enums and flags
 * Add additional query operations to Traversable

libgee 0.18.1
=============
 * Various build and runtime fixes

libgee 0.18.0
=============
 * No changes since previous release

libgee 0.17.92
==============
 * Fix default value of --enable-consistency-check

libgee 0.16.1
=============
 * Workaround GC thread consuming 100% of CPU
 * Fix HashMap destructor name
 * Fix a documentation typo

libgee 0.16.0
=============
 * No changes since previous release

libgee 0.15.92
==============
 * Improve documentation

libgee 0.15.90
==============
 * Add explicit tee implementations
 * Improve the benchmark

libgee 0.15.3
=============
 * Add UnrolledLinkedList class implementing List and Deque interface
 * Clarify the add and insert operation on list iterators and make the behaviour consistent for ArrayList and LinkedList
 * Allow (partially) disable internal asserts
 * Internal symbols are hidden

libgee 0.14.0
=============
 * No changes since previous release

libgee 0.13.91
==============
 * Fix HazardPointer bugs
 * Fix List test

libgee 0.13.90
==============
 * Fix the broken test

libgee 0.13.5.1
===============
 * Remove workaround for 'old' (<0.23.2) vala

libgee 0.13.5
=============
 * Use WeakRef for keeping of read-only proxy for collection

libgee 0.13.4
=============
 * The collection cloning no longer leaks memory
 * Various warning fixes
 * Various fixes to build system

libgee 0.12.0
=============
 * No changes since previous release

libgee 0.11.92
==============
 * Override read_only_view property in ReadOnlySortedMap and its subclasses

libgee 0.11.91
==============
 * Bump the GLib requirements to 2.36 in configure.ac

libgee 0.11.90
==============
 * Add adding to collection based on iterators
 * Make Collection.add_all_array, contains_all_array and remove_all_array virtual
 * Avoid destroy coroutine creation in hazard pointer implementation
 * Various bugfixes

libgee 0.11.5
=============
 * Add Traversable.tee
 * Add exception handling to Future
 * Add ability of getting Future from Lazy
 * Make Traversable.flat_map a virtual function
 * Add more specializations to .foreach
 * Improve the test
 * Various bugfixes

libgee 0.11.4
=============
 * Add flat_map method to Traversable
 * Add zip method to Future
 * Specialize stream iterator (4-22% speed improvement in tests)
 * Extend the Traversable.Stream with Stream.WAIT
 * Fix lazy value usage in unfold

libgee 0.11.0
=============
 * Add futures and promises to libgee
 * Update the build system
 * Return true from HashSet.Iterator.foreach() if we fall off the end

libgee 0.10.0
=============
 * No changes since release candidate

libgee 0.9.92
=============
 * Fix memory leak in TreeSet and TreeMap

libgee 0.9.91
=============
 * ConcurrentSet implements SortedSet
 * Fix HashMultiMap, TreeMultiSet constructor
 * Add add/contains/remove_all working on array
 * Allow creation of ArrayList from array
 * Add read_only_view to Gee.MultiSet and Gee.MultiMap

libgee 0.9.0
============
 * ConcurrentSet preliminary implementation
 * Bugfixes from 0.8.2 and 0.8.3
 * Fix various Vala warnings
 * First part of test refactoring

libgee 0.8.1
============
 * Allow slice in ReadOnlyList
 * Fix Iterator.remove in PriorityQueue
 * Add foreach specializations
 * Use foreach function instead of iterators

libgee 0.8.0
============
 * Fix Traversable.chop (bug #684348)
 * Remove unnecessary method
 * Update README
 * Move everything to GenericAccessor

libgee 0.7.90
=============
 * Don't notify when constructor property is set
 * Use views instead of copies in MultiMap as in rest of libgee
 * Allow early termination in Traversable.foreach

libgee 0.7.4.1
==============
 * Fix missing property read_only in testmap Entry

libgee 0.7.4
============
 * Remove *_impl methods
 * Move virtual methods to interfaces
 * Future-proof the ABI by adding reserved v-table members
 * Add read_only to Map.Entry

libgee 0.7.3
============
 * Update documentation
 * Fix iteration order in hashtables
 * Split SortedMap/SortedSet into bi-directional and uni-directional parts
 * Simplify CompareDataFunc/HashDataFunc/EqualDataFunc
 * Fix HazardPointers

libgee 0.7.2
============
 * Require *_type property for all collections
 * Add ArrayQueue
 * Few bug fixes

libgee 0.7.1
============
 * Implement hazard pointers and concurrent linked lists
 * Respect VALAFLAGS when building tests
 * Fix a few compiling warnings

libgee 0.7.0
============
 * Build system using the automake 1.11 vala support
 * Move to delegates with targets and move them to Gee namespace
 * Gee.Hashable interface
 * Improve Iterator allowing to, among others, query about state of iterator
 * Allow checking if Iterator or Collection is read-only
 * Introducing highier-level function via Traversable interface
 * Introduce support for lazy values
 * Allow to install in parallel with 0.6

libgee 0.5.2
============

 * Build system enhancements to conform Gnome's style.
 * Bug fixes in TreeSet, TreeMap and Collection.to_array.
 * Deprecated Map methods marked with [Deprecated].

libgee 0.5.1
============

 * Bug fixes in HashMultiSet, TimSort, TreeMap, TreeMultiSet, and TreeSet.
 * Fix build with Vala 0.8.0 and later.
 * Fix build on Windows.
 * Fix subprocess handling in test infrastructure.

libgee 0.5.0
============

 * API changes
   * Introduce Functions hash, equal and compare function factory
   * Introduce Comparable<G> interface
   * Implementations provides sane defaults when constructed without functions
   * ReadOnly* made internal in favor of a `read_only_view` properties
   * Iterator<G> is now mutable and resettable
   * Introduction of BidirIterator<G> bidirectional iterators
   * List<G>.list_iterator () returns a specialized ListIterator<G>
   * Various API contracts clarifications and enhancements
   * Introduce List<G>.sort () with TimSort implementation
   * Complete Map API rework
   * Introduce Queue and Deque interfaces
   * Introduce MultiSet and MultiMap interfaces (Ali Sabil)
   * Introduce SortedSet interface (Maciej Pietchotka)

 * New implementations
   * HashMultiSet and HashMultiMap (Ali Sabil)
   * TreeMultiSet and TreeMultiMap.
   * PriorityQueue
   * LinkedList now implements Deque
   * TreeSet now implements SortedSet (Maciej Pietchotka)

 * Infrastructure
   * New test framework and complete tests refactoring (Julien Peters)
   * New doc/ documentation directory (--enable-doc)
   * Test coverage analysis using lcov (--enable-coverage)
   * Basic benchmark framework and sort benchmark (--enable-benchmark)
   * Use silent rules by default for users of automake 1.11

 * Code Quality
   * Many bug fixes
   * Many optimizations
   * Lots of additional documentation
   * Better overall encapsulation, dangerous public setters have been removed
   * Better test coverage (more than 90%)

libgee 0.4.0
============

 * Bug fixes.

libgee 0.3.0
============

 * Introduce AbstractCollection, AbstractList and AbstractMap base classes.
 * Add new properties and methods to Collection, List and Map. (Tomaž Vajngerl)
 * Add LinkedList implementation. (Mark Lee)
 * Add TreeSet and TreeMap implementations. (Maciej Piechotka)
 * Iterable.element_type is now a property.
 * Map.remove now takes an optional parameter to retrieve the removed value.
 * Bump library version info to reflect API/ABI breakage

libgee 0.2.0
============

 * Generate GIR file.

libgee 0.1.6
============

 * Fix build for Vala 0.7.
 * Bug fixes.

libgee 0.1.5
============

 * Add slice method to Gee.List.

libgee 0.1.4
============

 * Update for Vala 0.3.3.

libgee 0.1.3
============

 * More unit tests.
 * Update for Vala 0.3.1.

libgee 0.1.2
============

 * Add unit tests.
 * Bug fixes.

libgee 0.1.1
============

 * Add get_element_type method to Gee.Iterable.
 * Update for Vala 0.1.6.

libgee 0.1.0
============

 * Initial release.