Not that much has been happening to zsync in the last two weeks, as I took a bit of a break from working on it. This release is the result of some general tweaking to the support for compressed files. The code is somewhat cleaner now, and compressed downloads now make full use of HTTP/1.1 pipelining — doing all the downloading in a single connection — as I had already implemented for uncompressed downloads. zsyncmake also creates a more detailed map of compressed data files and tries to align block boundaries with the boundaries that zsync uses; this has caused a further improvement in the efficiency of compressed downloads. Compressed downloads now appear to beat uncompressed in most circumstances now — I have not yet updated the technical paper with new figures to reflect these improvements, although I will do so soon.
Due to the changes, I have been able to reduce the amount of data per block for the compressed file map, so, although more blocks are stored the .zsync file, it is not significantly larger in my test cases. This does mean that the .zsync format for compressed downloads has changes incompatibly. Sorry folks, but while I am at 0.x I reserve the right to break compatibility at any time if there are significant benefits from doing so. Uncompressed downloads remain compatible though, so the streams on my streams page should still work with either version. I will switch them over to the new format in a week or so, at which point zsync-0.1.0 will no longer work with them. Also, I notice that as of 0.1.0 it looks like compiling on Solaris is broken; I should get around to fixing that by the next release.