Skip to content

Commit 11527ce

Browse files
committed
Use **kwargs in _Stream
1 parent fabfa11 commit 11527ce

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

Lib/tarfile.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -337,8 +337,7 @@ class _Stream:
337337
_Stream is intended to be used only internally.
338338
"""
339339

340-
def __init__(self, name, mode, comptype, fileobj, bufsize,
341-
compresslevel, preset, level, options, zstd_dict):
340+
def __init__(self, name, mode, comptype, fileobj, bufsize, **kwargs):
342341
"""Construct a _Stream object.
343342
"""
344343
self._extfileobj = True
@@ -373,7 +372,7 @@ def __init__(self, name, mode, comptype, fileobj, bufsize,
373372
self.exception = zlib.error
374373
self._init_read_gz()
375374
else:
376-
self._init_write_gz(compresslevel)
375+
self._init_write_gz(kwargs["compresslevel"])
377376

378377
elif comptype == "bz2":
379378
try:
@@ -385,7 +384,7 @@ def __init__(self, name, mode, comptype, fileobj, bufsize,
385384
self.cmp = bz2.BZ2Decompressor()
386385
self.exception = OSError
387386
else:
388-
self.cmp = bz2.BZ2Compressor(compresslevel)
387+
self.cmp = bz2.BZ2Compressor(kwargs["compresslevel"])
389388

390389
elif comptype == "xz":
391390
try:
@@ -397,18 +396,21 @@ def __init__(self, name, mode, comptype, fileobj, bufsize,
397396
self.cmp = lzma.LZMADecompressor()
398397
self.exception = lzma.LZMAError
399398
else:
400-
self.cmp = lzma.LZMACompressor(preset=preset)
399+
self.cmp = lzma.LZMACompressor(kwargs["preset"])
401400
elif comptype == "zst":
402401
try:
403402
from compression import zstd
404403
except ImportError:
405404
raise CompressionError("compression.zstd module is not available") from None
406405
if mode == "r":
407406
self.dbuf = b""
408-
self.cmp = zstd.ZstdDecompressor(zstd_dict, options)
407+
self.cmp = zstd.ZstdDecompressor(kwargs["zstd_dict"],
408+
kwargs["options"])
409409
self.exception = zstd.ZstdError
410410
else:
411-
self.cmp = zstd.ZstdCompressor(level, options, zstd_dict)
411+
self.cmp = zstd.ZstdCompressor(kwargs["level"],
412+
kwargs["options"],
413+
kwargs["zstd_dict"])
412414
elif comptype != "tar":
413415
raise CompressionError("unknown compression type %r" % comptype)
414416

@@ -1936,13 +1938,12 @@ def not_compressed(comptype):
19361938
f"{arg} is only valid for zstd compression"
19371939
)
19381940

1939-
compresslevel = kwargs.pop("compresslevel", 6)
1940-
preset = kwargs.pop("preset", None)
1941-
level = kwargs.pop("level", None)
1942-
options = kwargs.pop("options", None)
1943-
zstd_dict = kwargs.pop("zstd_dict", None)
19441941
stream = _Stream(name, filemode, comptype, fileobj, bufsize,
1945-
compresslevel, preset, level, options, zstd_dict)
1942+
compresslevel=kwargs.pop("compresslevel", 6),
1943+
preset=kwargs.pop("preset", None),
1944+
level=kwargs.pop("level", None),
1945+
options=kwargs.pop("options", None),
1946+
zstd_dict=kwargs.pop("zstd_dict", None))
19461947
try:
19471948
t = cls(name, filemode, stream, **kwargs)
19481949
except:

0 commit comments

Comments
 (0)