[New-bugs-announce] [issue31020] Add support for custom compressor in tarfile

insomniacslk report at bugs.python.org
Mon Jul 24 17:05:21 EDT 2017


New submission from insomniacslk:

Tarfile would benefit from exposing custom compressors. At the moment the only way to use something that is not gzip/bzip/lzma is to separate the archiving and compression steps.

A possible approach is to pass a custom compression function to `tarfile.TarFile.open`. However the current interface is not clean enough to be exposed. I have made a very conservative change via a pull request on GitHub, see https://github.com/python/cpython/pull/2734 . Some additional considerations can be found there.

A further step could require a simplified interface that only involves file name, file-like object and compression level, and returns a file-like object to read the compressed data from. For example:

def my_compressor(name, fileobj=None, compresslevel=9):
    # compression happens here
    return filelike_object


This further step is not captured in the pull request, but I can iterate and update the diff.

----------
components: Library (Lib)
messages: 299017
nosy: insomniacslk
priority: normal
pull_requests: 2903
severity: normal
status: open
title: Add support for custom compressor in tarfile
type: enhancement
versions: Python 3.6, Python 3.7

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue31020>
_______________________________________


More information about the New-bugs-announce mailing list