Skip to main content

Binary diff/patch utility.

Project description

buildstatus coverage

About

Binary delta encoding utility in Python 3, using C extensions.

Based on http://www.daemonology.net/bsdiff/, with the following differences:

  • LZMA compression instead of BZ2 for smaller patches.

  • Linear patch file access pattern to allow streaming.

  • SA-IS instead of qsufsort for speed and reliability.

Project homepage: https://github.com/eerimoq/detools

Documentation: http://detools.readthedocs.org/en/latest

Installation

pip install detools

Statistics

From name

To name

From size

To size

Patch size

To compressed

python3.5

python3.6

4464400

4568920

1493488

1402663

foo.old

foo.new

2780

2780

192

1934

Example usage

Command line tool

The create patch subcommand

$ detools create_patch tests/files/foo.old tests/files/foo.new foo.patch

The apply patch subcommand

$ detools apply_patch tests/files/foo.old foo.patch foo.new

Contributing

  1. Fork the repository.

  2. Implement the new feature or bug fix.

  3. Implement test case(s) to ensure that future changes do not break legacy.

  4. Run the tests.

    make test
  5. Create a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

detools-0.2.0.tar.gz (12.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page