NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1262 most downloaded on PyPI
Pure python 7-zip library
Last release 3 months ago
19 Jun 2026
Ships fairly regularly
a new release about every 4 months
Some releases are documented
notes for 24 of the last 60 stable releases
27 versions withdrawn
withdrawn after publishing
7 years old
165 releases · first in 2019
CVE-2026-23879: Arbitrary File Write Vulnerability in py7zr (high severity)
max_extract_size as constructor parameter to guard against excessive decompression.Harden check of path traversal and enhance test cases to reproduce many attack scenarios.
Enforced variation of the parameter with a limit and optimized calculation algorithm to prevent excessive CPU consumption.
Added check of extraction size and introduced max_extract_size as constructor parameter to guard against excessive decompression.
Notes:
BufferError when calling Py7zBytesIO.size() (#736,#737)
fix: extractall() raises TypeError: int() argument must be a string, a bytes-like object or a real number, not ‘NoneType’ (#734,#735)
feat(io): add Py7zIO.close() lifecycle hook called once per extracted file (#699,#732)
test: Bump dependency libarchive @ 3 . 8 . 7
ci: bump numerous actions with SHA256 hash and newer versions (#729,#730)
One column per quarter.
- security: fix Zip-Slip vulnerability by symlink
security: fix Zip-Slip vulnerability by symlink
Remove Code of Conduct from repository.
remove unused _lzma imports
CVE-2025-6176: bump brotli@1.2.0
run-linter workflow by @xavier2k6 in https://github.com/miurahr/py7zr/pull/698publish-to-pypi workflow by @xavier2k6 in https://github.com/miurahr/py7zr/pull/697codeql-analysis workflow by @xavier2k6 in https://github.com/miurahr/py7zr/pull/696run-tox-tests workflow by @xavier2k6 in https://github.com/miurahr/py7zr/pull/695Full Changelog: https://github.com/miurahr/py7zr/compare/v1.0.0...v1.1.0
run-linter workflow by @xavier2k6 in #698publish-to-pypi workflow by @xavier2k6 in #697codeql-analysis workflow by @xavier2k6 in #696run-tox-tests workflow by @xavier2k6 in #695Full Changelog: v1.0.0...v1.1.0
- CI: Ensure nearest tag is fetched in publish-to-pypi workflow
CI: Ensure nearest tag is fetched in publish-to-pypi workflow
Streamlined pypi source package by pruning docs, tests and utils
- CI: update workflows (#695,#696,#697,#698,#692)
CI: update workflows (#695,#696,#697,#698,#692)
Update tox configuration with TOML native (#689)
Type hint syntax for Python 3.10 and later (#690)
README: Minimum & Recommended Python/PyPY versions (#700)
Celebrating the official 1.0.0 release!
Release version 1.0.0
Celebrating the official 1.0.0 release!
Celebrating the official 1.0.0 release!
CI: check on Linux on ARM64 with GitHub hosted ARM64 runner.
Improve issue report template
Remove Travis-CI button from Documentation
- Fix installation on python 3.13 by allowing pyppmd 1.2.0
Adjust MANIFEST.in
Fix installation on python 3.13 by allowing pyppmd 1.2.0
CI: update aarch64 tests on Ubuntu 24.04
Signed-off-by: Hiroshi Miura miurahr@linux.com
Signed-off-by: Hiroshi Miura miurahr@linux.com
There is big incompatible change after -rc1 version.
Remove SevenZipFile.read() and SevenZipFile.readall() (#620) This confuse users to use as same as ZipFile method, but not the same. Using this method can easily exhaust a machine memory.
Add factory parameter that takes WriterFactory object which provides an object that implements Py7zIO interface. (#620) This allow user to interact with Py7zr for large archives. (#620)
deprecation for writed method
Minimum required Python version to be Python 3.9 (#619)
Remove code paths that checked for python versions less than 3.9
Drops 3.8 and adds 3.13 to the test matrix
Update all the GitHub actions to their latest versions
Upgrade aarch64 from ubuntu20.04+py39 to ubuntu22.04+py310.
Replace old style strings with f-strings(#619)
Replace typing.List (and similar) with their standard equivalent(#619)
Bump dependencies versions - pycryptodomex @ 3 . 32 . 0
pycryptodomex @ 3 . 32 . 0
pyzstd @ 0 . 16 . 1
sphinx @ 7 . 0 . 0
mypy @ 1 . 10 . 0
mypy_extensions @ 1 . 0 . 0
isort @ 5 . 13 . 2
black @ 24 . 8 . 0
- Add mode “x” for SevenZipFile
Add mode “x” for SevenZipFile (#588)
Add SevenZipFile#namelist method (#600)
Append mode on non-existent files (#604)
Fix NUMBER encoding of integer when 8 bytes(#591)
Minimum required Python version to be Python 3.8 (#601)
Remove pyannotate from pyproject.toml (#598)
Update user guide (#596)
Treat zero byte stream as a file. by @diedmon in https://github.com/miurahr/py7zr/pull/551
targets argument type for read and extract method by @miurahr in https://github.com/miurahr/py7zr/pull/577unpack_archive example as for make_archive by @hoel-bagard in https://github.com/miurahr/py7zr/pull/590Full Changelog: https://github.com/miurahr/py7zr/compare/v0.21.0...v0.21.1
Follow shutil.register_unpack_format() convention of raising a ReadError when the library cannot handle a file (#583)
ensure unpack_7zarchive closes the archive (#584)
64bit OS detection (#580)
Add recursive sub-directories and files extraction (#585)
check targets argument type for read and extract method (#577)
Treat zero byte stream as a file (#551)
py7zr -- a 7z library
User Guide
Advanced usage
Security Policy
API Documentation
Contributor guide
.7z format specification
Authors
Glossary
Py7zr Changelog
Unreleased
v1.1.3
Security
Fixed
Changed
v1.1.2
Security
Removed
Changed
v1.1.1
Fixed
Changed
v1.1.0
v1.1.0rc4
Changed
v1.1.0rc2
Changed
Document
v1.1.0rc1
Security
Added
Changed
Removed
v1.0.0
Changed
v1.0.0rc3
Fixed
Changed
v1.0.0rc2
Removed
Added
Deprecated
Changed
v1.0.0-rc1
Changed
v0.22.0
Added
Fixed
Changed
Document
v0.21.1
Fixed
Added
Changed
Previous changes
Documentation overview
Previous: Glossary
Next: Previous changes
©2019-2022, Hiroshi Miura.
| Powered by Sphinx 9.1.0 & Alabaster 1.0.0 | Page source
Follow shutil.register_unpack_format() convention of raising a ReadError when the library cannot handle a file (#583)
ensure unpack_7zarchive closes the archive (#584)
64bit OS detection (#580)
Add recursive sub-directories and files extraction (#585)
check targets argument type for read and extract method (#577)
Treat zero byte stream as a file (#551)
Speed up extraction when number of files is large
Speed up extraction when number of files is large
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Drop manual GC to improve performance
Nothing published for this version
Nothing published for this version
Nothing published for this version
Backport secuirty fix and improvements from v0.20.2
Backport secuirty fix and improvements from v0.20.2
Nothing published for this version
Nothing published for this version
Backport secuirty fix and improvements from v0.20.2
Backport secuirty fix and improvements from v0.20.2
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
PPMd: Use stream encoder/decoder instead of buffered one.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →