root/NEWS

Revision 6b99e84d72c5dff024065c6b0febaa4b8a22efbf, 8.2 kB (checked in by Hans Petter Jansson <hpj@kzerza.amok>, 10 years ago)

Initial commit

  • Property mode set to 100644
Line 
1 Flux 0.9.1 - 0.10.0
2 ===================
3
4 Major
5 -----
6
7 - Finished implementing fast elliptic curve cryptographic functions.
8 - Implemented FluxWorker, which can schedule arbitrary function calls in
9   separate threads and provide return values to the main thread.
10 - Implemented FluxIndexedList, a GList with fast lookup, append and remove.
11
12 Minor
13 -----
14
15 - Eliminated a huge performance drag when dispatching many small I/O stream
16   events in FluxTcpIO. The worker thread was woken up way too often.
17 - Did the above for FluxFileIO as well, but the benefit seems to be much
18   smaller.
19 - Eliminated a slight, but unnecessary performance drag in FluxObject type
20   checking.
21 - Eliminated all warnings as issued by GCC 4.0.1 on Linux.
22
23
24 Flux 0.9.0 - 0.9.1
25 ==================
26
27 Major
28 -----
29
30 - Cleaned up the FluxMarshaller code, particularly how it handles integer
31   storage of varying sizes. It might have been a problem on 64-bit
32   architectures (unverified). Also, warnings from newer GCC versions were
33   eliminated.
34
35 Minor
36 -----
37
38 - Made FluxRng consume slightly more data from /dev/random (if present).
39 - Made FluxIPResolver always keep a thread handy.
40 - Cleaned up configure.in, removing some useless options.
41 - Explicitly requires the gthread module.
42 - Eliminated new GCC warnings all over.
43
44
45 Flux 0.8.2 - 0.9.0
46 ==================
47
48 Major
49 -----
50
51 - Implemented GObject definition utilities.
52 - Implemented FluxInterval.
53 - Implemented random-order traversal for FluxPatTree cursors.
54 - Made FluxPatTree cursors remain valid across unrelated removals/insertions.
55 - Fixed two occasionally corruption-causing bugs in FluxCachedFile.
56 - Added large file support to FluxFileIO.
57 - Implemented error reporting in FluxFileIO.
58
59 Minor
60 -----
61
62 - Fixed bug causing FluxTcpListener sockets to not be closed on finalization.
63 - Fixed bug where FluxFifo would sometimes give a bad free count.
64 - Made FluxFifo free up buffers when they're no longer needed.
65 - Fixed FluxMarshaller booleans bug on bigendian platforms.
66 - Reduced threads' memory overhead somewhat.
67 - Portability fixes.
68 - The "examples" directory is now called "test".
69
70
71 Flux 0.8.1 - 0.8.2
72 ==================
73
74 Minor
75 -----
76
77 - Detect getnameinfo() and getaddrinfo() and use those if available.
78 - Break out of dispatch callbacks after a set amount of data has been
79   processed, ensuring control is given back to the main loop regularly.
80 - Made all async callbacks be low priority.
81
82
83 Flux 0.8.0 - 0.8.1
84 ==================
85
86 Minor
87 -----
88
89 - Fixed leaking of FluxTcpIOs, hopefully.
90 - Added a definition that was missing from the win32 .def file.
91
92
93 Flux 0.7.1 - 0.8.0
94 ==================
95
96 Major
97 -----
98
99 - Made FluxFileIO threaded, using fds directly instead of GIOChannels.
100 - Made FluxTcpIO threaded.
101 - Made FluxTcpListener threaded.
102 - Made FluxFifo threadsafe.
103 - Implemented FluxIPAddr, an IPv4/IPv6 address class.
104 - Implemented FluxIPResolver, an async DNS resolver class.
105 - Implemented FluxBoolArray, which is a simple, auto-expanding array of bits.
106 - Implemented FluxBinPath, which describes a path through a binary tree.
107 - Implemented FluxPackedBinTree, which stores data in a compact, static binary
108   tree structure.
109 - Implemented FluxECSecretKey, FluxECPublicKey and supporting elliptic
110   curve cryptography functions (API still not finished).
111
112 Minor
113 -----
114
115 - Implemented a few cross-platform socket utilities, particularly targeted
116   towards win32 compatibility.
117 - As a consequence of changes listed above, Flux no longer depends on GNet.
118 - Made the RPMs require zlib packages (thanks to Michael Wolf).
119
120
121 Flux 0.7.0 - 0.7.1
122 ==================
123
124 Major
125 -----
126
127 - Implemented FluxIOGroup, which lets FluxIOs share resources according to
128   priority.
129 - Implemented FluxExtHashTable, with an API similar to GHashTable. It allows
130   multiple values per key.
131
132 Minor
133 -----
134
135 - Fixed a rare crash that could occur after shutting down a FluxTcpListener.
136 - Made FluxIO streams take up less memory when not in use.
137 - Improved API naming in FluxIO.
138 - Constified some arguments to FluxTree functions.
139 - Let flux_tree_print_to_file () report success/failure as a boolean, for now.
140
141
142 Flux 0.6.3 - 0.7.0
143 ==================
144
145 Major
146 -----
147
148 - Added FluxStorage, an abstract class for generic storage backends.
149 - Added FluxMemHeap, a malloc() wrapping FluxStorage.
150 - Made FluxDiskHeap, FluxDiskChunk and FluxMemChunk subclass FluxStorage.
151 - Made FluxPatTree take varlen key/data if storage layer allows it.
152 - Added FluxCachedFile, a caching wrapper for random-access fds.
153 - Added FluxCursor, an abstract class for data model cursors.
154 - Made FluxExtPatTreeCursor, FluxPatTreeCursor, FluxDiskHeapCursor subclass
155   FluxCursor.
156
157 Minor
158 -----
159
160 - Replaced deprecated calls in FluxFileIO and added a callback for error
161   handling to the API.
162 - Added I/O error checking and robustness vs. corruption to FluxPatTree.
163 - Added I/O error checking to FluxDiskChunk.
164 - Added I/O error checking to FluxDiskHeap.
165
166
167 Flux 0.6.2 - 0.6.3
168 ==================
169
170 Minor
171 -----
172
173 - Use a single callback to schedule all FluxIO bandwidth.
174
175
176 Flux 0.6.1 - 0.6.2
177 ==================
178
179 Minor
180 -----
181
182 - Fixed two cases where FluxTcpIOs were leaked.
183 - Made sure FluxTcpIO never generate callbacks after last reference is
184   released.
185 - If we're closing a FluxTcpIO, always close it after a set time, even if
186   write buffer has data.
187 - Some additional debug code for FluxTcpIO.
188
189
190 Flux 0.6.0 - 0.6.1
191 ==================
192
193 Major
194 -----
195
196 - Added traversal/iteration to FluxDiskHeap.
197
198 Minor
199 -----
200
201 - Reliably call back even if FluxTcpIO connects fail immediately.
202 - Added a workaround to prevent GNet from making unnecessary DNS lookups.
203 - Improved FluxIO bandwidth metering slightly.
204
205
206 Flux 0.5.11 - 0.6.0
207 ===================
208
209 Major
210 -----
211
212 - Added FluxDiskChunk, a file-based same-size block allocator.
213 - Added FluxDiskHeap, a file-based any-size block allocator.
214 - Added FluxPatTree, a file-based Patricia lookup tree.
215 - Added FluxExtPatTree, like FluxPatTree but with multiple values per key.
216 - Cleaned up FluxMarshaller, and added function to free marshalled structs.
217
218 Minor
219 -----
220
221 - Lowered priority of file I/O on win32.
222 - Added FLUX_STRING_IS_EMPTY() macro.
223 - Fixed an integer overflow bug in FluxMarshaller.
224 - Fixed a length calculation in FluxMarshaller that could make it crash
225   on garbled input.
226 - Made marshalled dynamic data slightly more compact.
227
228
229 Flux 0.5.10 - 0.5.11
230 ====================
231
232 Minor
233 -----
234
235 - Nonblock fix for win32.
236
237
238 Flux 0.5.9 - 0.5.10
239 ===================
240
241 Minor
242 -----
243
244 - Made FluxFifo use less memory by default.
245 - Fixed FluxIO threshold to start at 0, not 1.
246 - Set FluxTcpIO priority to be lower than GUI on Windows.
247 - Only set write watch on FluxTcpIO if there is something to write.
248 - Made flux_dual_fifo_flush_output() trigger a potential write cycle.
249
250
251 Flux 0.5.8 - 0.5.9
252 ==================
253
254 Minor
255 -----
256
257 - Make sure FluxTcpIO writes when it's able to, also with compressed streams.
258
259
260 Flux 0.5.7 - 0.5.8
261 ==================
262
263 Minor
264 -----
265
266 - Fixed a bug that could hang FluxFifo if it tried to decompress invalid data.
267 - Make setting the compression level post-connect possible for subclasses
268   of FluxTcpIO.
269
270
271 Flux 0.5.6 - 0.5.7
272 ==================
273
274 Minor
275 -----
276
277 - Win32 fixes.
278 - Fixed potential crashes in FluxTcpIO.
279
280
281 Flux 0.5.5 - 0.5.6
282 ==================
283
284 Major
285 -----
286
287 - Requires GNet 2.0.
288
289 Minor
290 -----
291
292 - Enable randomization of cipher contexts, and use different Twofish keys
293   for connections spawned from FluxTcpListener.
294 - Automake 1.7 fixes.
295
296
297 Flux 0.5.4 - 0.5.5
298 ==================
299
300 Major
301 -----
302
303 - Added RSA cipher.
304 - Upgraded Elgamal cipher to match RSA interface and capabilities.
305
306 Minor
307 -----
308
309 - Fixed an ASCII toupper/tolower compile problem with RH9 glibc (Joakim).
310 - Included tests for asymmetric ciphers.
311 - Marshaller test now tries random input to pack demarshaller.
312
313
314 Flux 0.5.3 - 0.5.4
315 ==================
316
317 Major
318 -----
319
320 - Switched to requiring GNet 1.3, which uses GLib 2.0 by default.
321
322 Minor
323 -----
324
325 - Made build work with modern libtool, automake.
326
327
328 Flux 0.5.2 - 0.5.3
329 ==================
330
331 Minor
332 -----
333
334 - Plugged a minor memory leak in FluxTcpIO connect handler.
335
336
337 Flux 0.5.1 - 0.5.2
338 ==================
339
340 Minor
341 -----
342
343 - Added assertions to FluxTcpIO callbacks in the hopes of revealing
344   hard-to-find bugs.
345
346
347 Flux 0.5.0 - 0.5.1
348 ==================
349
350 Minor
351 -----
352
353 - Plugged a hole in flux_marshaler_decode_pack () that could result in an
354   out-of-bounds write.
Note: See TracBrowser for help on using the browser.