[Python-checkins] bpo-37320: Remove openfp() of aifc, sunau and wave (GH-14169)

Victor Stinner webhook-mailer at python.org
Mon Jun 17 18:00:30 EDT 2019


https://github.com/python/cpython/commit/ac7b1a3f32cc81520e8962352294006d65744028
commit: ac7b1a3f32cc81520e8962352294006d65744028
branch: master
author: Victor Stinner <vstinner at redhat.com>
committer: GitHub <noreply at github.com>
date: 2019年06月18日T00:00:24+02:00
summary:
bpo-37320: Remove openfp() of aifc, sunau and wave (GH-14169)
aifc.openfp() alias to aifc.open(), sunau.openfp() alias to
sunau.open(), and wave.openfp() alias to wave.open() have been
removed. They were deprecated since Python 3.7.
files:
A Misc/NEWS.d/next/Library/2019-06-17-22-10-37.bpo-37320.ffieYa.rst
M Doc/library/sunau.rst
M Doc/library/wave.rst
M Doc/whatsnew/3.9.rst
M Lib/aifc.py
M Lib/sunau.py
M Lib/test/audiotests.py
M Lib/test/test_aifc.py
M Lib/test/test_pyclbr.py
M Lib/test/test_sunau.py
M Lib/test/test_wave.py
M Lib/wave.py
diff --git a/Doc/library/sunau.rst b/Doc/library/sunau.rst
index 2064fd7e20bf..aad6f93b6bff 100644
--- a/Doc/library/sunau.rst
+++ b/Doc/library/sunau.rst
@@ -59,13 +59,6 @@ The :mod:`sunau` module defines the following functions:
 or ``'wb'`` returns an :class:`AU_write` object.
 
 
-.. function:: openfp(file, mode)
-
- A synonym for :func:`.open`, maintained for backwards compatibility.
-
- .. deprecated-removed:: 3.7 3.9
-
-
 The :mod:`sunau` module defines the following exception:
 
 .. exception:: Error
diff --git a/Doc/library/wave.rst b/Doc/library/wave.rst
index 60d19a8d5f7d..f63e0d3dce19 100644
--- a/Doc/library/wave.rst
+++ b/Doc/library/wave.rst
@@ -47,13 +47,6 @@ The :mod:`wave` module defines the following function and exception:
 .. versionchanged:: 3.4
 Added support for unseekable files.
 
-.. function:: openfp(file, mode)
-
- A synonym for :func:`.open`, maintained for backwards compatibility.
-
- .. deprecated-removed:: 3.7 3.9
-
-
 .. exception:: Error
 
 An error raised when something is impossible because it violates the WAV
diff --git a/Doc/whatsnew/3.9.rst b/Doc/whatsnew/3.9.rst
index 3da8b1685bde..446c8b9719e0 100644
--- a/Doc/whatsnew/3.9.rst
+++ b/Doc/whatsnew/3.9.rst
@@ -122,9 +122,14 @@ Deprecated
 Removed
 =======
 
-``_dummy_thread`` and ``dummy_threading`` modules have been removed. These
-modules were deprecated since Python 3.7 which requires threading support.
-(Contributed by Victor Stinner in :issue:`37312`.)
+* ``_dummy_thread`` and ``dummy_threading`` modules have been removed. These
+ modules were deprecated since Python 3.7 which requires threading support.
+ (Contributed by Victor Stinner in :issue:`37312`.)
+
+* ``aifc.openfp()`` alias to ``aifc.open()``, ``sunau.openfp()`` alias to
+ ``sunau.open()``, and ``wave.openfp()`` alias to ``wave.open()`` have been
+ removed. They were deprecated since Python 3.7.
+ (Contributed by Victor Stinner in :issue:`37320`.)
 
 
 Porting to Python 3.9
diff --git a/Lib/aifc.py b/Lib/aifc.py
index 1916e7ef8e7e..ed5da7d8936f 100644
--- a/Lib/aifc.py
+++ b/Lib/aifc.py
@@ -138,7 +138,7 @@
 import builtins
 import warnings
 
-__all__ = ["Error", "open", "openfp"]
+__all__ = ["Error", "open"]
 
 class Error(Exception):
 pass
@@ -920,10 +920,6 @@ def open(f, mode=None):
 else:
 raise Error("mode must be 'r', 'rb', 'w', or 'wb'")
 
