Main > Programming > Libraries >

LibXDiff 0.23

LibXDiff 0.23

Sponsored Links

LibXDiff 0.23 Ranking & Summary

RankingClick at the star to rank
Ranking Level
User Review: 0 (0 times)
File size:
Platform: Any Platform
License: GPL
Price: FREE
Downloads: 20
Date added: 2008-11-13
Publisher: Davide Libenzi

LibXDiff 0.23 description

LibXDiff 0.23 is designed as a library which implements basic and yet complete functionalities to create file differences/patches to both binary and text files. The library uses memory files as file abstraction to achieve both performance and portability. For binary files, LibXDiff implements both (with some modification) the algorithm described in File System Support for Delta Compression by Joshua P. MacDonald, and the algorithm described in Fingerprinting By Random Polynomials by Michael O. Rabin.

While for text files it follows directives described in An O(ND) Difference Algorithm and Its Variations by Eugene W. Myers. Memory files used by the library are basically a collection of buffers that store the file content. There are two different requirements for memory files when passed to diff/patch functions. Text files for diff/patch functions require that a single line do not have to spawn across two different memory file blocks. Binary diff/patch functions require memory files to be compact. A compact memory files is a file whose content is stored inside a single block.

Major Features:

  1. Functionalities inside the library are available to satisfy these rules. Using the XDL_MMF_ATOMIC memory file flag it is possible to make writes to not split the written record across different blocks, while the functions xdl_mmfile_iscompact() , xdl_mmfile_compact() and xdl_mmfile_writeallocate() are usefull to test if the file is compact and to create a compacted version of the file itself.
  2. The text file differential output uses the raw unified output format, by omitting the file header since the result is always relative to a single compare operation (between two files).
  3. The output format of the binary patch file is proprietary (and binary) and it is basically a collection of copy and insert commands, like described inside the MacDonald paper.
  4. The library is compatible with almost every Unix implementation (configure script) and it is also compatible with Windows through custom (nmake) make files. Examples are available inside the test subdirectory of the distribution tarball that show how to use the library. Also, inside the same subdirectory, a regression test in available that tests the library with random data by requiring a diff followed by a patch and comparing results. Regression tests ran successfully for days on my Linux, Solaris, FreeBSD and Windows boxes, and this makes you believe that the library itself is completely ready for production (despite the version number).
Enhancements: Improved performance a in few corner case patterns and in cases where there is a huge input file. Some code cleanup.

LibXDiff 0.23 Screenshot

Advertisements

LibXDiff 0.23 Keywords

Bookmark LibXDiff 0.23

Hyperlink code:
Link for forum:

LibXDiff 0.23 Copyright

WareSeeker periodically updates pricing and software information of LibXDiff 0.23 full version from the publisher, so some information may be slightly out-of-date. You should confirm all information before relying on it. Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future development of LibXDiff 0.23 Edition. Download links are directly from our publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed

Allok Video Splitter 2.2.0 Review:

Name (Required)
Email(Required)
Captcha
Featured Software

Want to place your software product here?
Please contact us for consideration.

Contact WareSeeker.com
Version History
Related Software
libft is an open source version of the fischertechnik ROBO Interface Library for Unix like system. Free Download
libdlist library implements a generic double linked list. Free Download
libjit library implements just-in-time compilation functionality. Free Download
Libelf lets you read, modify or create ELF files in an architecture-independent way. Free Download
libpcg is a small library for procedural content generation. Free Download
Libcddb is a library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server. Free Download
libgfeed is a library to manage (create, load, edit) feed files in either the ATOM v1.0 or RSS v2.0 format. Free Download
pslib is a C-library to create PostScript files on the fly. Free Download