Skip to main content

xmhuffman

PyPI version License: MIT

A small, fast Cython extension that decodes the canonical-Huffman string dictionary pages used by xVelocity / Vertipaq column stores — the storage format inside Power BI .pbix files (the DataModel part) and Excel Power Pivot workbooks (xl/model/item.data).

Provides a tight C kernel for what would otherwise be a per-symbol Python loop. On real .pbix files this is 30–50× faster than an equivalent pure-Python implementation and removes a hot path that dominates table extraction time in tools like pbixray.

Installation

pip install xmhuffman

Building from source requires a C compiler and Cython ≥ 3.0:

git clone https://github.com/Hugoberry/xmhuffman-cython
cd xmhuffman-cython
pip install -e .

Usage

The library exposes a tiny surface — one entry point for the common case plus a few lower-level helpers.

Decode a dictionary page

import xmhuffman

# All inputs come straight from the Vertipaq dictionary page metadata:
#   bitstream  — compressed_string_buffer (bytes)
#   encode_array_128 — 128-byte nibble-packed code-length array
#   offsets    — per-string start bit offsets (sequence of u32)
#   total_bits — store_total_bits (end of last string)
strings: list[bytes] = xmhuffman.decode_page(
    bitstream,
    encode_array_128,
    offsets,
    total_bits,
    swap=True,            # apply the byte-pair swap inside the extension
)

Output is list[bytes]. Charset interpretation is the caller's choice (see Character-set modes below): Vertipaq pages declare themselves as either single character set or multiple character set, and the caller decodes the returned bytes accordingly.

Single-charset pages with non-zero CharacterSetUsed

When a single-charset page carries a non-zero CharacterSetUsed byte, the spec requires reinserting that byte as the UTF-16-LE high byte of every decoded character before the byte stream is meaningful as text. xmhuffman can perform that interleave inside the extension:

# charset_mode='single' + charset_byte != 0 returns interleaved bytes,
# each output element being 2 * decoded_length bytes long, ready for
# direct `bytes.decode('utf-16-le')` by the caller.
strings = xmhuffman.decode_page(
    bitstream, encode_array_128, offsets, total_bits,
    swap=True,
    charset_mode='single',
    charset_byte=character_set_used,
)
text = [b.decode('utf-16-le') for b in strings]

For pages with CharacterSetUsed == 0, the default decode_page(...) call is sufficient — b.decode('latin-1') on its output is byte-for-byte equivalent to the interleave path and several times faster, so callers should branch on CharacterSetUsed:

if character_set_used == 0:
    strings = xmhuffman.decode_page(bitstream, encode_array_128,
                                    offsets, total_bits)
    text = [b.decode('latin-1') for b in strings]
else:
    strings = xmhuffman.decode_page(bitstream, encode_array_128,
                                    offsets, total_bits,
                                    charset_mode='single',
                                    charset_byte=character_set_used)
    text = [b.decode('utf-16-le') for b in strings]

For multiple character set pages the raw decoded byte stream is already UTF-16-LE; b[:len(b) & ~1].decode('utf-16-le') is the canonical caller-side path.

Lower-level building blocks

For callers that want to amortize table construction across pages, or just to unit-test pieces:

# Expand the 128-byte nibble-packed array to 256 plain bytes of lengths.
lengths = xmhuffman.decompress_encode_array(encode_array_128)

# Pair-swap a buffer (bytes 2k and 2k+1 swap; trailing odd byte left as-is).
swapped = xmhuffman.swap_bytes(raw)

# Build the flat decode table once, reuse it across decode calls.
table_bytes, max_len = xmhuffman.build_table(encode_array_128)
strings = xmhuffman.decode_with_table(
    bitstream, table_bytes, max_len, offsets, total_bits, swap=True,
)

Format notes

The on-disk format is documented publicly in Microsoft's open specification [MS-XLDM] §2.7.4 — Huffman Compression. Each dictionary page is, schematically:

Field Description
encode_array 128 bytes, two 4-bit code lengths per byte (low nibble = symbol 2i, high = 2i+1). Value 0 means "symbol unused". Per [MS-XLDM] codeword lengths are between 2 and 15 bits.
uiDecodeBits Width of the on-disk primary lookup table (≤ 12). This decoder uses a single flat 2^max_len table instead and ignores uiDecodeBits.
compressed_string_buffer The bitstream itself, with adjacent bytes pair-swapped on disk. No padding between strings.
store_total_bits Total logical bit length; end sentinel for the last string.
vector_of_record_handle_structures Per-record (bit_offset, page_id); sorted offsets per page give the per-string start boundaries.

