When 'debdelta' is improved, features are added. In some cases, a delta created with a newer version of debdelta may not work with an older version of 'debpatch'. The feature that 'debdelta' or 'debdeltas' use when creating a delta depend on command line option, but also on the content of the deb files that are debdelta-ed. Whenever a feature is used in creating a delta, a special keywords of the form "needs-FEATURE" is added to the info (that is contained in the delta file, and can be browsed using 'debpatch --info'). An older version of debpatch will graciously exit if it finds in the info a feature that it does not recognize. To obtain backward compatibility, some features can be disabled by setting the commandline option --disable-feature Here is the listing of features, divided in sections --- delta format needs-old the delta was created with the option --needsold; such delta can only be applied if the old .deb is available, (but not using the installed version of the old deb). This is rarely used. --- binary delta backends needs-bsdiff this delta needs the program 'bsdiff' , that is available in the samename package; currently bsdiff is the default backend (see the option --delta-algo ). needs-xdelta this delta needs the program 'xdelta' that is available in the samename package; it is used if --delta-algo is set to xdelta needs-xdelta3 this delta needs the program 'xdelta3' that is available in the samename package; it is used if --delta-algo is set to xdelta3 The support for all 3 above was added before Debian/lenny. needs-xdelta3-fifo this delta needs xdelta3 at least version 0y , that supports reading the source thru a name FIFO. The support for this was added in 'debdelta' 0.39, and will be available in Debian/stable with the release of Debian/squeeze. If you want to create deltas that are compatible with Debian/lenny, use '--disable-feature xdelta3-fifo'. ---- compressor debdelta uses internally bzip2 and gzip in many places, and it depends on those, so there is no 'needs-bzip2' and 'needs-gzip'. For other compressors, things are as follows. needs-minibzip2 this delta needs the program 'minibzip2' that is available in the package 'debdelta' itself; it is used to recreate data.tar.bz2, (so that it is identical to the one created by dpkg-deb). The support for this was added before Debian/lenny. needs-lzma this delta needs the program 'lzma' that is available in the samename package. The support for this was added in 'debdelta' 0.31, and will be available in Debian/stable with the release of Debian/squeeze. 'lzma' is needed if the new or old deb contains data.tar.lzma (but this is not yet allowed in repositories, as of Aug 09). Moreover, 'lzma' may be used to compress the internal file 'patch.sh' in the delta file, if this provides a shorter file than 'bzip2' and 'gzip'. This latter usage can be disabled by setting '--disable-feature lzma' (and such option provides compatibility with debdelta in Debian/lenny). needs-xz this delta needs the program 'xz' that is available in package 'xz-utils'. 'xz' is needed if the new or old deb contains data.tar.xz , and this is allowed in the Debian archives since Jul 2011. Moreover, 'xz' may be used to compress the internal file 'patch.sh' in the delta file, if this provides a shorter file than 'bzip2' and 'gzip' or 'lzma'. This latter usage can be disabled by setting '--disable-feature xz' (and such option provides compatibility with debdelta in Debian/squeeze).