$npx skillfedfor your agent

stream-unzip

Python function to stream unzip all the files in a ZIP archive, without loading the entire ZIP file into memory or any of its uncompressed files

Worth itPyPI CompressionReleased Mar 2026876.5K downloads / mopermissive licensePlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — stream_unzip-0.0.101-cp310-cp310-macosx_11_0_arm64.whl · stream_unzip-0.0.101-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl · stream_unzip-0.0.101-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
v0.0.101 · released 2026-03-03 · Python >=3.7.7 · 2 runtime deps: pycryptodome, stream-inflate

Yes. stream-unzip fills a genuine gap in Python's standard library by supporting encryption formats and compression methods the zipfile module cannot handle, while offering memory-efficient streaming for large archives. Active maintenance, no known vulnerabilities, permissive MIT license, and top-5000 PyPI popularity indicate a stable, trusted tool. Medium install friction is acceptable given the prebuilt wheels and lightweight runtime dependencies.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python >=3.7.7; pycryptodome and stream-inflate must be installed as runtime dependencies.
  • Medium install friction with prebuilt wheels for Python 3.10–3.12 across common platforms (macOS, Linux, Windows, musl).
  • Depends on pycryptodome and stream-inflate, both widely available.

License · maintenance · safety

permissive license (permissive) — MIT license (permissive) allows use in commercial and private projects with minimal restrictions; attribution required.

last release 2026-03-03 (164 days) · last repo commit 2026-08-10 · 26 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 876,464 downloads/mo, #4,831 on PyPI

Verify before relying

pip install stream-unzip

from stream_unzip import stream_unzip

for file_name, file_size, unzipped_chunks in stream_unzip(zip_file_bytes):
    for chunk in unzipped_chunks:
        # Process chunk without loading entire file
  • Performance benchmarks comparing ZipCrypto decryption speed claim ('approximately 10 times faster') against Python's zipfile module.
  • Specific async interface details and which asyncio/trio patterns are supported beyond the mention of thread-based trio support.
  • Memory usage characteristics for very large ZIP files to quantify the streaming advantage in practice.
Same gist for agents: .md · .json

What it is and what it does

stream-unzip is a Python library that extracts ZIP archives by streaming their contents without holding the entire archive or any uncompressed file in memory at once. It handles modern and legacy ZIP formats including Deflate, Deflate64, Zip64 (files far beyond the approximate 4GiB limit), WinZip AES encryption, ZipCrypto password protection, and BZip2 compression—formats that Python's standard zipfile module cannot always open. The library depends on pycryptodome for encryption and stream-inflate for decompression.

The package is designed for scenarios where ZIP files are too large to fit in memory or where you need to process files as they are extracted. It offers both synchronous and asynchronous interfaces (supporting asyncio and trio), making it suitable for streaming workflows in web services, data pipelines, and batch processing. Decryption of legacy ZipCrypto files is reported to be significantly faster than the standard library alternative.

Use it for

  • Extract large ZIP archives in web services without buffering the entire file to disk or memory.
  • Process password-protected or AES-encrypted ZIPs in data pipelines where the standard library cannot open them.
  • Stream unzip operations in async applications using asyncio or trio without blocking.
  • Handle Deflate64-compressed ZIPs created by Windows Explorer when standard zipfile fails.
  • Decrypt legacy ZipCrypto-protected archives with better performance than Python's zipfile module.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

stream-unzip fills a genuine gap in Python's standard library by supporting encryption formats and compression methods the zipfile module cannot handle, while offering memory-efficient streaming for large archives. Active maintenance, no known vulnerabilities, permissive MIT license, and top-5000 PyPI popularity indicate a stable, trusted tool. Medium install friction is acceptable given the prebuilt wheels and lightweight runtime dependencies.

Install

stream-unzip on PyPI

Before you install

Medium install friction with prebuilt wheels for Python 3.10–3.12 across common platforms (macOS, Linux, Windows, musl). Depends on pycryptodome and stream-inflate, both widely available. Active maintenance with last commit 2026-08-10.

Requires Python >=3.7.7; pycryptodome and stream-inflate must be installed as runtime dependencies.

License in practice

MIT license (permissive) allows use in commercial and private projects with minimal restrictions; attribution required.

Quickstart

pip install stream-unzip

from stream_unzip import stream_unzip

for file_name, file_size, unzipped_chunks in stream_unzip(zip_file_bytes):
    for chunk in unzipped_chunks:
        # Process chunk without loading entire file

Verify before relying

  • Performance benchmarks comparing ZipCrypto decryption speed claim ('approximately 10 times faster') against Python's zipfile module.
  • Specific async interface details and which asyncio/trio patterns are supported beyond the mention of thread-based trio support.
  • Memory usage characteristics for very large ZIP files to quantify the streaming advantage in practice.

