Python wrapper for libdeflate.
Project description
deflate API
This is a very thin Python wrapper Eric Biggers' excellent libdeflate.
Currently, it only 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 data
The size of the decompressed file needs to be kept through additional logic. Ditto for checksums.
import deflate
level = 6 # The default; may be 1-12 for libdeflate.
data = b"hello world!" * 1000
compressed = deflate.deflate_compress(data, level)
original = deflate.deflate_decompress(compressed, len(data))
crc32 computation
import deflate
crc32 = deflate.crc32(b"hello world! ") # initial
crc32 = deflate.crc32(b"hello universe!", crc32) # continued
adler32 computation
import deflate
adler32 = deflate.adler32(b"hello world! ") # initial
adler32 = deflate.adler32(b"hello universe!", adler32) # continued
Installation
Installing deflate
will either link to or compile libdeflate
, depending on the
following:
- If a
LIBDEFLATE_PREFIX
environment variable is set, it will always be used to look for a system-installedlibdeflate
. - If the
pkgconfig
package is installed, it will be used to automatically find (and link to) a system-installedlibdeflate
if available. - Falls back to compiling the bundled libdeflate code. This behavior can be triggered
manually by setting
USE_BUNDLED_DEFLATE=1
.
export USE_BUNDLED_DEFLATE=no # default is no
export LIBDEFLATE_PREFIX=/path/to/lib/deflate # default: no path given
pip install pkgconfig # optional, you also need pkg-config cli tool
pip install deflate
Testing
pip install pytest
pip install pytest-benchmark
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.5.0.tar.gz
(197.2 kB
view hashes)
Built Distributions
deflate-0.5.0-cp39-cp39-win32.whl
(41.1 kB
view hashes)
deflate-0.5.0-cp38-cp38-win32.whl
(41.1 kB
view hashes)
Close
Hashes for deflate-0.5.0-cp312-cp312-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9ec14b18fece3cacf0e21b7c7bf7a9e4c35c9156bb397bcb22538b72bf0dc9fb |
|
MD5 | 913f47809c94137e1e6a0278848785dc |
|
BLAKE2b-256 | 53cd034d1ddf54d22934c09c9f9c67f0f801b6a6a36a9335cbf5c6c5c23fcdcd |
Close
Hashes for deflate-0.5.0-cp312-cp312-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2ab60bc2567c4782e4e1ba672eb80559dbd1e4a609e083aae4b394e2e900f4d |
|
MD5 | bf921c02cdd53f46a0e3ffa211cbc99b |
|
BLAKE2b-256 | f4594a7d825c109d13baa5acd0448e7fadc525887d0f0a9f4a77d7bf1d1c4110 |
Close
Hashes for deflate-0.5.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17843f15f17a688d54aea02016a3afbb5a636cf0381f68cfc80e3ee772502cb4 |
|
MD5 | f9f5bae640021890b8aa1aeb431d95f7 |
|
BLAKE2b-256 | 533a802c44222064ffe14df3f20ae4d4e20c27206534e83d0d1c0f2c5b70fecc |
Close
Hashes for deflate-0.5.0-cp312-cp312-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23bcd56fd874093b5c7c2bccba5f7b789b3b320f69f7d48e20c7d3e073964524 |
|
MD5 | 63436cb56482dbe9ac310acccb684aea |
|
BLAKE2b-256 | bb95cda809eac19e4bba36e2ff5d1a6fea6343b01ebb02c6fb66e94f9bda4ce6 |
Close
Hashes for deflate-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b49dc4a769ddcc8192af8b5ac868c6406a0fc96bf8daad834fcc1e9ec37d6f85 |
|
MD5 | 21ef8c1ae25ba6f2ff536fe74b5d9eea |
|
BLAKE2b-256 | 2474bcf9e6ccdb8466c8f2edc79908c2690f2742f018279a08804037ce64669b |
Close
Hashes for deflate-0.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2994523a98034e967c9c1d300ddc2071a61ec82751a0b1408c8d1686d97273b |
|
MD5 | 63fc9d2d220019b2285a7fab0d75a0e0 |
|
BLAKE2b-256 | b9242927023a76b0afdae89b1a97e60841a5e50025b09d1c5dac019567584cea |
Close
Hashes for deflate-0.5.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3a1867b3e3e08686f62412b12ad9ead61ea59a78c5311e23aa34bbc1a321fb9 |
|
MD5 | 8b4a33d1826fcd7955e25385c410b4b9 |
|
BLAKE2b-256 | 719abc51c16e77ec7b87dc8a2195e16ef0de6299deaef76cbb2a93c7d9dcff2f |
Close
Hashes for deflate-0.5.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1da756182ed4605e6430851ed00e24d5c4adf5b8db8d8ed2a08ae599a091afcd |
|
MD5 | d3c12e16c407445bd9825e1e862bf0d0 |
|
BLAKE2b-256 | 8b3e790b68e5e00d3824ffe3975d00e6c8d90821be3f32564b4bd82e1843d6a0 |
Close
Hashes for deflate-0.5.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7783097bfdae8bec340280c281e1b24ea6b4d8d6c3bc3b96d21631430fed729f |
|
MD5 | 5ca5321cc9358a016ce04a0e8270968a |
|
BLAKE2b-256 | 973b5b61dcb3d9766911e6a87cb553c55a31a6aba5912958debb22aecf99f692 |
Close
Hashes for deflate-0.5.0-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a33074c8fb0e5875763f9d3ac45c159153c84cc742476becea1e6ca421d97e1 |
|
MD5 | 09944555c5f66482bf863933cee947a0 |
|
BLAKE2b-256 | e41cac96881d5d88a15589b9b9e2ff45f1c50ed0f8926504df2ed716a4a28284 |
Close
Hashes for deflate-0.5.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d317c49e45cde230e9245d308a4af0fff1068d0388bf4714102460418aaf5ff7 |
|
MD5 | d797d7c881c201e27b73eaa864db9f78 |
|
BLAKE2b-256 | 3513efa60ec196de25e5f432766791a44b18f05e6c5ba7417bff812182536acb |
Close
Hashes for deflate-0.5.0-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d41ab4e23089dd0c17a518830158e3217512ed430ae21a7a7b13fb387f54777 |
|
MD5 | 0596f490da72d9cb67cb25b3950b7adc |
|
BLAKE2b-256 | 0048c4ae584158f69ab5fa5f192ce3289c4fa1625ae0592acd7114e83bf80da0 |
Close
Hashes for deflate-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9058222e5eb8e71021d18d222c119431ede6918a8159b2c8df075efca1deb6a9 |
|
MD5 | 45202f2ec2b1659fea390b134a0e488b |
|
BLAKE2b-256 | 575cb8fe947d7bad8264f93bb4aa3bbf14247a3e023bbcbaba3635ad683cac7c |
Close
Hashes for deflate-0.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b7c66fe2a12f45239e67b64b560118b075badc27a47a28c6425a22a71bfdfd8 |
|
MD5 | 6994bc614c3ddbc8e6516de8c6155d84 |
|
BLAKE2b-256 | de6ed6ebd3b8e3624e3b9bf56cba57bf82f639c25acc5640e51a2b9d60029d61 |
Close
Hashes for deflate-0.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc3f49380d7acf196ea91d68e1358dd2cadf938ce1bc2f489f8d79c28db532cc |
|
MD5 | aa7b18c50f62faa765c76b40450314ad |
|
BLAKE2b-256 | 40226c3da0588fc2b92c639b46f8ac9d32f6a3d3233a4fba7ed15a1f558e9be7 |
Close
Hashes for deflate-0.5.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca55785e5d3c4e145c82a296d8ff288c367fd809952b846d255c72134ae51d8e |
|
MD5 | 15a1ec457bb66b0eeb95bd430dd360d8 |
|
BLAKE2b-256 | d8b95f1161252e9dd1407bf0e1dd478b2c3d217495c7a49fab14072f621911c1 |
Close
Hashes for deflate-0.5.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5cb4f21bc8242e7f37aab9590d3caa4ae6dbdd3746480653c63bf04cf70beac6 |
|
MD5 | 0831aa432d2c326b476840cca3e2f3dd |
|
BLAKE2b-256 | ea037dfe7eb2b9cba8a74fbbb0797db7bc52cadc75b30523770118a5456a79ac |
Close
Hashes for deflate-0.5.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6f7d7d4c66e48008843d97c3eb5838e9e2b3af16009c626b8629ea556a90c3e |
|
MD5 | c7ad78c12ba5710444b3ae341f6b60c8 |
|
BLAKE2b-256 | af47c39fa25007ad506ca512082c2056657d33015cbd6749a76bb58d79bb0b65 |
Close
Hashes for deflate-0.5.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d032214e45d7ca43b6ff222c13f4bf81e56156df8489f3a39aee41de3a2fdeb2 |
|
MD5 | f0965f26d538f158cfe5036fb01ab6be |
|
BLAKE2b-256 | 1648ab35ec83ca738fa84351d54b10012f95d9f29339ba781ab12e1cf29f4934 |
Close
Hashes for deflate-0.5.0-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d18deb9640b93f731ad681bfb2165d5e193910b3c33a0652ae45af677ee2c9b6 |
|
MD5 | 972fec0a4f61399ae3c077e95f0774e5 |
|
BLAKE2b-256 | 241ecb36b9b63c34585227d4b5ddca6a84627367ee85c8349821c0499e5a48c6 |
Close
Hashes for deflate-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bee213f46e9f177289501e3b284399efe4da431f03ffb195fc9835cf0d1dba9 |
|
MD5 | f864950122b9454d218aa33c7086e397 |
|
BLAKE2b-256 | ece81f4caedaa13c9d84c2a6a918dbe6d0f562feefbe84cdbae4b06111530584 |
Close
Hashes for deflate-0.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5a7bf29d43f8dced0bf336931ad51d5fbdf332d886dec392ea7ce1a30fc7b24 |
|
MD5 | 90ca3ed32000feaa7cc9e566cee2325d |
|
BLAKE2b-256 | fda51590924a43887a5a07bfae51c4976d082070238e291767c8b2f557864b07 |
Close
Hashes for deflate-0.5.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 19422c1bb3ec46bb90236119bea0a73ad4fc0b9ab714be9bc81b3520abc5103e |
|
MD5 | f006c687626136cccbb40031861bcc48 |
|
BLAKE2b-256 | 5d43d370cc3e7229e9e9932b9476366ef43de7d450ce844e86b689a3e55a519f |
Close
Hashes for deflate-0.5.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a793a805efd8e8657b50a122f92b17703888aef14254d21c2e68984b20d83676 |
|
MD5 | 20253e2a537a59a7c5ab060ddc499bdd |
|
BLAKE2b-256 | 07ef8f8300a01685fce308ed6673082d0aff59b9c35753a235b7b82f182f364e |
Close
Hashes for deflate-0.5.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba655a12ab7026c90bb417456ec44fd30807e2981f0e5c69a9f8ffc399b8819f |
|
MD5 | 3f1223380c1cefa32e29c91902e6c6e0 |
|
BLAKE2b-256 | 21d6ff9ecf1efbd9d39441137b7530e6158926f2b9f2b5d6d1e90d77ba3c8ca8 |
Close
Hashes for deflate-0.5.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d65aa6e8b6b869f50389ea16c1094bbc64279b3d37ac3c3103a8fb9adae64f1 |
|
MD5 | 2f5d641454b1f6ac941b838c66fec5e9 |
|
BLAKE2b-256 | dc6a9a89d54df0b7ee4a6382a9c635b1b8923784e51756f881523901c14b4d1e |
Close
Hashes for deflate-0.5.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 07ed63018a811605859f10c87f3a67e7692080b541314e057828b433fc89a8d4 |
|
MD5 | f415da32c689499d188789463299cd9e |
|
BLAKE2b-256 | f9fe636edc0a8a34e3a3181a22f426513b3aee199b6a31aec247ca98f88df421 |
Close
Hashes for deflate-0.5.0-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25795dc22891d2e4b4eddc621dd78c6397269e6ff0c20ee9df30f65e7d323782 |
|
MD5 | 938579df68c56cdf7947189a5e2b4f58 |
|
BLAKE2b-256 | b22dc36ce2d2c850274371ef55460cf6917764e49b4112151144b56ef834ffd0 |
Close
Hashes for deflate-0.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7c91369e791edfec18b748fbd40e5dc78c631588adcb474fa6bbd4bcff86171 |
|
MD5 | b35c5d4af32ed430c76a6c6f68441040 |
|
BLAKE2b-256 | e3c1b1bf0f2bbbc62b86f98d503cb70a080e96f4145add01068b8c7a235799a2 |
Close
Hashes for deflate-0.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a83f474c11731c9eca0a94dd4ff1189bd9680889c34b4077134ce68c849e59b8 |
|
MD5 | 3c5ef0d276b86f0dcb228b294d6ee25d |
|
BLAKE2b-256 | 2d467b9d43854fbc7af2e3f49543d00f3e4cd6240a0e0e7cc6dbea1de4da0fc4 |
Close
Hashes for deflate-0.5.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3752201783ca0cfa97ac204f4bcbe088d4746c4750b35c5a3a62138fa8a5acea |
|
MD5 | dfbea3c675222394dddb3af518e75bda |
|
BLAKE2b-256 | 8492409037d3836485de561f8935329068e0fd6f556fd07c6f6c5239e7a90319 |
Close
Hashes for deflate-0.5.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f10d71856470c85377e77f45bf918bf96077d32023d7eda4f91c244e330a7393 |
|
MD5 | 9ceb37b3f1fb0499965d81b8e714eb17 |
|
BLAKE2b-256 | 38a1d656f10a7ae72128d795c12d88cd6b8a80416d2ecdecf4d3ff761b6cca72 |
Close
Hashes for deflate-0.5.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab34c6100f1326e24697fe39abecafde2a7c41aaadcc4d475025315f5bfa39a1 |
|
MD5 | 6df8e501ddc074cebba341e15c03400c |
|
BLAKE2b-256 | 44bc7fba8de3d493c54e552a439413a5e960ab8f659836c686c440aee5520ce6 |
Close
Hashes for deflate-0.5.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f872697c3a3b1ecf7952996173cf3963272ba00ab5449e8056d83110bc4a2751 |
|
MD5 | a094d90290eaaaf5690da366aeb9fdb3 |
|
BLAKE2b-256 | ba20fac9c4bd24083a173944fc0b89ca5abe748ef68ff1214a366e7189f29395 |
Close
Hashes for deflate-0.5.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b21981beefc7434c85d00b70cae9b6f7ea2097ca48e64a116779d06e182d418a |
|
MD5 | f8afc0df848ad257163bd2ad391b4c1d |
|
BLAKE2b-256 | 5d4c586f16b199c1feef6c71f79054aaba45897ba64c9c6365342b6c3091e2e4 |
Close
Hashes for deflate-0.5.0-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d9826db1b4b71811dc5446b24dd39b897e5cc4d5b09fb718dc4a7a8734621fb |
|
MD5 | ff40f5bbd7f8069368484a75e27dcdfa |
|
BLAKE2b-256 | 38b0eaae80543650e269d24d3c8607c8d2af2d95d981e2ae22b6245d7cc151c8 |
Close
Hashes for deflate-0.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2f687f64f837c78e4cdd45b85b8975d501234488926000a5055cb0e4d4df794 |
|
MD5 | dc2fe356ef10dc09c910269f48dd0d41 |
|
BLAKE2b-256 | 4654f8704b7364167f597ad670fc93495ef29f89c4c000c69f26a5d9af329777 |
Close
Hashes for deflate-0.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54dabf8c1497dc9bf3b90119c13576c0b769c6bbd52f4b9893cfe79dc95bcfb3 |
|
MD5 | a2fc0aa6b21eeb58b3ebf1d555fe2839 |
|
BLAKE2b-256 | 46173f8833c61858e208ee817084d836050f0abcb6616e5569769ac4c6020d7b |
Close
Hashes for deflate-0.5.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3ae92906f6b815ef730623af457daf8f3bf1013657a4445563bf2efa9d6b73f |
|
MD5 | 4b7fa985e1eea190852b81a609808827 |
|
BLAKE2b-256 | 57c957cc8494e6e3a271897efad8ce1cf6d8e1d60ac1aacc7fa827316f88e442 |
Close
Hashes for deflate-0.5.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25b8f048aab884076a394c4904e1c4e5b7695077ef380908dc147eaae7bcf046 |
|
MD5 | b7210e7b28fd2633dd36ec844f42889e |
|
BLAKE2b-256 | bb66078600d9acd33dc5051c3cb787370e56adff353b79294ffccef7f65f7ce1 |