xpress9
Python bindings for the Xpress9 compression library
What it is and what it does
Xpress9 is a lightweight Python wrapper around Microsoft's Xpress9 compression algorithm, exposing compress and decompress methods through a C extension built with Cython. It targets scenarios where you need efficient binary compression with cross-platform support and optional multi-threading via OpenMP.
The package is designed for developers who need a direct interface to Xpress9 compression without external dependencies beyond the C compiler at build time. It supports Python 3.8 and higher across Windows, macOS, and Linux. Prebuilt wheels are available for common Python versions and architectures, though building from source requires a C compiler and standard build tools.
Use it for:
- Compress repetitive or highly compressible binary data in Python applications where Xpress9 is the preferred algorithm.
- Integrate Xpress9 compression into data pipelines or storage systems that need cross-platform compatibility.
- Decompress Xpress9-encoded data received from external systems or APIs.
- Build performance-sensitive applications where optional OpenMP multi-threading can improve throughput on multi-core systems.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Xpress9 is a Python wrapper for Microsoft's Xpress9 compression library, providing efficient compression and decompression of binary data through a C extension with Cython bindings.
Yes, if you specifically need Xpress9 compression and accept the aging maintenance status. The package is stable for its current scope (Beta), has no known vulnerabilities, and offers permissive licensing. However, the limited community adoption (5 stars, 257 days since last release) and aging status suggest it may not receive timely updates or bug fixes. Install if Xpress9 is a hard requirement; consider alternatives if you need active maintenance and community support.
Install
xpress9 on PyPI
pip
pip install xpress9uv
uv add xpress9poetry
poetry add xpress9Installing xpress9
Before you install
Medium install friction due to compiled C extension requiring a C compiler and build tools. The package has broad wheel coverage for Python 3.8–3.13 on Windows, macOS, and Linux, reducing friction for standard platforms. Maintenance status is aging—last release was 257 days ago and the repository has only 5 stars, suggesting limited active development and community adoption.
License in practice
MIT license is permissive, allowing commercial and private use with minimal restrictions. You may use, modify, and distribute the package freely provided you include the original license notice.
Quickstart
from xpress9 import Xpress9
x = Xpress9()
original_data = b"Hello, world! " * 64
compressed_data = x.compress(original_data, len(original_data))
decompressed_data = x.decompress(compressed_data, len(original_data))
Requires a C compiler (gcc, clang, or MSVC) and build tools to install from source; prebuilt wheels available for Python 3.8–3.13 on common platforms reduce this requirement.
Verify before relying
- Whether OpenMP is automatically enabled on Linux/Windows or requires manual configuration.
- Real-world compression ratios and performance benchmarks compared to other compression libraries.
- Stability and production-readiness of the Beta-status implementation.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | aging — 257 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 249,302/month — #8,651 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: xpress9-0.3.8-cp310-cp310-macosx_11_0_universal2.whl; xpress9-0.3.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; xpress9-0.3.8-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl; xpress9-0.3.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; xpress9-0.3.8-cp310-cp310-win_amd64.whl; xpress9-0.3.8-cp311-cp311-macosx_11_0_universal2.whl; xpress9-0.3.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; xpress9-0.3.8-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl; xpress9-0.3.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; xpress9-0.3.8-cp311-cp311-win_amd64.whl; xpress9-0.3.8-cp312-cp312-macosx_11_0_universal2.whl; xpress9-0.3.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; xpress9-0.3.8-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl; xpress9-0.3.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; xpress9-0.3.8-cp312-cp312-win_amd64.whl; xpress9-0.3.8-cp313-cp313-macosx_11_0_universal2.whl; xpress9-0.3.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; xpress9-0.3.8-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl; xpress9-0.3.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; xpress9-0.3.8-cp313-cp313-win_amd64.whl
Keywords: compression, xpress9, microsoft
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
xpress8xpress8 provides Python bindings to Microsoft's…
permissive · top 15,000 on PyPI
ncompressProvides LZW compression and decompression…
permissive · top 15,000 on PyPI
python-neo-lzfProvides fast compression and decompression of…
permissive · top 15,000 on PyPI
python-lzfProvides Python bindings to the liblzf…
permissive · top 15,000 on PyPI
lzallrightlzallright provides Python bindings to compress…
permissive · top 15,000 on PyPI
lzstringCompresses and decompresses text using the…
permissive · top 15,000 on PyPI
compressed-rtfCompresses and decompresses Rich Text Format…
permissive · top 5,000 on PyPI
unlzw3Decompresses .Z files (Unix compress format)…
permissive · top 15,000 on PyPI
lzfsePython bindings for the LZFSE reference…
permissive · top 5,000 on PyPI
stream-inflateDecompresses DEFLATE and DEFLATE64 streams in…
permissive · top 5,000 on PyPI