Package facts

Licensepermissive license permissive
Python supportSupports the current Python release >=3.7.7
Install frictionMedium. Platform-specific wheel
Runtime dependencies
2 packages
pycryptodomestream-inflate
MaintenanceActively maintained 164 days since the last release
Last repo commit
First released
Downloads876,464 / month, #4,831 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Topic :: System :: Archiving :: CompressionTyping :: Typed

Evidence: stream_unzip-0.0.101-cp310-cp310-macosx_11_0_arm64.whl; stream_unzip-0.0.101-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; stream_unzip-0.0.101-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; stream_unzip-0.0.101-cp310-cp310-musllinux_1_1_aarch64.whl; stream_unzip-0.0.101-cp310-cp310-musllinux_1_1_x86_64.whl; stream_unzip-0.0.101-cp310-cp310-musllinux_1_2_aarch64.whl; stream_unzip-0.0.101-cp310-cp310-musllinux_1_2_armv7l.whl; stream_unzip-0.0.101-cp310-cp310-musllinux_1_2_x86_64.whl; stream_unzip-0.0.101-cp310-cp310-win_amd64.whl; stream_unzip-0.0.101-cp311-cp311-macosx_11_0_arm64.whl; stream_unzip-0.0.101-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; stream_unzip-0.0.101-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; stream_unzip-0.0.101-cp311-cp311-musllinux_1_1_aarch64.whl; stream_unzip-0.0.101-cp311-cp311-musllinux_1_1_x86_64.whl; stream_unzip-0.0.101-cp311-cp311-musllinux_1_2_aarch64.whl; stream_unzip-0.0.101-cp311-cp311-musllinux_1_2_armv7l.whl; stream_unzip-0.0.101-cp311-cp311-musllinux_1_2_x86_64.whl; stream_unzip-0.0.101-cp311-cp311-win_amd64.whl; stream_unzip-0.0.101-cp312-cp312-macosx_11_0_arm64.whl; stream_unzip-0.0.101-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Tags

Capabilities
stream unzip memory efficientzip file streaming decompressionlarge zip file handlingencrypted zip extractiondeflate64 zip supportasync zip extractionpassword protected zipzip64 streaming
Topics
streaming-ioencryptionasync-support

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “stream unzip memory efficient”

  • stream-unzipStreams unzip operations on ZIP archives without loading entire files…
  • et-xmlfileet_xmlfile writes large XML files with minimal memory overhead by…
  • mwxmlEfficiently parse and stream-process MediaWiki XML database dumps…

Give your agent the search over MCP, or paste the wish link into any chat.

More Compression packages

brotli Worth it
PyPI · Libraries · released Nov 2025

Provides Python bindings to the Brotli compression library, enabling lossless compression and decompression using a modern LZ77 variant with Huffman coding and context modeling.

Install it if you need Brotli compression in Python; the API is straightforward and the library is battle-tested.

permissive licensecompiled wheel
94.7Mdownloads / mo
backports.zstd With conditions
PyPI · Compression · released Jun 2026

Provides Zstandard compression support for Python versions before 3.14, backporting the standard library's zstd module along with zstd-enabled tarfile and zipfile modules.

PSF-2.0compiled wheel
77.8Mdownloads / mo
zopfli With conditions
PyPI · Compression · released Jun 2026

Zopfli is a Python binding for Google's Zopfli compression library, providing higher-density compression for zlib and gzip formats than standard algorithms, with tunable iteration and block-splitting parameters.

Apache-2.0compiled wheel · 3.10+
36.4Mdownloads / mo
python-snappy With conditions
PyPI · Software Development · released Aug 2024

Python binding for Google's Snappy compression library, providing fast compression and decompression of data via the cramjam backend.

However, dormant maintenance (715 days since last release) means security or compatibility issues may not be addressed quickly.

BSD-3-Clausepure Pythondormant
15.6Mdownloads / mo
pyzipper Worth it
PyPI · Compression · released May 2026

pyzipper replaces Python's standard zipfile module to read and write AES-encrypted zip archives, using the WinZip AES encryption specification.

MITpure Python · 3.4+
9.3Mdownloads / mo
pyzstd Skip
PyPI · Compression · released Dec 2025

Provides Python bindings to the Zstandard (zstd) compression library with an API similar to bz2, lzma, and zlib modules.

BSD-3-Clausepure Python · 3.10+
8.5Mdownloads / mo

See also stream-inflate · stream-zip · zipfile-deflate64 · remotezip2 · zipstream-ng · remotezip · zipstream-new · zipstream · python-multipart