I have placed version 0.15 of XDELTA, a binary delta generator and
prototype RCS-replacement program at:
The program has not previously been widely announced but has attracted
a fair amount of attention and so I am releasing new version with
bug-fixes, build-problem-fixes, and several enhancements that I've been
sitting on for the last 6 months.
The version number wasn't really supposed to indicate a premature
stage of development, rather it indicates that much of the code will
change before the program stabilizes. However, the delta and patch functions
are stable and I encourage their use. The RCS-like component of xdelta
needs improvement, the first change will be to throw out gdbm, and changes
will likely come about when I integrate it with PRCS.
The patch file format has changed slightly but this version retains backward
compatibility and will read patches generated by previous versions.
* Integrate the zlib compression library (only tested with 1.1.2, but
should work with 1.0.x):
* the delta utility now compresses patches automatically, a numeric
flag sets compression level much like gzip. the patch utility
reads the patches directly. for example:
xdelta delta -9 FROM TO OUT
uses zlib compression on the contents of OUT with the compression
level set to 9. The default compression level is that of zlib, and
-0 turns off compression.
The patch utility can apply the above patch without uncompressing,
so it is no longer necessary to distribute xdelta patches compressed
with a .gz suffix.
* the delta utility automatically uncompresses either FROM or TO if
they are compressed, because compressed files do not delta well.
the patch utility automatically performs the same compression.
These two enhancements reduce the number of steps required to
distribute compact deltas between two .tar.gz files. There is no
bzip2 support at this time, though the patch header has left room for
future enhancements. An example of how to use xdelta on two .tar.gz
xdelta delta from.tar.gz to.tar.gz from-to.xd
This command create from-to.xd, the patch.
xdelta patch from.tar.gz from-to.xd to.tar.gz
restores to.tar.gz from the patch. Note that the same compression
settings are not necessarily used so the reconstructed to.tar.gz may
differ from the original, but the uncompressed versions will be
Xdelta still performs MD5 checksum verification on all files and
reliably report errors in its own reconstructions. No such errors
have been reported since the first public release of xdelta.
For more information, see
The upcoming PRCS 2.0 (expect this in Summer 1998) will use xdelta as
a base for its client-server protocol. Information on PRCS is
** Bug fixes:
* xdelta no longer has an assertion failure on certain, short files.
** Build fixes:
* correct use of strerror()