Skip to main content

Python bindings to Zstandard (zstd) compression library, the API is similar to Python's bz2/lzma/zlib module.

Project description

Introduction

pyzstd module provides classes and functions for compressing and decompressing data, using Facebook’s Zstandard (or zstd as short name) algorithm.

The API is similar to Python’s bz2/lzma/zlib module.

Includes zstd v1.4.9 source code, can also dynamically link to zstd library provided by system, and has a CFFI implementation that can work with PyPy, see this note for details.

Release note

0.14.4 (Mar 24, 2021)

  1. Add a CFFI implementation that can work with PyPy.

  2. Allow dynamically link to zstd library.

0.14.3 (Mar 4, 2021)

Update zstd source code from v1.4.8 to v1.4.9.

0.14.2 (Feb 24, 2021)

  1. Add two convenient functions: compress_stream(), decompress_stream().

  2. Some improvements.

0.14.1 (Dec 19, 2020)

  1. Update zstd source code from v1.4.5 to v1.4.8.

    • v1.4.6 is a non-public release for Linux kernel.

    • v1.4.8 is a hotfix for v1.4.7.

  2. Some improvements, no API changes.

0.13.0 (Nov 7, 2020)

  1. ZstdDecompressor class: now it has the same API and behavior as BZ2Decompressor / LZMADecompressor classes in Python standard library, it stops after a frame is decompressed.

  2. Add an EndlessZstdDecompressor class, it accepts multiple concatenated frames. It is renamed from previous ZstdDecompressor class, but .at_frame_edge is True when both input and output streams are at a frame edge.

  3. Rename zstd_open() function to open(), consistent with Python standard library.

  4. decompress() function:

    • ~9% faster when: there is one frame, and the decompressed size was recorded in frame header.

    • raises ZstdError when input or output data is not at a frame edge. Previously, it only raise for output data is not at a frame edge.

0.12.5 (Oct 12, 2020)

No longer use Argument Clinic, now supports Python 3.5+, previously 3.7+.

0.12.4 (Oct 7, 2020)

It seems the API is stable.

0.2.4 (Sep 2, 2020)

The first version upload to PyPI.

Includes zstd v1.4.5 source code.

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

pyzstd-0.14.4.tar.gz (659.7 kB view hashes)

Uploaded Source

Built Distributions

pyzstd-0.14.4-pp37-pypy37_pp73-win32.whl (182.2 kB view hashes)

Uploaded PyPy Windows x86

pyzstd-0.14.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl (405.1 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

pyzstd-0.14.4-pp36-pypy36_pp73-win32.whl (182.2 kB view hashes)

Uploaded PyPy Windows x86

pyzstd-0.14.4-pp36-pypy36_pp73-macosx_10_9_x86_64.whl (405.1 kB view hashes)

Uploaded PyPy macOS 10.9+ x86-64

pyzstd-0.14.4-cp39-cp39-win_amd64.whl (207.6 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

pyzstd-0.14.4-cp39-cp39-win32.whl (184.4 kB view hashes)

Uploaded CPython 3.9 Windows x86

pyzstd-0.14.4-cp39-cp39-manylinux2014_x86_64.whl (2.2 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-manylinux2014_s390x.whl (2.1 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-manylinux2014_ppc64le.whl (2.0 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-manylinux2014_aarch64.whl (2.0 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-manylinux1_x86_64.whl (2.0 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-manylinux1_i686.whl (2.0 MB view hashes)

Uploaded CPython 3.9

pyzstd-0.14.4-cp39-cp39-macosx_11_0_arm64.whl (344.5 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pyzstd-0.14.4-cp39-cp39-macosx_10_9_x86_64.whl (431.5 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

pyzstd-0.14.4-cp38-cp38-win_amd64.whl (207.4 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

pyzstd-0.14.4-cp38-cp38-win32.whl (184.1 kB view hashes)

Uploaded CPython 3.8 Windows x86

pyzstd-0.14.4-cp38-cp38-manylinux2014_x86_64.whl (2.2 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-manylinux2014_s390x.whl (2.1 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-manylinux2014_ppc64le.whl (2.0 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-manylinux2014_aarch64.whl (2.0 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-manylinux1_x86_64.whl (2.0 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-manylinux1_i686.whl (2.0 MB view hashes)

Uploaded CPython 3.8

pyzstd-0.14.4-cp38-cp38-macosx_10_9_x86_64.whl (432.8 kB view hashes)

Uploaded CPython 3.8 macOS 10.9+ x86-64

pyzstd-0.14.4-cp37-cp37m-win_amd64.whl (207.4 kB view hashes)

Uploaded CPython 3.7m Windows x86-64

pyzstd-0.14.4-cp37-cp37m-win32.whl (183.6 kB view hashes)

Uploaded CPython 3.7m Windows x86

pyzstd-0.14.4-cp37-cp37m-manylinux2014_x86_64.whl (2.2 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-manylinux2014_s390x.whl (2.1 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-manylinux2014_ppc64le.whl (2.0 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-manylinux2014_aarch64.whl (2.0 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-manylinux1_x86_64.whl (2.0 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-manylinux1_i686.whl (2.0 MB view hashes)

Uploaded CPython 3.7m

pyzstd-0.14.4-cp37-cp37m-macosx_10_9_x86_64.whl (432.5 kB view hashes)

Uploaded CPython 3.7m macOS 10.9+ x86-64

pyzstd-0.14.4-cp36-cp36m-win_amd64.whl (207.4 kB view hashes)

Uploaded CPython 3.6m Windows x86-64

pyzstd-0.14.4-cp36-cp36m-win32.whl (183.6 kB view hashes)

Uploaded CPython 3.6m Windows x86

pyzstd-0.14.4-cp36-cp36m-manylinux2014_x86_64.whl (2.2 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-manylinux2014_s390x.whl (2.1 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-manylinux2014_ppc64le.whl (2.0 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-manylinux2014_aarch64.whl (2.0 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-manylinux1_x86_64.whl (2.0 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-manylinux1_i686.whl (2.0 MB view hashes)

Uploaded CPython 3.6m

pyzstd-0.14.4-cp36-cp36m-macosx_10_9_x86_64.whl (432.5 kB view hashes)

Uploaded CPython 3.6m macOS 10.9+ x86-64

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