From 0c24e8b8ca92ca9af0ce88dc2eddb2ef12999722 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Lars=20Gust=C3=A4bel?= Date: Sat, 2 Aug 2008 11:43:24 +0000 Subject: [PATCH] Remove the TarFileCompat class from tarfile.py. --- Doc/library/tarfile.rst | 16 +------------- Lib/tarfile.py | 48 ----------------------------------------- Misc/NEWS | 2 ++ 3 files changed, 3 insertions(+), 63 deletions(-) diff --git a/Doc/library/tarfile.rst b/Doc/library/tarfile.rst index bc5ce62612..b7ca062064 100644 --- a/Doc/library/tarfile.rst +++ b/Doc/library/tarfile.rst @@ -119,21 +119,7 @@ Some facts and figures: module can read. -.. class:: TarFileCompat(filename, mode='r', compression=TAR_PLAIN) - - Class for limited access to tar archives with a :mod:`zipfile`\ -like interface. - Please consult the documentation of the :mod:`zipfile` module for more details. - *compression* must be one of the following constants: - - - .. data:: TAR_PLAIN - - Constant for an uncompressed tar archive. - - - .. data:: TAR_GZIPPED - - Constant for a :mod:`gzip` compressed tar archive. +The :mod:`tarfile` module defines the following exceptions: .. exception:: TarError diff --git a/Lib/tarfile.py b/Lib/tarfile.py index a79e35ca6a..607dbfa1af 100644 --- a/Lib/tarfile.py +++ b/Lib/tarfile.py @@ -2451,54 +2451,6 @@ class _ringbuffer(list): self.idx = idx return item -#--------------------------------------------- -# zipfile compatible TarFile class -#--------------------------------------------- -TAR_PLAIN = 0 # zipfile.ZIP_STORED -TAR_GZIPPED = 8 # zipfile.ZIP_DEFLATED -class TarFileCompat: - """TarFile class compatible with standard module zipfile's - ZipFile class. - """ - def __init__(self, file, mode="r", compression=TAR_PLAIN): - if compression == TAR_PLAIN: - self.tarfile = TarFile.taropen(file, mode) - elif compression == TAR_GZIPPED: - self.tarfile = TarFile.gzopen(file, mode) - else: - raise ValueError("unknown compression constant") - if mode[0:1] == "r": - members = self.tarfile.getmembers() - for m in members: - m.filename = m.name - m.file_size = m.size - m.date_time = time.gmtime(m.mtime)[:6] - def namelist(self): - return map(lambda m: m.name, self.infolist()) - def infolist(self): - return filter(lambda m: m.type in REGULAR_TYPES, - self.tarfile.getmembers()) - def printdir(self): - self.tarfile.list() - def testzip(self): - return - def getinfo(self, name): - return self.tarfile.getmember(name) - def read(self, name): - return self.tarfile.extractfile(self.tarfile.getmember(name)).read() - def write(self, filename, arcname=None, compress_type=None): - self.tarfile.add(filename, arcname) - def writestr(self, zinfo, bytes): - from io import StringIO - import calendar - zinfo.name = zinfo.filename - zinfo.size = zinfo.file_size - zinfo.mtime = calendar.timegm(zinfo.date_time) - self.tarfile.addfile(zinfo, StringIO(bytes)) - def close(self): - self.tarfile.close() -#class TarFileCompat - #-------------------- # exported functions #-------------------- diff --git a/Misc/NEWS b/Misc/NEWS index b7d4992b42..3679a5b1c5 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -18,6 +18,8 @@ Core and Builtins Library ------- +- Remove the TarFileCompat class from tarfile.py. + - Issue #2491: os.fdopen is now almost an alias for the built-in open(), and accepts the same parameters. It just checks that its first argument is an integer. -- 2.40.0