-def openfp(f, mode=None):
- warnings.warn("aifc.openfp is deprecated since Python 3.7. "
- "Use aifc.open instead.", DeprecationWarning, stacklevel=2)
- return open(f, mode=mode)
 
 if __name__ == '__main__':
 import sys
diff --git a/Lib/sunau.py b/Lib/sunau.py
index 129502b0b417..79750a9d23eb 100644
--- a/Lib/sunau.py
+++ b/Lib/sunau.py
@@ -104,7 +104,7 @@
 """
 
 from collections import namedtuple
-import warnings
+
 
 _sunau_params = namedtuple('_sunau_params',
 'nchannels sampwidth framerate nframes comptype compname')
@@ -524,8 +524,3 @@ def open(f, mode=None):
 return Au_write(f)
 else:
 raise Error("mode must be 'r', 'rb', 'w', or 'wb'")
-
-def openfp(f, mode=None):
- warnings.warn("sunau.openfp is deprecated since Python 3.7. "
- "Use sunau.open instead.", DeprecationWarning, stacklevel=2)
- return open(f, mode=mode)
diff --git a/Lib/test/audiotests.py b/Lib/test/audiotests.py
index 0dad01722922..d3e8e9ee44a1 100644
--- a/Lib/test/audiotests.py
+++ b/Lib/test/audiotests.py
@@ -1,7 +1,6 @@
 from test.support import findfile, TESTFN, unlink
 import array
 import io
-from unittest import mock
 import pickle
 
 
@@ -50,17 +49,6 @@ def check_params(self, f, nchannels, sampwidth, framerate, nframes,
 self.assertEqual(pickle.loads(dump), params)
 
 
-class AudioMiscTests(AudioTests):
-
- def test_openfp_deprecated(self):
- arg = "arg"
- mode = "mode"
- with mock.patch(f"{self.module.__name__}.open") as mock_open, \
- self.assertWarns(DeprecationWarning):
- self.module.openfp(arg, mode=mode)
- mock_open.assert_called_with(arg, mode=mode)
-
-
 class AudioWriteTests(AudioTests):
 
 def create_file(self, testfile):
diff --git a/Lib/test/test_aifc.py b/Lib/test/test_aifc.py
index c74758413d6c..5a95099cc5cd 100644
--- a/Lib/test/test_aifc.py
+++ b/Lib/test/test_aifc.py
@@ -143,13 +143,12 @@ class AifcALAWTest(AifcTest, unittest.TestCase):
 frames = byteswap(frames, 2)
 
 
-class AifcMiscTest(audiotests.AudioMiscTests, unittest.TestCase):
- module = aifc
-
+class AifcMiscTest(unittest.TestCase):
 def test_skipunknown(self):
 #Issue 2245
 #This file contains chunk types aifc doesn't recognize.
- self.f = aifc.open(findfile('Sine-1000Hz-300ms.aif'))
+ f = aifc.open(findfile('Sine-1000Hz-300ms.aif'))
+ f.close()
 
 def test_close_opened_files_on_error(self):
 non_aifc_file = findfile('pluck-pcm8.wav', subdir='audiodata')
@@ -172,7 +171,8 @@ def test_params_added(self):
 f.setparams((1, 1, 1, 1, b'NONE', b''))
 f.close()
 
- f = self.f = aifc.open(TESTFN, 'rb')
+ f = aifc.open(TESTFN, 'rb')
+ self.addCleanup(f.close)
 params = f.getparams()
 self.assertEqual(params.nchannels, f.getnchannels())
 self.assertEqual(params.sampwidth, f.getsampwidth())
@@ -208,7 +208,8 @@ def test_read_markers(self):
 fout.setmark(2, 0, b'even')
 fout.writeframes(b'\x00')
 fout.close()
- f = self.f = aifc.open(TESTFN, 'rb')
+ f = aifc.open(TESTFN, 'rb')
+ self.addCleanup(f.close)
 self.assertEqual(f.getmarkers(), [(1, 0, b'odd'), (2, 0, b'even')])
 self.assertEqual(f.getmark(1), (1, 0, b'odd'))
 self.assertEqual(f.getmark(2), (2, 0, b'even'))
diff --git a/Lib/test/test_pyclbr.py b/Lib/test/test_pyclbr.py
index 0b3934f6226e..531304021312 100644
--- a/Lib/test/test_pyclbr.py
+++ b/Lib/test/test_pyclbr.py
@@ -225,9 +225,7 @@ def test_others(self):
 cm('random', ignore=('Random',)) # from _random import Random as CoreGenerator
 cm('cgi', ignore=('log',)) # set with = in module
 cm('pickle', ignore=('partial', 'PickleBuffer'))
- # TODO(briancurtin): openfp is deprecated as of 3.7.
- # Update this once it has been removed.
- cm('aifc', ignore=('openfp', '_aifc_params')) # set with = in module
+ cm('aifc', ignore=('_aifc_params',)) # set with = in module
 cm('sre_parse', ignore=('dump', 'groups', 'pos')) # from sre_constants import *; property
 cm('pdb')
 cm('pydoc', ignore=('input', 'output',)) # properties
diff --git a/Lib/test/test_sunau.py b/Lib/test/test_sunau.py
index 470a1007b4d4..7f1c0a5cbded 100644
--- a/Lib/test/test_sunau.py
+++ b/Lib/test/test_sunau.py
@@ -119,10 +119,6 @@ class SunauULAWTest(SunauTest, unittest.TestCase):
 frames = byteswap(frames, 2)
 
 
-class SunauMiscTests(audiotests.AudioMiscTests, unittest.TestCase):
- module = sunau
-
-
 class SunauLowLevelTest(unittest.TestCase):
 
 def test_read_bad_magic_number(self):
diff --git a/Lib/test/test_wave.py b/Lib/test/test_wave.py
index 8a42f8e47105..eb231cb19c6d 100644
--- a/Lib/test/test_wave.py
+++ b/Lib/test/test_wave.py
@@ -105,9 +105,7 @@ class WavePCM32Test(WaveTest, unittest.TestCase):
 frames = byteswap(frames, 4)
 
 
-class MiscTestCase(audiotests.AudioMiscTests, unittest.TestCase):
- module = wave
-
+class MiscTestCase(unittest.TestCase):
 def test__all__(self):
 blacklist = {'WAVE_FORMAT_PCM'}
 support.check__all__(self, wave, blacklist=blacklist)
diff --git a/Lib/wave.py b/Lib/wave.py
index f155879a9a76..100420db9e16 100644
--- a/Lib/wave.py
+++ b/Lib/wave.py
@@ -71,9 +71,15 @@
 is destroyed.
 """
 
