Open gzip compressed tar archive name for reading or writing. Appending is not allowed.
(cls, name, mode="r", fileobj=None, compresslevel=6, **kwargs)
| 1976 | |
| 1977 | @classmethod |
| 1978 | def gzopen(cls, name, mode="r", fileobj=None, compresslevel=6, **kwargs): |
| 1979 | """Open gzip compressed tar archive name for reading or writing. |
| 1980 | Appending is not allowed. |
| 1981 | """ |
| 1982 | if mode not in ("r", "w", "x"): |
| 1983 | raise ValueError("mode must be 'r', 'w' or 'x'") |
| 1984 | |
| 1985 | try: |
| 1986 | from gzip import GzipFile |
| 1987 | except ImportError: |
| 1988 | raise CompressionError("gzip module is not available") from None |
| 1989 | |
| 1990 | try: |
| 1991 | fileobj = GzipFile(name, mode + "b", compresslevel, fileobj) |
| 1992 | except OSError as e: |
| 1993 | if fileobj is not None and mode == 'r': |
| 1994 | raise ReadError("not a gzip file") from e |
| 1995 | raise |
| 1996 | |
| 1997 | try: |
| 1998 | t = cls.taropen(name, mode, fileobj, **kwargs) |
| 1999 | except OSError as e: |
| 2000 | fileobj.close() |
| 2001 | if mode == 'r': |
| 2002 | raise ReadError("not a gzip file") from e |
| 2003 | raise |
| 2004 | except: |
| 2005 | fileobj.close() |
| 2006 | raise |
| 2007 | t._extfileobj = False |
| 2008 | return t |
| 2009 | |
| 2010 | @classmethod |
| 2011 | def bz2open(cls, name, mode="r", fileobj=None, compresslevel=9, **kwargs): |
nothing calls this directly
no test coverage detected