D12285: archival: remove GzipFileWithTime
indygreg (Gregory Szorc)
phabricator at mercurial-scm.org
Wed Mar 2 23:30:11 UTC 2022
indygreg created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
This was required for Python 2 support, which we no longer need to support.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D12285
AFFECTED FILES
mercurial/archival.py
CHANGE DETAILS
diff --git a/mercurial/archival.py b/mercurial/archival.py
--- a/mercurial/archival.py
+++ b/mercurial/archival.py
@@ -136,39 +136,6 @@
"""write archive to tar file or stream. can write uncompressed,
or compress with gzip or bzip2."""
- if pycompat.ispy3:
- GzipFileWithTime = gzip.GzipFile # camelcase-required
- else:
-
- class GzipFileWithTime(gzip.GzipFile):
- def __init__(self, *args, **kw):
- timestamp = None
- if 'mtime' in kw:
- timestamp = kw.pop('mtime')
- if timestamp is None:
- self.timestamp = time.time()
- else:
- self.timestamp = timestamp
- gzip.GzipFile.__init__(self, *args, **kw)
-
- def _write_gzip_header(self):
- self.fileobj.write(b'\037\213') # magic header
- self.fileobj.write(b'\010') # compression method
- fname = self.name
- if fname and fname.endswith(b'.gz'):
- fname = fname[:-3]
- flags = 0
- if fname:
- flags = gzip.FNAME # pytype: disable=module-attr
- self.fileobj.write(pycompat.bytechr(flags))
- gzip.write32u( # pytype: disable=module-attr
- self.fileobj, int(self.timestamp)
- )
- self.fileobj.write(b'\002')
- self.fileobj.write(b'\377')
- if fname:
- self.fileobj.write(fname + b'\000')
-
def __init__(self, dest, mtime, kind=b''):
self.mtime = mtime
self.fileobj = None
@@ -178,7 +145,7 @@
mode = mode[0:1]
if not fileobj:
fileobj = open(name, mode + b'b')
- gzfileobj = self.GzipFileWithTime(
+ gzfileobj = gzip.GzipFile(
name,
pycompat.sysstr(mode + b'b'),
zlib.Z_BEST_COMPRESSION,
To: indygreg, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
More information about the Mercurial-devel
mailing list