Changes in 0.6.3
- performance improvements for large (>250MB) files - on multi-gigabyte files
  this can be a very large improvement.
- other optimisations.
- tuning to reduce likelyhood of hitting bad performance due to bad checksum
  distribution.
- fix case where client would think download succeeded and try verifying it
  when it had really failed.
- fix a problem where the client could get into a loop retrieving data if the
  remote returned data inconsistent with the .zsync file.
- improvements to some of the error and progress messages.
- --enable-debug to turn on stats for debugging performance problems.

Changes in 0.6.2
- fix for using zsync client on files >2GB on 32bit systems.
- fix redirect handling.
- improve some edge cases dealing with unusual seed data patterns.
- optimise by stopping reading seed files if target file is complete.
- fix infinite loop in zsyncmake when given a truncated (invalid) .gz
- fix --disable-profile to configure.

Changes in 0.6.1
- recompression support for gzip files made with zlib:gzio.c or gzip -n
- fix compilation on MacOS X
- allow HTTP redirects on the target file; not sure whether this is a good idea
  or not...
- fix unecessary transfer of whole file where file is smaller than the context
  size (1x or 2x blocksize)
- use sequential_matches=1 when there is only one block; otherwise we're forced
  to transfer the whole file for files below 2kiB
- fix librcksum handling of zsync streams with sequential_matches == 1; it was 
  giving false negatives when applying the rsync algorithm, resulting in poor
  use of local source data when sequential_matches == 1 (which didn't actually
  occur in any recent version of zsync)

Changes in 0.6
- fix out-of-bounds memory access when processing last block of non-compressed
  download (patch from Timothy Lee). Also fix an error handling fault for the
  same.
- fix "try a smaller blocksize" failures when zsyncmakeing for huge compressed
  files on 32bit systems
- preserve mtime on downloaded files
- fix potential crash when re/deallocating checksum hash in librcksum (patch
  from Timothy Lee)
- explain status code errors better
- better URL handling
- add -q as a substitute for -s, as -q is more conventional (re wget). -q also
  suppresses the 'no relevant local data' warning now.
- fix some warnings
- code tidy-up and better commenting of what it is doing
- tidy up autoconf use

Changes in 0.5
- get large file support where possible
- replacement getaddrinfo on systems that lack it
- fix compilation on MacOS X

Changes in 0.4.3
- make -s suppress summary info too
- add HTTP authentication support

Changes in 0.4.2
- fix CAN-2005-1849 for embedded zlib
- obey -s flag

Changes in 0.4.1
- security fix from zlib-1.2.2
- generate RFC 1123 date strings in HTTP requests
- include port numbers in Host headers
- be slightly more accepting in proxy URL syntax
- don't generate Accept-Ranges headers

Changes in 0.4.0
- now considered beta instead of alpha quality
- fixed incorrect 100%/done display of progress bar when cleanly disconnected before end by server
- updated autoconf/automake scripts

Changes in 0.3.3
- build in gzip in zsyncmake which produces .gz files optimised for zsync
- quickly stop downloading from a URL producing bad data
- -k option to keep the .zsync file, and redownload only when it changes
- fixes some possible crashes that could occur with unexpected remote responses

Changes in 0.3.2
- automatically decompress local seed data when this is appropriate
- progress bars with rate and ETA for all downloads
- automatically recompress downloaded file if possible
- deal better with local .zsyncs containing relative URLs

Changes in 0.3.1
- fix SEGV when downloading with no local data found
- fix failure when incomplete final block of uncompressed stream is unknown
- fix some memory leaks

Changes in 0.3.0
- fix endian check in libhash (works on FreeBSD again)
- major code reorganisation

Changes in 0.2.3
- fix crash in zsyncmake with short files
- "negative" hash table used to speed up processing

Changes in 0.2.2
- complete support for stored blocks in gzip files
- update block size recommendations in man page

Changes in 0.2.1
- fixed bug where zsync would loop if fed more than one local source file
- enabled zsync to handle gzip files containing stored (uncompressed) blocks (so we should do slightly better on gzipped binaries now - but this is still incomplete and will not work for all files)

Changes in 0.2.0
- major reduction in the size of the control file, due to some new optimisations 
- further fixes for servers refusing to do multipart/byteranges responses

Changes in 0.1.6
- fixes some problems with compressed file downloads and unusual server responses
- improved http_proxy parsing

Changes in 0.1.5
- fixes some minor HTTP problems

Changes in 0.1.4
- fixed compilation with gcc-3.4

Changes in 0.1.3
- HTTP proxy support
- better HTTP support - we deal better with unusual server responses

Changes in 0.1.2
- fixes for Solaris/sparc

Changes in 0.1.1
- more efficient compressed stream support
- code cleanups

Changes in 0.1.0
- finished the cleanup of the compressed file transfer code
- major improvement in efficiency for compressed file transfers
- OpenSSL is no longer required
- now under the v2 Artistic License

Changes in 0.0.6
- just code cleanups and documentation updates

Changes in 0.0.5
- switch to OpenSSL's MD4 code
- fix checksumming at stream end
- fix various portability problems

Changes in 0.0.4
- relative URLs in .zsync files supported
- HTTP redirects are followed for the metafile
- now uses both compressed and uncompressed sources to further reduce download sizes

Changes in 0.0.3
- fix HTTP connection termination handling
- speed up local file reading

Changes in 0.0.2
- HTTP/1.1, with pipelining
- cleaning up more of the libc streams and mmap clutter
- progress displays
- lots of bugfixes

First release 0.0.1.

