{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/20"}],"enrichment":{"capability":"Decodes canonical-Huffman compressed string dictionaries from xVelocity/Vertipaq column stores used in Power BI `.pbix` files and Excel Power Pivot workbooks via a fast Cython extension.","skillfed_tags":["power-bi","data-extraction","compression"],"use_cases":["Extract and analyze data from Power BI `.pbix` files by decompressing the embedded Vertipaq string dictionaries.","Parse Excel Power Pivot workbooks (`xl/model/item.data`) to recover the original string values from compressed storage.","Build tools that inspect or transform Power BI data models without opening Power BI Desktop.","Parallelize large-scale `.pbix` extraction using `concurrent.futures.ThreadPoolExecutor` with per-page decoding.","Reverse-engineer or audit the string content of Power BI reports for compliance or data discovery.","Integrate Huffman decompression into data pipeline tools that consume Power BI artifacts."],"what_it_does":"xmhuffman is a Cython extension that decodes the canonical-Huffman compressed string dictionaries stored inside Power BI `.pbix` files and Excel Power Pivot workbooks. These files use the xVelocity/Vertipaq column-store format, which compresses string data using Huffman coding. The package provides a tight C kernel that replaces what would otherwise be a per-symbol Python loop, delivering significant performance gains on real workloads.\n\nThe library exposes a primary entry point `decode_page()` that takes a bitstream, code-length array, string offsets, and total bit count\u2014all extracted directly from Vertipaq dictionary page metadata\u2014and returns a list of decoded byte strings. It handles both single-charset and multi-charset pages, with optional in-extension byte-pair swapping and charset reinsertion. Lower-level helpers like `build_table()` and `decode_with_table()` allow amortization across multiple pages. No runtime dependencies; zero external imports required.","worth_installing":"Yes, if you need to extract or analyze data from Power BI `.pbix` files or Excel Power Pivot workbooks. The package solves a specific, narrow problem\u2014Vertipaq Huffman decompression\u2014with no dependencies and prebuilt wheels for common platforms. It is actively maintained, MIT-licensed, and offers substantial performance gains on real workloads. Install only if you are working with these Microsoft formats; it has no utility for general-purpose Huffman decoding or other compression tasks."},"id":"xmhuffman","links":{"html":"https://skillfed.io/packages/xmhuffman","md":"https://skillfed.io/packages/xmhuffman.md","pypi":"https://pypi.org/project/xmhuffman/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-05-15","license_spdx":null,"license_treatment":"permissive","name":"xmhuffman","python_support":"supports_current","summary":"Cython bindings for Microsoft xVelocity/Vertipaq canonical-Huffman string decoding"},"popularity":{"monthly_downloads":105805,"position":12678,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.3.0"}
