Skip to main content

docs

Documentation Status

tests

GitHub Actions Status
Coverage Status

package

PyPI Package latest release PyPI Wheel
Supported versions
Supported implementations

A tiny library for tiny binary compression.

  • Free software: BSD 2-Clause License

Overview

TinyCompress is a lightweight Python library that provides efficient data compression algorithms with a focus on simplicity and ease of use.

The library implements multiple compression methods:

  • LZSSW (Lempel-Ziv-Storer-Szymanski via Words): An efficient variant of LZ77 compression algorithm that uses a sliding window approach for finding repeated data patterns.

  • RLEB (Run-Length Encoding for Bytes): A specialized compression algorithm that combines run-length encoding with bit flags, particularly effective for data with repeated byte sequences.

Key features:

  • Pure Python implementation for maximum portability

  • Streaming interface for processing large files with minimal memory usage

  • File handling utilities for direct compression/decompression of files

  • Extensible base classes for implementing custom compression algorithms

  • Comprehensive test suite with high code coverage

  • BSD 2-Clause licensed for both commercial and open-source use

Documentation

For the full documentation, please refer to:

https://tinycompress.readthedocs.io/en/latest/

Installation

From PyPI (might not be the latest version found on github):

$ pip install tinycompress

From the source code root directory:

$ pip install .

Development

To run the all the tests:

$ pip install tox
$ tox

Metadata

Release files for tinycompress 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tinycompress 0.1.2
File Size Uploaded
tinycompress-0.1.2.tar.gz 145.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tinycompress 0.1.2
File Interpreter ABI Platform
tinycompress-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 168.2 kB

Release files / tinycompress-0.1.2.tar.gz

Download URL tinycompress-0.1.2.tar.gz
Size 145.3 kB
Tags Source
SHA-256 checksum
How to use checksums
abf8a2fa785bc3b70daf0b8fb3b7a1cd216969f7435eaf8624dff5aa7df660da
BLAKE2b-256 checksum
How to use checksums
0b672c103951b02a4c73e8bef2c97c209c6ecf6b0025ff0524e01cfb7dc7601d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / tinycompress-0.1.2-py3-none-any.whl

Download URL tinycompress-0.1.2-py3-none-any.whl
Size 23.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
846170519d77cac75dcae1ff8376f1df228278c901fd6f1d7d05990b5e7f29c6
BLAKE2b-256 checksum
How to use checksums
bd0f46e8047650e3816f483feefc9e3184ee2f776d62071eeb1c537734a3d253
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page