Codes are classical Huffman, encoded canonically by sorting (length, symbol) ascending and incrementing the code with a left-shift on length changes — exactly the reconstruction described in [MS-XLDM] §2.7.4.1.5.

Character-set modes

[MS-XLDM] §2.7.4.1.4 distinguishes two modes per page:

  • Single character set (character_set_type_identifier = 0x000aba91) — only the low byte of each character is Huffman-encoded; the upper (charset) byte is stored once on the page as CharacterSetUsed and must be reinserted to recover the original 2-byte character stream. Pass charset_mode='single', charset_byte=CharacterSetUsed to decode_page / decode_with_table to have the extension perform that reinsertion. When CharacterSetUsed == 0 you can skip the kwargs and feed the raw bytes output straight to b.decode('latin-1') for the same result at lower cost.
  • Multiple character sets (0x000aba92) — both bytes are encoded; the output byte stream is consumed directly as UTF-16LE.

Reinsertion order is the one the reference encoder/decoder uses: each emitted byte becomes the UTF-16-LE low byte and CharacterSetUsed becomes the high byte, so output element k is exactly bytes([symbol, CharacterSetUsed]) * nwritten.

Performance

Apples-to-apples against an equivalent pure-Python decoder on a few real .pbix files:

File Strings Python ref xmhuffman Speedup
Adventure Works DW 2020 191,489 449 ms 10.0 ms 45×
Sales & Marketing sample 103,290 160 ms 5.3 ms 30×
Retail Analysis sample 9 144 ms 2.9 ms 50×

The kernel does one unaligned 64-bit big-endian load, one shift, one mask, one table lookup and one byte store per output symbol. The decode table is a flat 2^max_len array of uint16_t (≤ 64 KB; usually 1–8 KB) that fits comfortably in L1/L2.

Parallel scaling

decode_page and decode_with_table are designed to run inside a concurrent.futures.ThreadPoolExecutor with no special setup. The entire per-page work — bit-stream walk plus charset reinsertion when requested — happens inside a single with nogil: block. Python objects (the list[bytes] result) are constructed only after the kernel returns, in one tight pass under the GIL.

The practical effect on a 2,703-page workload (meta.pbix, 7.1M strings) on an 8-core M-class machine:

Workers Wall clock Speedup vs. n=1
1 10.85 s 1.00×
2 6.19 s 1.75×
4 3.92 s 2.77×
8 2.60 s 4.17×

Scaling is monotonic up to physical-core count; the function does not fight the GIL on per-string allocation.

Project layout

xmhuffman-cython/
├── xmhuffman.pyx         # Cython surface
├── xmhuffman.pxd         # C declarations
├── src/xmhuffman_kernel.c    # C kernel
├── include/xmhuffman_kernel.h
├── tests/                # correctness tests
└── bench/                # micro-benchmark

Testing

pip install -e .
pip install pytest
pytest tests/ -v

The basic test suite checks each helper against a pure-Python reference implementation. An additional integration test (tests/test_pbix.py) decodes pages out of real .pbix files and asserts byte-identity with the reference; it is skipped automatically when fixtures aren't available.

Scope and non-goals

  • Not a general-purpose Huffman library. Alphabets are fixed at 256 symbols, codeword lengths are capped at 15 bits, and the bitstream convention is the one used by Vertipaq pages.
  • Not an encoder. Round-tripping pages is out of scope.
  • No Python-string outputs. The decoder returns raw bytes; the caller picks between latin-1 and paired UTF-16-LE based on the page's character-set identifier. The charset_mode='single', charset_byte=cb option performs the spec-defined CharacterSetUsed reinsertion as a byte interleave (still bytes out) so the caller can b.decode('utf-16-le') it directly.

License

MIT. See LICENSE.

Acknowledgements

This package is the third in a family of thin Cython wrappers around Microsoft column-store / compression formats, alongside xpress8-python and xpress9-python.

The format itself is documented publicly in Microsoft's open specification [MS-XLDM] — Spreadsheet Data Model File Format, which the implementation here follows. The Python reference and end-to-end test fixtures come from the pbixray project.

Metadata