+from chunk import Chunk
+from collections import namedtuple
+import audioop
 import builtins
+import struct
+import sys
+
 
-__all__ = ["open", "openfp", "Error", "Wave_read", "Wave_write"]
+__all__ = ["open", "Error", "Wave_read", "Wave_write"]
 
 class Error(Exception):
 pass
@@ -82,13 +88,6 @@ class Error(Exception):
 
 _array_fmts = None, 'b', 'h', None, 'i'
 
-import audioop
-import struct
-import sys
-from chunk import Chunk
-from collections import namedtuple
-import warnings
-
 _wave_params = namedtuple('_wave_params',
 'nchannels sampwidth framerate nframes comptype compname')
 
@@ -512,8 +511,3 @@ def open(f, mode=None):
 return Wave_write(f)
 else:
 raise Error("mode must be 'r', 'rb', 'w', or 'wb'")
-
-def openfp(f, mode=None):
- warnings.warn("wave.openfp is deprecated since Python 3.7. "
- "Use wave.open instead.", DeprecationWarning, stacklevel=2)
- return open(f, mode=mode)
diff --git a/Misc/NEWS.d/next/Library/2019-06-17-22-10-37.bpo-37320.ffieYa.rst b/Misc/NEWS.d/next/Library/2019-06-17-22-10-37.bpo-37320.ffieYa.rst
new file mode 100644
index 000000000000..bc5745261cfa
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2019-06-17-22-10-37.bpo-37320.ffieYa.rst
@@ -0,0 +1,3 @@
+``aifc.openfp()`` alias to ``aifc.open()``, ``sunau.openfp()`` alias to
+``sunau.open()``, and ``wave.openfp()`` alias to ``wave.open()`` have been
+removed. They were deprecated since Python 3.7.


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /