Allow use of bsdtar as decompression backend. It sits on top of libarchive, which has support for reading RAR archives.
Limitations of libarchive RAR backend:
Now rarfile checks if unrar and if not then tries bsdtar. If that works, then keeps using it. If not then configuration stays with unrar which will then appear in error messages.
Both RarFile and is_rarfile() now accept file-like object. Eg. io.BytesIO. Only requirement is that the object must be seekable. This mirrors similar funtionality in zipfile.
Based on patch by Chase Zhang.
Uniform error handling. RarFile accepts errors="strict" argument.
Allow user to tune whether parsing and missing file errors will raise exception. If error is not raised, the error string can be queried with RarFile.strerror() method.
Fixes:
Fixes:
Features:
Compatibility:
Fixes:
Fixes:
Cleanups:
Features:
Fixes:
Cleanups:
Features:
Cleanups:
Fixes:
Cleanups: