brotli/python
Alex Nicksay 5632315d35 Python: Support streamed compression with the Compressor object (#448)
This adds `flush` and `finish` methods to the `Compressor`
object in the extension module, renames the `compress` method to
`process`, and updates that method to only process data.  Now,
one or more `process` calls followed by a `finish` call will be
equivalent to a module-level `compress` call.

Note: To maximize the compression efficiency (and match
underlying Brotli behavior, the `Compressor` object `process`
method does not guarantee all input is immediately written to
output. To ensure immediate output, call `flush` to manually
flush the compression buffer.  Extraneous flushing can increase
the size, but may be required when processing streaming data.

Progress on #191
2016-10-24 13:28:56 +02:00
..
tests Restore platform suffix 2016-06-17 20:24:24 +02:00
_brotli.cc Python: Support streamed compression with the Compressor object (#448) 2016-10-24 13:28:56 +02:00
bro.py Add binding for custom_dictionary. 2016-02-23 17:42:55 +01:00
brotli.py Python: Support streamed compression with the Compressor object (#448) 2016-10-24 13:28:56 +02:00
README.md Python: Update README with information about code formatting 2016-10-17 13:57:56 -04:00

This directory contains the code for the Python brotli module, bro.py tool, and roundtrip tests.

Development

To build the module, execute the following from the root project directory:

$ python setup.py build_ext

To test the module, execute the following from the root project directory:

$ python setup.py test

Code Style

Brotli's code follows the Google Python Style Guide. To automatically format your code, install YAPF:

$ pip install yapf

Then, either format a single file:

$ yapf --in-place FILE

Or, format all files in a directory:

$ yapf --in-place --recursive DIR

See the YAPF usage documentation for more information.