./devel/xdelta, Enhanced diff that works on binary files

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.1.4, Package name: xdelta-1.1.4, Maintainer: pkgsrc-users

The delta generator portion of this program is a delta algorithm which
searches for substring matches between the files and then outputs
instructions to reconstruct the new file from the old file. It produces a
set of copy/insert instructions that tell how to reconstruct the file as a
sequence of copies from the FROM file and inserts from the delta itself.
In this regard, the program is much closer to a compression program than
to a diff program. However, the delta is not "compressed", in that the
delta's entropy H(P) will be very similar to the entropy of the portions
of the TO file not found within the FROM file. The delta will compress
just as well as the TO file will. This is a fundamentally different
method of computing deltas than in the traditional "diff" program. The
diff program and its variants use a least-common-subsequence (LCS)
algorithm to find a list of inserts and deletes that will modify the FROM
file into the TO file. LCS is more expensive to compute and is sometimes
more useful, especially to the human reader. Since LCS is a fairly
expensive algorithm, diff programs usually divide the input files into
newline-separated "atoms" before computing a delta. This is a fine
approximation for text files, but not binary files.


Required to run:
[devel/glib]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 413.603 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-07 09:22:36 by Thomas Klausner | Files touched by this commit (1)
Log message:
xdelta: remove dead HOMEPAGE
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles
   2019-11-03 11:39:32 by Roland Illig | Files touched by this commit (274)
Log message:
devel: align variable assignments

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.
   2015-11-03 04:29:40 by Alistair G. Crooks | Files touched by this commit (1995)
Log message:
Add SHA512 digests for distfiles for devel category

Issues found with existing distfiles:
	distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip
	distfiles/fortran-utils-1.1.tar.gz
	distfiles/ivykis-0.39.tar.gz
	distfiles/enum-1.11.tar.gz
	distfiles/pvs-3.2-libraries.tgz
	distfiles/pvs-3.2-linux.tgz
	distfiles/pvs-3.2-solaris.tgz
	distfiles/pvs-3.2-system.tgz
No changes made to these distinfo files.

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2013-04-06 22:27:30 by Blue Rats | Files touched by this commit (94)
Log message:
Resolves:
"INFO_FILES should be set to YES or yes."
"Packages that install info files should set INFO_FILES."
Makefile and PLIST warning, respectively.
   2012-10-31 12:19:55 by Aleksej Saushev | Files touched by this commit (1460)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
   2008-11-08 19:50:57 by Klaus Heinz | Files touched by this commit (6) | Package updated
Log message:
Updated to version 1.1.4.

Pkgsrc changes:
  - Removed patches patch-aa, patch-ab and patch-ac (integrated upstream).
  - Added explicit version requirements for glib and zlib.
  - HOMEPAGE and MASTER_SITES had moved to a different location.

Changes since version 1.1.1:
============================
** Changes since version 1.1.3

* Add an implementation of xdp_generator_free() for users of the
  libxdelta API.  Previously there were no such users of the 1.x API,
  but Elliot Lee <sopwith@redhat.com> has written a program for
  providing delta operations on RPM files.  See http://@@@

* The man page now documents return values.

** Changes since version 1.1.2

* Correct error message format for the case when gzread fails trying
  to automatically decompress a corrupted GZIP file.  The situation
  itself--corrupt GZIP files--should be dealt with the -p (--pristine)
  option, which disables GZIP file recognition.  Reported by Ben
  Escoto.

* Apply a patch from Klaus Dittrich for building on HPUX with the
  native compiler.  There is now a script called "contrib/build_hpux".

** Changes since version 1.1.1

* This code release is a distant fork of the 2.0 release.  It will
  hopefully be replaced.

* When 'patch' supplies its default TO file name recorded in the
  delta, it still generates a unique file name to avoid overwriting an
  existing copy.  Use the 'xdelta info' command to see what file names
  are contained in the delta.

* The code for writing patches to stdout was broken in the case where
  gzip compression is used.  Writing patches to stdout has therefore
  been disabled.  The problem is a limitation in the gzdopen/gzwrite
  functions provided by zlib--you cannot determine how many bytes have
  been written to the file descriptor without dup-ing the FD
  beforehand and then lseek-ing afterwards, which does not work
  correctly if the output file is not seekable.

* By default, Xdelta uses a hard-coded 16 byte block size.  If you're
  working with large files, try #undef XDELTA_HARDCODE_SIZE in
  xdelta.h then use -s BLOCKSIZE (--blocksize=BLOCKSIZE), which should
  be a power of 2.

* New test program in the 'test' subdirectory, which runs comparisons
  against "diff --rcs -a" and also verifies the "xdelta patch"
  command.

* Incorporate DJGPP patches from Richard Dawe <richdawe@bigfoot.com>.
  You can find his versions directly at:

      ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2apps/xdlt112b.zip
      ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2apps/xdlt112s.zip

* Updated xdelta(1) man page.

* Updated autoconf (2.50), automake (1.4-p4), libtool (1.4) scripts,
  which includes updated config.guess and config.sub scripts.

* Correct some backward compatibility issues: strcmp() was not being
  tested == 0 for formats older than 1.0.4.

* Update GLIB version requirement, now 1.2.8.

* We really need support for 64bit file sizes...  perhaps the next
  version?