Metadata-Version: 2.0
Name: lz4ext
Version: 0.7.2
Summary: LZ4 Bindings for Python
Home-page: https://github.com/sigman78/python-lz4
Author: Steeve Morin, Anton Stuk
Author-email: steeve.morin@gmail.com, sigman@ioupg.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: BSD License
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: C
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.3

==========
python-lz4ext (former python-lz4)
==========

.. image:: https://travis-ci.org/sigman78/python-lz4.svg?branch=master
    :target: https://travis-ci.org/sigman78/python-lz4

Overview
========
This package provides bindings for the `lz4 compression library <http://code.google.com/p/lz4/>`_ by Yann Collet.

Code specific to this project is covered by the `BSD 3-Clause License <http://opensource.org/licenses/BSD-3-Clause>`_

Install
=======
The package is hosted on `PyPI <http://pypi.python.org/pypi/lz4>`_::

    $ pip install lz4
    $ easy_install lz4

Usage
=====
The library is pretty simple to use::

    >>> import lz4
    >>> compressed_data = lz4.dumps(data)
    >>> data == lz4.loads(compressed_data)
    True
    >>>

Methods and Constants
=====================
The bindings provides some aliases too::

    >>> import lz4
    >>> lz4.LZ4_compress == lz4.compress == lz4.dumps
    True
    >>> lz4.LZ4_uncompress == lz4.uncompress == z4.decompress == lz4.loads
    True
    >>> lz4.VERSION == lz4.__version__  # e.g. "0.7.0"
    True
    >>>

Is it fast ?
============
Yes. Here are the results on my 2011 Macbook Pro i7 with lz4.c as input data: ::

    $ python tests/bench.py
    Data Size:
      Input: 24779
      LZ4: 10152 (0.41)
      Snappy: 9902 (0.40)
      LZ4 / Snappy: 1.025247
    Benchmark: 200000 calls
      LZ4 Compression: 9.737272s
      Snappy Compression: 18.012336s
      LZ4 Decompression: 2.686854s
      Snappy Decompression : 5.146867s

Important note
==============
Because LZ4 doesn't define a container format, the python bindings will insert the original data size as an integer at the start of the compressed payload, like most bindings do anyway (Java...)




