Changes in 0.9.5: * Bugfix patch from Shirish Hemant Phatak Changes in 0.9.4: (library 1.1.0) * Fixes for rsync.h from Thorsten Schuett * RLL encoding fix from Shirish Hemant Phatak * RPM spec file by Peter J. Braam * No (intentional) changes to binary API. Changes in 0.9.3: * Big speed improvements in MD4 routines and generation of weak checksums. * Patch to build on FreeBSD by Jos Backus * Suggestions to build on Solaris 2.6 from Alberto Accomazzi * Add rs_job_drive, a generic mechanism for turning the library into blocking mode. rs_whole_run now builds on top of this. The filebuf interface has changed a little to accomodate it. * Generating and loading signatures now generates statistics. * More test cases. * I suspect there may be a bug in rolling checksums, but it probably only causes inefficiency and not corruption. * Portability fixes for alphaev67-dec-osf5.1; at the moment builds but does not work because librsync tries to do unaligned accesses. * Works on sparc64-unknown-linux-gnu (Debian/2.2) Changes in 0.9.2: * Improve delta algorithm so that deltas are actually delta-compressed, rather than faked. Changes in 0.9.1: * Rename the library to `librsync'. * Portability fixes. * Include the popt library, and use it to build rdiff if the library is not present on the host. * Add file(1) magic for rdiff. * Add more to the manual pages. * It's no longer necessary to call rs_buffers_init on a stream before starting to use it: all the internal data is kept in the job, not in the stream. * Rename rs_stream_t to rs_buffers_t, a more obvious name. Pass the buffers to every rs_job_iter() call, rather than setting it at startup. Similarly for all the _begin() functions. * rs_job_new also takes the initial state function. * Return RS_PARAM_ERROR when library is misused. Changes in 0.9.0: * Redesign API to be more like zlib/bzlib. * Put all command-line functions into a single rdiff(1) program. * New magic number `rs6' * Change to using popt for command line parsing. * Use Doxygen for API documentation. Changes in 0.5.7: * Changes stats string format. * Slightly improved test cases Changes in 0.5.6: * Don't install debugging tools into /usr/local/bin; leave them in the source directory. * Fix libhsync to build on (sgi-mips, IRIX64, gcc, GNU Make) * Include README.CVS in tarball * Back out of using libtool and shared libraries, as it is unnecessary at this stage, complicates installation and slows down compilation. * Use mapptr when reading data to decode, so that decoding should have less latency and be more reliable. * Cope better on systems that are missing functions like snprintf. Changes in 0.5.5: * Put genuine search encoding back into the nad algorithm, and further clean up the nad code. Literals are now sent out using a literal buffer integrated with the input mapptr so that data is not copied. Checksums are still calculated from scratch each time rather than by rolling -- this is very slow but simple. * Reshuffle test cases so that they use files generated by hsmapread, rather than the source directory. This makes the tests quicker and more reproducible, hopefully without losing coverage. Further develop the test driver framework. * Add hsdumpsums debugging tool. * Hex strings (eg strong checksums) are broken up by underscores for readability. * Stats now go to the log rather than stdout. * mapptr acts properly when we're skipping/rewinding to data already present in the buffer -- it does a copy if required, but not necessarily real IO. Changes in 0.5.4: * Improved mapptr input code * Turn on more warnings if using gcc * More test cases Changes in 0.5.3: * Improvements to mapptr to make it work better for network IO. * Debug trace code is compiled in unless turned off in ./configure (although most programs will not write it out unless asked.) * Add libhsyncinfo program to show compiled-in settings and version. * Add test cases that run across localhost TCP sockets. * Improved build code; should now build easily from CVS through autogen.sh. * Improved trace code. * Clean up to build on sparc-sun-solaris2.8, and in the process clean up the handling of bytes vs chars, and of building without gcc * Reverse build scripts so that driver.sh calls the particular script. Changes in 0.5.2: * Use mapptr for input. * Implement a new structure for encoding in nad.c. It doesn't encode at the moment, but it's much more maintainable. * More regression cases. * Clean up build process. Changes in 0.5.0: * Rewrite hs_inbuf and hs_encode to make them simpler and more reliable. * Test cases for input handling. * Use the map_ptr idea for input from both streams and files. Changes in 0.4.1: * automake/autoconf now works cleanly when the build directory is different to the source directory. * --enable-ccmalloc works again. Changes in 0.4.0: * A much better regression suite. * CHECKSUM token includes the file's checksum up to the current location, to aid in self-testing. * Various bug fixes, particularly to do with short IO returns. Local variables: mode: indented-text End: