-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
364 lines (267 loc) · 12 KB
/
ChangeLog
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
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
2014-06-14 Julian Maurice <[email protected]>
* include/slist.h: Include missing header file
* include/dlist.h: Include missing header file
2014-04-23 Julian Maurice <[email protected]>
* t/inline/dlist.t.c: Fix a compilation warning
2014-04-01 Julian Maurice <[email protected]>
* libgends: New release 2.0.0
2014-04-01 Julian Maurice <[email protected]>
* libgends.pc.in: Change VERSION to PACKAGE_VERSION
2014-04-01 Julian Maurice <[email protected]>
* debian/*: Remove debian files
2014-03-25 Julian Maurice <[email protected]>
* inline/slist.[ch] (gds_inline_slist_remove)
(gds_inline_slist_remove_tail, gds_inline_slist_splice)
(gds_inline_slist_map): Remove 'callback_data' parameter
* inline/dlist.[ch] (gds_inline_dlist_remove)
(gds_inline_dlist_splice, gds_inline_dlist_map):
Remove 'callback_data' parameter
* slist.[ch] (gds_slist_slice, gds_slist_map, gds_slist_filter)
(gds_slist_reduce): Remove 'callback_data' parameter
* dlist.[ch] (gds_dlist_slice, gds_dlist_map, gds_dlist_filter)
(gds_dlist_reduce): Remove 'callback_data' parameter
* inline/slist.t.c: Update tests
* inline/dlist.t.c: Update tests
* slist.t.c: Update tests
* dlist.t.c: Update tests
2014-03-24 Julian Maurice <[email protected]>
* inline/slist.[ch] (gds_inline_slist_map):
Remove 'offset' parameter for callback
* inline/dlist.[ch] (gds_inline_dlist_map):
Remove 'offset' parameter for callback
* slist.[ch] (gds_slist_map, gds_slist_reduce):
Remove 'offset' parameter for callback
* slist.[ch] (gds_slist_map):
Return value of callback replaces original data
* dlist.[ch] (gds_dlist_map, gds_dlist_reduce):
Remove 'offset' parameter for callback
* dlist.[ch] (gds_dlist_map):
Return value of callback replaces original data
* slist.t.c: Update tests
* dlist.t.c: Update tests
2014-03-22 Julian Maurice <[email protected]>
* dlist.[ch] (gds_dlist_unshift, gds_dlist_push): Can now unshift or
push more than one element at a time
* dlist.t.c: Add tests
2014-03-22 Julian Maurice <[email protected]>
* slist.[ch] (gds_slist_unshift, gds_slist_push): Can now unshift or
push more than one element at a time
* slist.t.c: Add tests
2014-03-21 Julian Maurice <[email protected]>
* hash_map.t.c: Add tests for gds_hash_map_change_size
* hash_map_fast.t.c: Add tests for gds_hash_map_fast_change_size
* hash_map_keyin.t.c: Add tests for gds_hash_map_keyin_change_size
* hash_map_keyin_fast.t.c:
Add tests for gds_hash_map_keyin_fast_change_size
* hash_map_keyin.c (gds_hash_map_keyin_change_size): Fix memory leak
* hash_map_keyin_fast.c (gds_hash_map_keyin_fast_change_size):
Fix memory leak
2014-03-19 Julian Maurice <[email protected]>
* configure.ac: Add option --enable-debug
* config.mk.in: Add DEBUG variable
* benchs/Makefile.in: Make debug mode optional and use -O2 flag
* src/Makefile.in: Make debug mode optional and use -O2 flag
* t/Makefile.in: Make debug mode optional and use -O2 flag
* debian/rules: Override dh_autoconfigure to use --enable-debug
2014-03-18 Julian Maurice <[email protected]>
* debian/control: Add Debian debug package
* debian/rules: Add Debian debug package
2014-03-18 Julian Maurice <[email protected]>
* hash_map.h (gds_hash_map_set_free_callback)
(gds_hash_map_get_free_callback, gds_hash_map_destroy):
New functions
* hash_map_fast.h (gds_hash_map_fast_set_free_callback)
(gds_hash_map_fast_get_free_callback, gds_hash_map_fast_destroy):
New functions
* hash_map_keyin.h (gds_hash_map_keyin_set_free_callback)
(gds_hash_map_keyin_get_free_callback, gds_hash_map_keyin_destroy):
New functions
* hash_map_keyin_fast.h (gds_hash_map_keyin_fast_set_free_callback)
(gds_hash_map_keyin_fast_get_free_callback)
(gds_hash_map_keyin_fast_destroy):
New functions
2014-03-08 Julian Maurice <[email protected]>
* dlist.[ch] (gds_dlist_t): Add 'free_cb' member
* dlist.[ch] (gds_dlist_new, gds_dlist_new_from_array):
Add 'free_cb' parameter
* dlist.[ch] (gds_dlist_set_free_callback)
(gds_dlist_get_free_callback, gds_dlist_destroy): New functions
* dlist.[ch] (gds_dlist_splice, gds_dlist_free): Remove 'callback' and
'callback_data' parameter
* dlist.t.c: Update tests
2014-03-06 Julian Maurice <[email protected]>
* slist.[ch] (gds_slist_t): Add 'free_cb' member
* slist.[ch] (gds_slist_new, gds_slist_new_from_array):
Add 'free_cb' parameter
* slist.[ch] (gds_slist_set_free_callback)
(gds_slist_get_free_callback, gds_slist_destroy): New functions
* slist.[ch] (gds_slist_splice, gds_slist_free): Remove 'callback' and
'callback_data' parameter
* slist.t.c: Update tests
2014-03-06 Julian Maurice <[email protected]>
* rbtree_fast.h (gds_rbtree_fast_add, gds_rbtree_fast_set):
Fix comments
* rbtree_keyin.h (gds_rbtree_keyin_add): Fix comments
* rbtree_keyin_fast.h (gds_rbtree_keyin_fast_add): Fix comments
2014-03-06 Julian Maurice <[email protected]>
* inline/rbtree.h (gds_inline_rbtree_set): Return 1 instead of 2
* inline/rbtree_fast.h (gds_inline_rbtree_fast_set):
Return 1 instead of 2
* rbtree.c (gds_rbtree_set): Update code accordingly
* rbtree_fast.c (gds_rbtree_fast_set): Update code accordingly
* rbtree_keyin.c (gds_rbtree_keyin_set): Update code accordingly
* rbtree_keyin_fast.c (gds_rbtree_keyin_fast_set): Update code
accordingly
* inline/rbtree.t.c: Update tests
* inline/rbtree_fast.t.c: Update tests
2014-03-03 Julian Maurice <[email protected]>
* lambda.h (lambda): Rename lambda to gds_lambda
* inline/dlist.t.c: Update tests
* dlist.t.c: Update tests
* slist.t.c: Update tests
2014-03-03 Julian Maurice <[email protected]>
* foreach.h (foreach): Rename foreach to gds_foreach
2014-03-03 Julian Maurice <[email protected]>
* Add a key allocation callback to hash maps (optional)
* hash_map.c (gds_hash_map_t): Add 'key_alloc_cb' member
* hash_map.[ch] (gds_hash_map_new): Add 'key_alloc_cb' parameter
* hash_map_fast.c (gds_hash_map_fast_t): Add 'key_alloc_cb' member
* hash_map_fast.[ch] (gds_hash_map_fast_new): Add 'key_alloc_cb'
parameter
* hash_map.t.c: Update tests
* hash_map_fast.t.c: Update tests
2014-03-01 Julian Maurice <[email protected]>
* check_arg.h: File removed
* exception.h: File removed
* assert.h: File added
* assert.h (gds_assert): New macro
* all source files (all functions): Replace GDS_CHECK_ARG by gds_assert
2014-03-01 Julian Maurice <[email protected]>
* inline/rbtree.c (gds_inline_rbtree_iterator_new): Use gds_malloc
instead of malloc
* inline/rbtree_fast.c (gds_inline_rbtree_fast_iterator_new): Use
gds_malloc instead of malloc
2014-02-21 Julian Maurice <[email protected]>
* tap.h: File removed
* all test files: Use libtap13
2014-02-21 Julian Maurice <[email protected]>
* undefined.h: File removed
* slist.[ch]: Replace UNDEFINED by NULL
* dlist.[ch]: Replace UNDEFINED by NULL
* inline/slist.[ch]: Replace UNDEFINED by NULL
* inline/dlist.[ch]: Replace UNDEFINED by NULL
* dlist.t.c: Update tests
* slist.t.c: Update tests
2014-02-21 Julian Maurice <[email protected]>
* valgrind_suppressions: Make valgrind suppressions file less specific
2014-02-21 Julian Maurice <[email protected]>
* t/Makefile.in: clean should clean t/inline
* inline/rbtree.t.c: Fix tests
* inline/rbtree_fast.t.c: Fix tests
2014-02-17 Julian Maurice <[email protected]>
* log.h (GDS_LOG_FATAL): Renamed to gds_log_fatal
* log.h (GDS_LOG_ERROR): Renamed to gds_log_error
* log.h (GDS_LOG_WARNING): Renamed to gds_log_warning
* log.h (GDS_LOG_INFO): Renamed to gds_log_info
* log.h (GDS_LOG_DEBUG): Renamed to gds_log_debug
* src/dlist.c: Update code accordingly
* src/exception.h: Update code accordingly
* src/inline/dlist.c: Update code accordingly
* src/inline/rbtree_fast.c: Update code accordingly
* src/inline/slist.c: Update code accordingly
* src/rbtree.c: Update code accordingly
* src/rbtree_fast.c: Update code accordingly
* src/rbtree_keyin.c: Update code accordingly
* src/slist.c: Update code accordingly
2014-02-17 Julian Maurice <[email protected]>
* Factorize memory allocation code
* exception.h (GDS_THROW_ALLOC_ERROR, GDS_THROW_EMPTY_LIST):
Removed macros
* malloc.[ch]: Added file
* malloc.[ch] (gds_malloc, gds_calloc, gds_realloc): Added functions
* all source files: Use gds_malloc instead of malloc, and gds_calloc
instead of calloc
2014-02-17 Julian Maurice <[email protected]>
* undefined.h (NULL_OR_UNDEFINED): Renamed to isset
* undefined.h (isdef): Added macro
* inline/dlist.c: Update code accordingly
* inline/slist.c: Update code accordingly
2014-02-16 Julian Maurice <[email protected]>
* hash_map_fast.t.c: Remove duplicate tests
2014-02-16 Julian Maurice <[email protected]>
* hash_map.[ch] (gds_hash_map_pop): Added function
* hash_map_fast.[ch] (gds_hash_map_fast_pop): Added function
* hash_map_keyin.[ch] (gds_hash_map_keyin_pop): Added function
* hash_map_keyin_fast.[ch] (gds_hash_map_keyin_fast_pop): Added
function
* hash_map.t.c: Added tests
* hash_map_fast.t.c: Added tests
* hash_map_keyin.t.c: Added tests
* hash_map_keyin_fast.t.c: Added tests
2014-02-16 Julian Maurice <[email protected]>
* rbtree.[ch] (gds_rbtree_pop): Added function
* rbtree_fast.[ch] (gds_rbtree_fast_pop): Added function
* rbtree_keyin.[ch] (gds_rbtree_keyin_pop): Added function
* rbtree_keyin_fast.[ch] (gds_rbtree_keyin_fast_pop): Added
function
* rbtree.t.c: Added tests
* rbtree_fast.t.c: Added tests
* rbtree_keyin.t.c: Added tests
* rbtree_keyin_fast.t.c: Added tests
2014-02-16 Julian Maurice <[email protected]>
* all source files: Update copyright notices
2014-02-16 Julian Maurice <[email protected]>
* hash_map.[ch]: Hide implementation of hash map structure
* hash_map_fast.[ch]: Hide implementation of hash map structure
* hash_map_keyin.[ch]: Hide implementation of hash map structure
* hash_map_keyin_fast.[ch]: Hide implementation of hash map structure
2014-02-16 Julian Maurice <[email protected]>
* src/Makefile.in: Fix generation of dependencies
2014-02-16 Julian Maurice <[email protected]>
* hash_map.[ch]: Use unsigned long instead of uint32_t
* hash_map_fast.[ch]: Use unsigned long instead of uint32_t
* hash_map_keyin.[ch]: Use unsigned long instead of uint32_t
* hash_map_keyin_fast.[ch]: Use unsigned long instead of uint32_t
* all source files: Remove #include of stdint.h and stdbool.h if not
needed
2014-02-16 Julian Maurice <[email protected]>
* hash_functions.[ch]: Added files
Add common hash algorithms implementations (djb2 and sdbm)
* hash_map.t.c: Use hash algorithms of hash_functions.c in tests
* hash_map_fast.t.c: Use hash algorithms of hash_functions.c in tests
* hash_map_keyin.t.c: Use hash algorithms of hash_functions.c in tests
* hash_map_keyin_fast.t.c: Use hash algorithms of hash_functions.c in
tests
2014-02-15 Julian Maurice <[email protected]>
* all source files: Remove function pointer typedefs
* callbacks.h: Removed file
2014-02-15 Julian Maurice <[email protected]>
* hash_map.[ch] (gds_hash_map_t):
Add 'free_cb' and 'key_free_cb' members
* hash_map.[ch] (gds_hash_map_new):
Add 'free_cb' and 'key_free_cb' parameters
* hash_map.[ch] (gds_hash_map_set, gds_hash_map_unset)
(gds_hash_map_free): Remove 'free_cb' and 'key_free_cb' parameters
* hash_map_fast.[ch] (gds_hash_map_fast_t):
Add 'free_cb' and 'key_free_cb' members
* hash_map_fast.[ch] (gds_hash_map_fast_new):
Add 'free_cb' and 'key_free_cb' parameters
* hash_map_fast.[ch] (gds_hash_map_fast_set, gds_hash_map_fast_unset)
(gds_hash_map_fast_free):
Remove 'free_cb' and 'key_free_cb' parameters
* hash_map_keyin.[ch] (gds_hash_map_keyin_t):
Add 'free_cb' and 'key_free_cb' members
* hash_map_keyin.[ch] (gds_hash_map_keyin_new):
Add 'free_cb' and 'key_free_cb' parameters
* hash_map_keyin.[ch] (gds_hash_map_keyin_set)
(gds_hash_map_keyin_unset, gds_hash_map_keyin_free):
Remove 'free_cb' and 'key_free_cb' parameters
* hash_map_keyin_fast.[ch] (gds_hash_map_keyin_fast_t):
Add 'free_cb' and 'key_free_cb' members
* hash_map_keyin_fast.[ch] (gds_hash_map_keyin_fast_new):
Add 'free_cb' and 'key_free_cb' parameters
* hash_map_keyin_fast.[ch] (gds_hash_map_keyin_fast_set)
(gds_hash_map_keyin_fast_unset, gds_hash_map_keyin_fast_free):
Remove 'free_cb' and 'key_free_cb' parameters
2013-10-26 Julian Maurice <[email protected]>
* libgends: Initial release 1.0