--- a/mercurial/archival.py Tue Dec 31 22:07:29 2024 -0500
+++ b/mercurial/archival.py Wed Dec 04 22:25:33 2024 -0500
@@ -22,7 +22,6 @@
from .i18n import _
from .node import nullrev
-from .pycompat import open
from . import (
error,
@@ -151,14 +150,16 @@
self.mtime = mtime
self.fileobj = None
- def taropen(mode, name=b'', fileobj=None):
+ def taropen(
+ mode: str, name: bytes = b'', fileobj=None
+ ) -> tarfile.TarFile:
if kind == 'gz':
mode = mode[0:1]
if not fileobj:
- fileobj = open(name, mode + b'b')
+ fileobj = open(name, mode + 'b')
gzfileobj = gzip.GzipFile(
name,
- pycompat.sysstr(mode + b'b'),
+ mode + 'b',
zlib.Z_BEST_COMPRESSION,
fileobj,
mtime=mtime,
@@ -167,16 +168,14 @@
return tarfile.TarFile.taropen(name, "w", gzfileobj)
else:
try:
- return tarfile.open(
- name, pycompat.sysstr(mode) + kind, fileobj
- )
+ return tarfile.open(name, mode + kind, fileobj)
except tarfile.CompressionError as e:
raise error.Abort(stringutil.forcebytestr(e))
if isinstance(dest, bytes):
- self.z = taropen(b'w:', name=dest)
+ self.z = taropen('w:', name=dest)
else:
- self.z = taropen(b'w|', fileobj=dest)
+ self.z = taropen('w|', fileobj=dest)
def addfile(self, name, mode, islink, data):
name = pycompat.fsdecode(name)