+2004-08-17 Martin Quinson
+ Version 0.6.1 (protocol not changed; ABI not changed)
+ - prealloc some buffers to speed things up
+
+2004-08-11 Martin Quinson
+ Version 0.6 (protocol not changed; ABI expended)
+ - The parsing macro can deal with the references, provided that you add
+ the relevant annotations (using GRAS_ANNOTE(size,field_name))
+
+2004-08-09 Martin Quinson
+ Version 0.5 (protocol not changed; ABI changed)
+ - Allow to off turn the cycle detection code in data exchange at
+ compilation time. It should be at run time, but I'm short of time (and
+ the config stuff is still broken). That way, we keep dict of of the
+ critical path, which is good because the performance is poor:
+ - search not dichotomial yet
+ - dynar give no way to access their content and memcpy everytime
+ - In composed data description (struct, ref and so on), stop foolness of
+ keeping the subtype's ID, but store the type itself. This keeps sets out
+ of the critical path, which is good since they rely on dynar and
+ dictionnaries. The only loose of that is that we cannot detect the
+ redeclaration of a structure/union with another content (but I'm not sure
+ the code detected this error well before anyway). We still can detect
+ the redefinition discrepancy for the other types.
+ - Use a whole bunch of optimisation flags (plus -fno-strict-aliasing since
+ it breaks the code because of type-punning used all over the place).
+ This breaks on all non-gcc architectures (for now).
+
+ All those changes (plus the buffer of last time) allow me to gain 2 order
+ of magnitude on cruel tests consisting of 800000 array of integers on two
+ level of a hierarchical structure (200 secondes -> 4 secondes)
+
+ API change:
+ - the selector of reference must now return the type it points to, not
+ the ID of this type.
+
+2004-08-06 Martin Quinson
+ Version 0.4 (protocol changed; ABI not changed)
+ - Allow to pass --gras-log argument to processes in simulation mode. Really.
+ - New debugging level: trace (under debug) to see effect of GRAS_IN/OUT
+ - Implement a buffer transport, and use it by default (it relies on tcp in
+ real life and on sg in simulation).
+ That's a bit hackish since I had a new field to the structure to store
+ its data without interfering with the subtype ones. Inheritance
+ is tricky in C. And that's a kind of reverse inheritance with one class
+ derivating two classes. Or maybe a game with java interfaces. Anyway,
+ that's damn hard in C (at least).
+ Moreover, I got tired while trying to ensure plugin separation and
+ genericity in SG mode. MSG wants me to do weird things, so let's go for
+ cruel hacks (temporarily of course ;).
+ See comment in transport_private.h:71
+ - do not include all the _interface headers in private but in the files
+ which really need them (to cut the compilation time when they are
+ modified)
+
+2004-07-26 Martin Quinson
+ Version 0.3 (protocol not changed; ABI changed)
+ - Major overhault of the datadesc interface to simplify it:
+ - shorted the function names:
+ s/gras_datadesc_declare_struct/gras_datadesc_struct/ and so on
+ - add a trivial way to push/pop integers into the cbps without malloc.
+ This allows to make really generic sub_type description, which simply
+ pop their size of the stack.
+ - add a function gras_datadesc_ref_pop_arr() which does what users want
+ most of the time: Declare a dynamic array (which pops its size of the
+ stack) and declare a reference to it. Poor name, but anyway.
+ - kill the post-send callback, add a post-receive one
+
+2004-07-23 Martin Quinson
+ Version 0.2 (protocol changed; ABI changed)
+ - add some testing for cpbs in the test cases, and fix some more bugs.
+ This invalidate again the little64 data file, since I cannot regenerate
+ it myself.
+ - remove an awfull optimization in the logging stuff, allowing me to:
+ - understand it again
+ - learn gcc how to check that the argument match the provided format
+ - fix all errors revealed by gcc after that
+ - internal keys of dict are not \0 terminated. Deal with it properly in
+ loggings instead of segfaulting when the user want to see the logs :-/
+
+2004-07-22 Martin Quinson
+ - Fix some stupid bug preventing cbps (callback postit) from working
+
2004-07-21 Martin Quinson
- Version 0.1.2
- Some documentation cleanups
- remove the useless last argument of msgtype_declare
- rename the Virtu functions to fit into the 'os' namespace
+ - move headers src/include -> src/include/gras/ and stop fooling with
+ gras -> . symbolic link
+ - make distcheck is now successful
2004-07-19 Martin Quinson
Version 0.1.1