Release files for xmhuffman 0.3.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 xmhuffman 0.3.2
File Size Uploaded
xmhuffman-0.3.2.tar.gz 189.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for xmhuffman 0.3.2
File
xmhuffman-0.3.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
xmhuffman-0.3.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.14 CPython 3.14 Linux glibc 2.31+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
xmhuffman-0.3.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
xmhuffman-0.3.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
xmhuffman-0.3.2-cp314-cp314-macosx_11_0_universal2.whl CPython 3.14 CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64) Details
xmhuffman-0.3.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
xmhuffman-0.3.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.13 CPython 3.13 Linux glibc 2.31+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
xmhuffman-0.3.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xmhuffman-0.3.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
xmhuffman-0.3.2-cp313-cp313-macosx_11_0_universal2.whl CPython 3.13 CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64) Details
xmhuffman-0.3.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
xmhuffman-0.3.2-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.12 CPython 3.12 Linux glibc 2.31+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
xmhuffman-0.3.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
xmhuffman-0.3.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
xmhuffman-0.3.2-cp312-cp312-macosx_11_0_universal2.whl CPython 3.12 CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64) Details
xmhuffman-0.3.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
xmhuffman-0.3.2-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ RISC-V 64, Linux glibc 2.31+ RISC-V 64 Details
xmhuffman-0.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xmhuffman-0.3.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
xmhuffman-0.3.2-cp311-cp311-macosx_11_0_universal2.whl CPython 3.11 CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) Details
xmhuffman-0.3.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
xmhuffman-0.3.2-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.10 CPython 3.10 Linux glibc 2.31+ RISC-V 64, Linux glibc 2.39+ RISC-V 64 Details
xmhuffman-0.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xmhuffman-0.3.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
xmhuffman-0.3.2-cp310-cp310-macosx_11_0_universal2.whl CPython 3.10 CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64) Details
xmhuffman-0.3.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
xmhuffman-0.3.2-cp39-cp39-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl CPython 3.9 CPython 3.9 Linux glibc 2.39+ RISC-V 64, Linux glibc 2.31+ RISC-V 64 Details
xmhuffman-0.3.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
xmhuffman-0.3.2-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
xmhuffman-0.3.2-cp39-cp39-macosx_11_0_universal2.whl CPython 3.9 CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 11.6 MB

Release files / xmhuffman-0.3.2.tar.gz

Download URL xmhuffman-0.3.2.tar.gz
Size 189.4 kB
Tags Source
SHA-256 checksum
How to use checksums
41459cda5a55044fdbad51d8e7269b8e90d2165e9e04feebb51ce0d2f1690df1
BLAKE2b-256 checksum
How to use checksums
a52c692df73cbf4ac23ced24d2fd95ab8aa440428e315267b14cee62b5689fdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp314-cp314-win_amd64.whl

Download URL xmhuffman-0.3.2-cp314-cp314-win_amd64.whl
Size 82.2 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
95f919742794e79d3b9ad4152077102349917360d2c6663b58ebb615a2c194fb
BLAKE2b-256 checksum
How to use checksums
af08b62b14ff78ba37a0b82d5c6f41514bf1a28a120c239e1c51ca84e0eba960
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 508.1 kB
Tags CPython 3.14 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
f316f21c247cd71af586ba326dfcb55f3a1bd5722639425b257fbfba6fe24eca
BLAKE2b-256 checksum
How to use checksums
c0c84267611eee3512cbb255c86d06865a4526f99297b13c482b49fcf08c0f9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 561.4 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0e194e8389c3546add177e7c06648ec78b838c623d1e4e1bf1276812e8fb9de0
BLAKE2b-256 checksum
How to use checksums
121c9cb180c0a7e84878fa213b9ff51a71a4a9362089f3c53ac93b35b1d51890
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 555.7 kB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
aea32ac94fa54faefc1d6fd607e2c7f5c7104b4a400a7a2cb988fd5b329c65e3
BLAKE2b-256 checksum
How to use checksums
c74a563949ba3b452c866e5fe8bcd2b108f3ddd094f1e9412d79a678e7d5e443
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp314-cp314-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp314-cp314-macosx_11_0_universal2.whl
Size 184.0 kB
Tags CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
833070122edef46f5efc5fdb1a19a51b8b4fc77c3e81408c5b7a031cf374466e
BLAKE2b-256 checksum
How to use checksums
63140b86bf3fb5079e47d70614724985345b074166345fca8540dfc684f4fa59
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp313-cp313-win_amd64.whl

