archi

Multi-format archive library based on libarchive


Keywords
libarchive, archive, compress, compression
License
MIT
Install
pip install archi==0.2.3

Documentation

Archi

Build Status

Multi-format archive library based on libarchive . Forked from pyarchive

Usage

import archi

with open("test.tgz", "rb") as f:
    archive = archi.Archive(f)
for file in archive:
    print(file.filename)
    print(file.read())

Keep in mind that you can't store Entrys, they're freed as soon as the loop moves on to the next or ends. So this won't do:

archi = archi.Archive('file.zip')
files = [f for f in archi]
files[0].filename # Address boundary error !

Changelog

vnext

  • (wheels) Upgrade bundled libarchive to v3.6.1
  • Fix SIGSEGV when received ARCHIVE_FATAL error

v0.2.3

  • (wheels) Upgrade bundled libarchive to v3.4.3

v0.2.2

  • (wheels) Upgrade bundled libarchive to v3.4.2
  • (wheels) Build macOS wheels on macOS 10.14 (#6)

v0.2.1

  • (wheels) Upgrade bundled libarchive to v3.4.1

v0.2.0

  • Add support for libarchive's ARCHIVE_FAILED error
  • use PyMem_Malloc & PyMem_Free instead of alloca

v0.1.1

  • Fix binary wheels for macOS

TODO