diff options
author | Victor Stinner <vstinner@python.org> | 2022-06-24 11:59:32 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-24 11:59:32 +0200 |
commit | d3a27e4c9339d787f2eb3e68fd3b12e303cb4a42 (patch) | |
tree | ea345636f50dc9dd7f2d4d343ba2c8c0874c248b | |
parent | d435a18c537a62a89a70005885e6e09f58997d8a (diff) | |
download | cpython-git-d3a27e4c9339d787f2eb3e68fd3b12e303cb4a42.tar.gz |
gh-94196: Remove gzip.GzipFile.filename attribute (#94197)
gzip: Remove the filename attribute of gzip.GzipFile,
deprecated since Python 2.6, use the name attribute instead. In write
mode, the filename attribute added '.gz' file extension if it was not
present.
-rw-r--r-- | Doc/library/gzip.rst | 4 | ||||
-rw-r--r-- | Doc/whatsnew/3.12.rst | 6 | ||||
-rw-r--r-- | Lib/gzip.py | 8 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Library/2022-06-24-09-41-41.gh-issue-94196.r2KyfS.rst | 4 |
4 files changed, 14 insertions, 8 deletions
diff --git a/Doc/library/gzip.rst b/Doc/library/gzip.rst index 8cea2649ee..1a2582d6a9 100644 --- a/Doc/library/gzip.rst +++ b/Doc/library/gzip.rst @@ -165,6 +165,10 @@ The module defines the following items: .. versionchanged:: 3.6 Accepts a :term:`path-like object`. + .. versionchanged:: 3.12 + Remove the ``filename`` attribute, use the :attr:`~GzipFile.name` + attribute instead. + .. deprecated:: 3.9 Opening :class:`GzipFile` for writing without specifying the *mode* argument is deprecated. diff --git a/Doc/whatsnew/3.12.rst b/Doc/whatsnew/3.12.rst index 8526a130b3..625790151f 100644 --- a/Doc/whatsnew/3.12.rst +++ b/Doc/whatsnew/3.12.rst @@ -218,6 +218,12 @@ Removed use :func:`os.urandom` or :func:`ssl.RAND_bytes` instead. (Contributed by Victor Stinner in :gh:`94199`.) +* :mod:`gzip`: Remove the ``filename`` attribute of :class:`gzip.GzipFile`, + deprecated since Python 2.6, use the :attr:`~gzip.GzipFile.name` attribute + instead. In write mode, the ``filename`` attribute added ``'.gz'`` file + extension if it was not present. + (Contributed by Victor Stinner in :gh:`94196`.) + Porting to Python 3.12 ====================== diff --git a/Lib/gzip.py b/Lib/gzip.py index 5b20e5ba69..8edcda4493 100644 --- a/Lib/gzip.py +++ b/Lib/gzip.py @@ -213,14 +213,6 @@ class GzipFile(_compression.BaseStream): self._write_gzip_header(compresslevel) @property - def filename(self): - import warnings - warnings.warn("use the name attribute", DeprecationWarning, 2) - if self.mode == WRITE and self.name[-3:] != ".gz": - return self.name + ".gz" - return self.name - - @property def mtime(self): """Last modification time read from stream, or None""" return self._buffer.raw._last_mtime diff --git a/Misc/NEWS.d/next/Library/2022-06-24-09-41-41.gh-issue-94196.r2KyfS.rst b/Misc/NEWS.d/next/Library/2022-06-24-09-41-41.gh-issue-94196.r2KyfS.rst new file mode 100644 index 0000000000..e22776f1b4 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2022-06-24-09-41-41.gh-issue-94196.r2KyfS.rst @@ -0,0 +1,4 @@ +:mod:`gzip`: Remove the ``filename`` attribute of :class:`gzip.GzipFile`, +deprecated since Python 2.6, use the :attr:`~gzip.GzipFile.name` attribute +instead. In write mode, the ``filename`` attribute added ``'.gz'`` file +extension if it was not present. Patch by Victor Stinner. |