Download URL xmhuffman-0.3.2-cp313-cp313-win_amd64.whl
Size 80.2 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
c78accddb49a6d4f6d9a8e5f2839748041b8a6b2518755d8cf74697bf4069ec3
BLAKE2b-256 checksum
How to use checksums
e4b954c78dc84cdbfb6cf31f8d864f809fd379c05805782a4c6e360c62d4eb16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 509.9 kB
Tags CPython 3.13 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
ec246636db126f903254062172c211a77fad9054c65c9816d429ecd327b4c617
BLAKE2b-256 checksum
How to use checksums
497396c2ccd4c8d27947c12dc3d07f27e46942f83de051e1f74e526c51e53f3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 573.9 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f5b7a23ca4fda2b9f181066eb204fc13e5efec80d6f1f647349a66b47c1587e0
BLAKE2b-256 checksum
How to use checksums
6ee10b0f8602fba5aa1f1fbe2423ba356321609276aa6510f6461cfd0026d693
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 558.5 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cdae5b8fd20a90ca02e4f5176bf99b84ded8946c280dfd77beb8b548caeed45f
BLAKE2b-256 checksum
How to use checksums
e11cfc4ed5ff254c7cdd884dfc831564a12fee843186b74437183456f78df771
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp313-cp313-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp313-cp313-macosx_11_0_universal2.whl
Size 182.8 kB
Tags CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
0b0f1cb4a13abd3f545275fa9e7a180ab673aa06aae9959e4a71a0955cf86219
BLAKE2b-256 checksum
How to use checksums
85c4ce0f16a8546cc816506411d6e4a319f87282d617bb379d5ba4c6da0024e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp312-cp312-win_amd64.whl

Download URL xmhuffman-0.3.2-cp312-cp312-win_amd64.whl
Size 80.6 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
20dfe3e7ac7bbdbba576e14065d380d748ddcd9345f9b7618059e57482bca62b
BLAKE2b-256 checksum
How to use checksums
b37d3c3036d45910e662842274394ffb072714ebf63e25dda5ada1eabadd73a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 508.7 kB
Tags CPython 3.12 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
3e6c57e12bc70e604e79bd167c14aff22e3017eb3354b516ad7712b85bd677db
BLAKE2b-256 checksum
How to use checksums
ef4b4451ca18282a4b00f7eaf925d8787d8fa33e404b8417bf18766a333b746d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 579.1 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
25ba150bb16e2a9135f59642f60ef9a6b71cf480e904a4f8b88b1938aaac60e6
BLAKE2b-256 checksum
How to use checksums
c4d22963e86998feb10d4821f417d0029fcd5a5e203da73b2e63c00f2ffef349
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 564.6 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e18798f64fb894e85e8fc03bef451fa644323bd77b78d0636fb4b9a3de2ade52
BLAKE2b-256 checksum
How to use checksums
af98457f5621bdefe7f5a86bb9e3fc96f83c6ec1ef3bfe79e0073d39af328cc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp312-cp312-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp312-cp312-macosx_11_0_universal2.whl
Size 183.6 kB
Tags CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
4243b0b158de6aba6d512d380017c00fd8a4d88809c3d36690bc173c62a9121d
BLAKE2b-256 checksum
How to use checksums
6f43b5e6f4ecba0d56aed68a25706c66af55ff272c674921c5144101194e0194
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp311-cp311-win_amd64.whl

Download URL xmhuffman-0.3.2-cp311-cp311-win_amd64.whl
Size 79.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
5e3b7aa4ff1e240dfa2d255711fa08e2986df3e677b33a734bdccb88d2229d4a
BLAKE2b-256 checksum
How to use checksums
8dda441d4ef3c5c5b463d6f2e4effa25d863dcb22d1e20288a41a0514e80cd34
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 528.4 kB
Tags CPython 3.11 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
26fd4cd7f58653f62231fc1d3c3008a20cc75e1a4960b1ff90f1f63d7a65ead4
BLAKE2b-256 checksum
How to use checksums
7a5e735eb8c8d514c5f20565d872be9ce0bc47db597f3cf7ed409bd0fba3e239
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 575.6 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6f0df4b4369347422feaeb6efb157170fbf70fb74abf458d94f1f209f75cffbc
BLAKE2b-256 checksum
How to use checksums
8933eb6d04a3b5a0c877f7f6b3ed086f1bbfbf8b32d46988aeab48809cacf0af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 574.3 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e7eac3528078746068dc7fde92af383e5f6e1320d57370a0a1dc3d151f34e9ed
BLAKE2b-256 checksum
How to use checksums
690a5cbfcab4cdab6e984a7dee5ea426ee74f525fa2f040ec033eec17f74a748
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp311-cp311-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp311-cp311-macosx_11_0_universal2.whl
Size 182.8 kB
Tags CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
0c60f5f5b65676477a2cb672698a65bcc66b2f8046f4c5bac68520b8bfb5d7de
BLAKE2b-256 checksum
How to use checksums
2ddea4b87fd1a4748ddb09dbe3744270120f691a8aa515e9e62966ac98b3edb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp310-cp310-win_amd64.whl

