Python wrapper for libdeflate.
Project description
deflate API
This is a very thin Python wrapper Eric Biggers' excellent libdeflate.
Currently, it handles:
Compression and decompression of gzip data, with a very basic API
import deflate
level = 6 # The default; may be 1-12 for libdeflate.
compressed = deflate.gzip_compress(b"hello world!" * 1000, level)
original = deflate.gzip_decompress(compressed)
Compression and decompression of raw DEFLATE or zlib data
The original size of the decompressed data needs to be kept through additional logic.
import deflate
level = 6 # The default; may be 1-12 for libdeflate.
data = b"hello world!" * 1000
# DEFLATE
compressed = deflate.deflate_compress(data, level)
original = deflate.deflate_decompress(compressed, len(data))
# zlib
compressed = deflate.zlib_compress(data, level)
original = deflate.zlib_decompress(compressed, len(data))
CRC32 computation
import deflate
crc32 = deflate.crc32(b"hello world! ") # initial
crc32 = deflate.crc32(b"hello universe!", crc32) # continued
Adler-32 computation
import deflate
adler32 = deflate.adler32(b"hello world! ") # initial
adler32 = deflate.adler32(b"hello universe!", adler32) # continued
Installation
pip install deflate
By default, deflate
will compile and statically link the bundled libdeflate
when you
build from source. To link to a system-installed libdeflate
, set the
LIBDEFLATE_PREFIX
environment variable:
LIBDEFLATE_PREFIX=/opt/homebrew/Cellar/libdeflate/1.20 python -m build
Testing
pip install -r requirements-dev.lock
python -m pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
deflate-0.7.0.tar.gz
(233.6 kB
view hashes)
Built Distributions
deflate-0.7.0-cp39-cp39-win32.whl
(43.0 kB
view hashes)
deflate-0.7.0-cp38-cp38-win32.whl
(43.0 kB
view hashes)
Close
Hashes for deflate-0.7.0-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 251a7a48359ba6ad1a821dd06510dabb4060512705fd462d62708a82e7472713 |
|
MD5 | b16956f75e7990f49138092d258b711d |
|
BLAKE2b-256 | 03063bef0929e279040ed5fe05e08503c5395f327617bed215f8e67e3b1fe54a |
Close
Hashes for deflate-0.7.0-cp312-cp312-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5141c4f8614ea59113f411d7634a1508b09ddf4900e24517932c886e8b910a0b |
|
MD5 | 082ad0d39a0322f5e26cea896de416d7 |
|
BLAKE2b-256 | 0ca0f415fdb3f22877d673396c30f0bd616be542139397681abe830be9dfc156 |
Close
Hashes for deflate-0.7.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10b5d1d9ecea31f933227af16471443eec28ac0c645d2e14f6f4214060f97969 |
|
MD5 | 1140bff0707d3cbdb0ad9f2fdc68138f |
|
BLAKE2b-256 | 184969ed5eae22ca0bc24473be68f79fd7c56ad3a526269c75482fe6678e7485 |
Close
Hashes for deflate-0.7.0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd58cb2348918b22d627f0341099bc11782389359d523852cf9a4fd3deb825b3 |
|
MD5 | c0cf447a88ec1ad963e2a5943d8fbbab |
|
BLAKE2b-256 | 30de5a9a6494fc63e4704893ff53f0b9d8a69771b06426181e0a30a978946eea |
Close
Hashes for deflate-0.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16c1b4875c7e0166748eb026d20aeb639d081b85d7a23ce0f3513a89bb91823b |
|
MD5 | 0f7eb6b80770a43096b5e57379ac7d61 |
|
BLAKE2b-256 | bed3058fb8f253bdb2171da20ecd1a75e0eb897eafdcbb19aaaf642123bd3d38 |
Close
Hashes for deflate-0.7.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae173c09956c923c3a20751c1b01272d274e721f180fa5d6e0d773ab84bf9288 |
|
MD5 | d765e224807d6dd8bf3ad589af1e7f01 |
|
BLAKE2b-256 | 270474e60efa0fb662dbb6599efbd5bc22ec984cd9e6b23ede63657bc150e643 |
Close
Hashes for deflate-0.7.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3c3b95f92ec0beb910428203cd4e4c77fcfd9efaa0a0dd4fd26db698384bf57 |
|
MD5 | 8613ec03177c342174c387153901d610 |
|
BLAKE2b-256 | 4dee3892498c11829ee7ddbeb349eb4ab30fb081c34e8218ec38d9010044abb9 |
Close
Hashes for deflate-0.7.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b8c8cb91a82b16e2effab66960229ecfb6420e1cb3723e92302979350c2f993 |
|
MD5 | cf4d9dec58a600843394c0b54f9fb6b4 |
|
BLAKE2b-256 | bf28e73d3f585f2608f248d18289a3917598c93fca13b366fcf134625e427dce |
Close
Hashes for deflate-0.7.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cad885fae8d26625e67f415b9e2a6fb769ba84588eeef223eb63365271ddaf2 |
|
MD5 | 6472a7dc724840a2c914cd609b9a3685 |
|
BLAKE2b-256 | ef64bd264433386fc7cd8f54c377ba6e4fbc91e9ba1df3de9d7dd513ec90af18 |
Close
Hashes for deflate-0.7.0-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e52f632e23be1dbaae76da7ef50dd4d556bb48a1b9cded2242ed5d1bb5feefbe |
|
MD5 | 33698eedbb004b40dacc0d0459b67bb2 |
|
BLAKE2b-256 | 8cec5c47e5cce1f9cc755d63cb22f6e036b110c8e535c00ec1ad1e343652ebbc |
Close
Hashes for deflate-0.7.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c4d343112c22e84d428cd65752729f08aad0394d16f755a841aadb7e65c01da |
|
MD5 | 074c3296ed3bce3765e9c6358bbceaba |
|
BLAKE2b-256 | 16b27842a98aadd265babf0bf3036a314306a51080a1c45fe57767ac6d2b32ac |
Close
Hashes for deflate-0.7.0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ed5ba096877aafdc3c667ff35ee6f63ca9ff5ba70459c925f53a99b32fd0783 |
|
MD5 | bdde5c9438d0abfbd5b9918fd89f8538 |
|
BLAKE2b-256 | 58430597cae045f678f85f49226bcb548b1fb694e1a543a8066e4b6c8a95d1ca |
Close
Hashes for deflate-0.7.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc80e18459a3d578b86e1f121128ad1e2a81e847fe357beb00c2de1c0753791b |
|
MD5 | 6bb040819f8f0287699d432fd180684a |
|
BLAKE2b-256 | 3f33982f1105bd5d3c4067d37dba399bb851544a1e115e1e1daa9a5cfb1a727d |
Close
Hashes for deflate-0.7.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f3e64c2acb85c6501864e07992ea045b306a676f1c8117abae2c9420c0514e3 |
|
MD5 | 8a4d02644a47862d51d5ff6cc13b76dc |
|
BLAKE2b-256 | d6ad37860f47cca74faae86dddb7bd43eadf4f80c2878a25727991d2c5bc74ae |
Close
Hashes for deflate-0.7.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbb2053fda99ee760f50ac5d16281dd1da174e6cabff043f1f7566446484d62d |
|
MD5 | 7ef7cc4a5582d2a6b5b21da8ec6c811e |
|
BLAKE2b-256 | 1686ba60d33565ca77fda37fcc2b0905ed0d8b7263ff0a1fee3472a6f47253e8 |
Close
Hashes for deflate-0.7.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c86314cfa96e1e898b4946b48081aa1230664519318aaadd65731ab3d8979af9 |
|
MD5 | 1bdf9553bee7870089321eb482bf8a72 |
|
BLAKE2b-256 | ed8608221987382d98305365bcc26df07479cae8d67584f926d7e48808e6e97c |
Close
Hashes for deflate-0.7.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6039a6bf37fdfcca84acee5f8ddbdb6dca3f009f69e4aeea7400d5f254954719 |
|
MD5 | 0926bdf3b4353ec3ac046c63efdacde3 |
|
BLAKE2b-256 | 761ed4e73626979211c3a86a1b3061119d45eb3e11525c6761b1fde2f56ffc60 |
Close
Hashes for deflate-0.7.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5beb23b987ae21e2561e420a0bc19e99487ca13b0a80098bcf20c95ba37cb4e5 |
|
MD5 | a5ed873c7213cfc10713532659a30e95 |
|
BLAKE2b-256 | 348b8c3da116aa545555ae7a1c7a4ef3c811f6f3abb015bede8c7b629419a972 |
Close
Hashes for deflate-0.7.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3bdcbd45cf531f9c6012e2b5111e8a234fafdc12f5ac95851a2b8a0ec3433f8 |
|
MD5 | f9f12a45f894499b6e966357b9095f28 |
|
BLAKE2b-256 | e127c2a0ef5a54c1eb83d843441ef74f4dc517c070c6dcfa3c18045506cec25c |
Close
Hashes for deflate-0.7.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a521655976e70c893f4c8bd31d40239c2d3317e18395dee048160688b81390f |
|
MD5 | 88e9ce467101e5430fb51493592e2ac5 |
|
BLAKE2b-256 | d242ba045b49b890dc026bacbe696fb6018273fa566b54b93fa02e9cdef6d370 |
Close
Hashes for deflate-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07c68ec5a40f067f743184c9b4af7d77a980d34682ca7ed6603b60f751203536 |
|
MD5 | 30653d9c0b5c512485fe5753cd45a182 |
|
BLAKE2b-256 | 382e8ce6640145d986ef723a22787ca15c4123e6c8648e1093bc6c2dab6844c8 |
Close
Hashes for deflate-0.7.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b630363ca9abd9a611173e14ad0821decf13a6aafbe4e256cdc3dc6d6bacba35 |
|
MD5 | bea62e402f6a3b2eaa30c195764a12af |
|
BLAKE2b-256 | 1d35883cb765320e7b48e9f130a7ec093321363a994f3ea16317d3f774bb13d2 |
Close
Hashes for deflate-0.7.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccc09c18ccc14d4ecee9232d79e51ff139f03fb730677de6441ed56fd029ef34 |
|
MD5 | c16d00b6cbe2097bb9b29900ca0bf0b9 |
|
BLAKE2b-256 | 146eaaec4a4164fb73696bc8dd1cb86c3e3dbad886d838d08984e587d4bb9757 |
Close
Hashes for deflate-0.7.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc3dc3be209fdd795d0457011cc1fb9bbf03d86f9a31777a949bde103f103ce5 |
|
MD5 | de7ac97a995702b8e59a086b221284a2 |
|
BLAKE2b-256 | d4903dd4b1ba876bae55f6357e754e3c800b7cf110ab56dbf35850b938c144c7 |
Close
Hashes for deflate-0.7.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8eacb96f2d81da219b729c5c925c2ed7a980780f5cb356a10d5789ff865fb2b |
|
MD5 | 9faeea94df1f83327a58e3d3b35071a2 |
|
BLAKE2b-256 | 8d2b11423ab1529e7e24ffda9ce0c4cb30b6658ce244097683b364f951bf584a |
Close
Hashes for deflate-0.7.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a8e1a7481fe0935fbf5b9deb3af420d19f0127a010e7345f8345929505974dc |
|
MD5 | 2ab86f6885ee1c70049a928af2ca5692 |
|
BLAKE2b-256 | 1af00b8262e99fbbebf993f8a3d02fa2e1201e5675d5ea8bb74df60dfa99c806 |
Close
Hashes for deflate-0.7.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e35a58f0d3e411611782df8222b184100be12e1ad06b5a379bb14f6cbd9ec21c |
|
MD5 | cab377673f741010e8652614918fa7d9 |
|
BLAKE2b-256 | 30bd9636b7d986650bd27ce285d578b7031e2838f46eab39523a00343ea1c099 |
Close
Hashes for deflate-0.7.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 938465010a0eec0c203df7708fe999db3c99e9c66780cb9f20011bfa28fdc7c1 |
|
MD5 | 1d58c58de8bbf07f17f04d2716e93f7d |
|
BLAKE2b-256 | 648b6785249125b679a089051aba2229cc5282248de344f1d12e57a302cab80f |
Close
Hashes for deflate-0.7.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | db04153dbe7d6a9e516396ec93e699386800316fb27079fe934845d2ab59ec7c |
|
MD5 | a01b8c4f9083fa83b63ffa7c231e86b7 |
|
BLAKE2b-256 | 2dafa7bc614b586eb54afcc239254a529fc7a40b0326d3ece1d2d4af65f54c18 |
Close
Hashes for deflate-0.7.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ac891635fa2ee488dfffed06ae9aa9483e172bda9da6e1a57249ac3af6baa26 |
|
MD5 | c40d2eb71f7b985730963ef1c68e45e7 |
|
BLAKE2b-256 | 7df3ad85108940992a67d509c0cd8717fdef6bf900438997c47b65ece843d947 |
Close
Hashes for deflate-0.7.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58bb3b42b7956da9807e69ce9c1602f5bc0dc881b7196b8ec0efed72b21b2aab |
|
MD5 | 3e0fc9480ee67bd9b4cc8b6791e4d536 |
|
BLAKE2b-256 | c3e93dc39a11871a6b8e78a67872d6d42d095fd102a00516abad882e3100b0b8 |
Close
Hashes for deflate-0.7.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55ffaf644f479fb6976be99d33ef5eeefa471704dde33824a1255b4399a1e584 |
|
MD5 | b91a635fd8413cdf6bc4cc6616880c2a |
|
BLAKE2b-256 | ad3107e2685d40cd34dde2b07621f2a88913003dcabb57e6bb7e13f0ac08255a |
Close
Hashes for deflate-0.7.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecef99839c1e1eff7b3946456e6f9f592eb2347168f7a57cfd1be15e768df291 |
|
MD5 | 6061da616f6af38645c1d4bcee7a37e8 |
|
BLAKE2b-256 | e6517973bd8aa947fe1a5c85806f7c599f685b61875f7536dda5abf22a209d50 |
Close
Hashes for deflate-0.7.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccc8bacdd6297b78fefec141d97a168c37bcc8165df11beecdb525cf08e27327 |
|
MD5 | 0dbbf1511a26ed75cab1f1fb37736efd |
|
BLAKE2b-256 | 26a6333944934de432ff0a8f298d0f0531608ba03ab73548347337055379c218 |
Close
Hashes for deflate-0.7.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8146da0133ceb1d49bd1dc97bbc964ffb2132eaf5fe139af413e726dfd15f97b |
|
MD5 | 86beab3ac847565b4e2cbde409b17252 |
|
BLAKE2b-256 | ecf624e533cd3e5d2e21658562b3e46754de4477f7363693cc36ecece5f5307c |
Close
Hashes for deflate-0.7.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63fd7a1848d3734081e44244ee362ef498c6e21383e4fcfb2141bee8aee485d2 |
|
MD5 | 1445ba97ac9e3c8868ac9b4b8c7ad44d |
|
BLAKE2b-256 | 0839fd53d1eb5bf5e906da7ce85eac5ebdf5a7e29d09e172fe6ff4c45135ef75 |
Close
Hashes for deflate-0.7.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2596d8122d5149fbceac59887f69cab11b61f24459dc3017fb8e0acea1274a73 |
|
MD5 | 8eb7a57b89f844d114a31ba559acc36f |
|
BLAKE2b-256 | baf2bd10f3ce7fc8887189a13ab6aefcf65415645e00e8405827dc4b44f762b5 |
Close
Hashes for deflate-0.7.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bb07dd8af09b6207f206ce6faa95b1976390618e607c35ac18f1cd15109e085 |
|
MD5 | 1ed7c1bdfa3f111db48ee6a125d1bd4f |
|
BLAKE2b-256 | 748b3257d2fdc44d40fbdc349b1e00137fdf45bbbf2a39ab735f59c3c586cc32 |
Close
Hashes for deflate-0.7.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5cd6c9e67fe267c4a22038395fd57ef84440d601c7b173404eaceef740b5f23 |
|
MD5 | fbfca6a307701c0e4fe52662f5f47d53 |
|
BLAKE2b-256 | 0b2976c7d85a44c706e3243f2f85c187813a04a55c132396a890e73c0d6a4d04 |
Close
Hashes for deflate-0.7.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 302fad4c1167e471e597c7bed181fcf543a89871e9efe1360c946080d0cba969 |
|
MD5 | b7106c45e5792e1a7c6e0c0657f1d8e1 |
|
BLAKE2b-256 | ec1c44cda8c47ec9c8503908ef5d9043ddcdc5281e7bb301e75169a17ecb7b0c |