Download URL xmhuffman-0.3.2-cp310-cp310-win_amd64.whl
Size 79.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a99223d8994e833851e91094b593c978a1f41664dd9c193ec915dfec08fc14e7
BLAKE2b-256 checksum
How to use checksums
53cce53c7dc0259e3f46fef3721b79e9a6633cc3685e76134be19bf6a545b266
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 509.4 kB
Tags CPython 3.10 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
9deb7d408f37d7e97fcdd6af752bc6b3f2093916658887a2a718534ea05b391b
BLAKE2b-256 checksum
How to use checksums
656f7ed2625cce16335917d5c4886887beb5e5111cf2478faa47725736a12e77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 550.0 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ed30aaa4702d8b680bc5a86fcd96e6f64d31ca68013037b3e00850753e177d98
BLAKE2b-256 checksum
How to use checksums
bf94e187a95b38e5da616bab3b7cab896f23d9ee719efe5e8dd2ea0f98de9c1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 548.9 kB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c3c209741a5d56a87e9afd6d6f4d7646cf8fbe7771c09b3a8712a73b9abd4a29
BLAKE2b-256 checksum
How to use checksums
97b01af5508440fea6816ce1d8a4728d52bc5287b04728cd7a7cf6593de1a11d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp310-cp310-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp310-cp310-macosx_11_0_universal2.whl
Size 183.7 kB
Tags CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
2402515af360d2046df5143023a2d7317e460f0e073ca6e4ba41dc711f05d6e3
BLAKE2b-256 checksum
How to use checksums
a1668840ed75c128c46b77387ff94c2e13625d898a1062a798ba5f8830d3ff41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp39-cp39-win_amd64.whl

Download URL xmhuffman-0.3.2-cp39-cp39-win_amd64.whl
Size 79.4 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
a9ffc1bdb8fb282606337ccb73e5031b8d205a51b93caf98adf9ab6b54851599
BLAKE2b-256 checksum
How to use checksums
dfae86e8ce313bf0224ebec39248966f75fbec6eaca6e3a94c14846dceb4e15f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp39-cp39-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl

Download URL xmhuffman-0.3.2-cp39-cp39-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl
Size 509.5 kB
Tags CPython 3.9 Linux glibc 2.31+ RISC-V 64 Linux glibc 2.39+ RISC-V 64
SHA-256 checksum
How to use checksums
a7dd4f8855c5f62a2ed6fc8296abe991140f683398b5a616179c633701ab326d
BLAKE2b-256 checksum
How to use checksums
04fcfcf726a6f6fcc2bcc68ee437609fd0970bd0feabcd4cbd3442703855e4ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL xmhuffman-0.3.2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 548.6 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e6a39b767aecc1972a16d15799f52b28fce09759c26c322d57f934c97dcb76b2
BLAKE2b-256 checksum
How to use checksums
e5d536aed0edd0a78ed97f8e527993d929b7aae087b765ffd2237070bfd0dae8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL xmhuffman-0.3.2-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 546.9 kB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
87d285536bfe6f80ba1fb50dece74f793789283847aa29c9baa8289dc68eb8e8
BLAKE2b-256 checksum
How to use checksums
02e87f9657fa2d00c6518446ae01c9919937055f682d4fa301aef1d89834bcfd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / xmhuffman-0.3.2-cp39-cp39-macosx_11_0_universal2.whl

Download URL xmhuffman-0.3.2-cp39-cp39-macosx_11_0_universal2.whl
Size 184.5 kB
Tags CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
175567be897826aa19e8321740c791a726028492efcb30c423adc03667a89c17
BLAKE2b-256 checksum
How to use checksums
75579a290019fe3321dd18d45740f69567c20e610d69a3b5ea20c9aadbb28624
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.2 This release

31 release files

0.3.1

25 release files

0.3.0

21 release files

0.2.0

21 release files

0.1.0

21 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