]> granicus.if.org Git - python/commitdiff
bpo-37320: Remove openfp() of aifc, sunau and wave (GH-14169)
authorVictor Stinner <vstinner@redhat.com>
Mon, 17 Jun 2019 22:00:24 +0000 (00:00 +0200)
committerGitHub <noreply@github.com>
Mon, 17 Jun 2019 22:00:24 +0000 (00:00 +0200)
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.

12 files changed:
Doc/library/sunau.rst
Doc/library/wave.rst
Doc/whatsnew/3.9.rst
Lib/aifc.py
Lib/sunau.py
Lib/test/audiotests.py
Lib/test/test_aifc.py
Lib/test/test_pyclbr.py
Lib/test/test_sunau.py
Lib/test/test_wave.py
Lib/wave.py
Misc/NEWS.d/next/Library/2019-06-17-22-10-37.bpo-37320.ffieYa.rst [new file with mode: 0644]

index 2064fd7e20bfc2acf616144071d5f88649898d2c..aad6f93b6bff18ebc2f431481fd4d7631ccbbbe1 100644 (file)
@@ -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
index 60d19a8d5f7dc079d35723aee36d1ea30e6d2a53..f63e0d3dce19c6383828cf2bedbc587f88f2888b 100644 (file)
@@ -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
index 3da8b1685bde60ee1946b423e177bf1edd17294d..446c8b9719e0fabb45e4f3284230086a8d3c835a 100644 (file)
@@ -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
index 1916e7ef8e7eab8d9e425d80f0d7fa4b1f146936..ed5da7d8936fdd94301accd4ac725ab0e5fe8877 100644 (file)
@@ -138,7 +138,7 @@ import struct
 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
index 129502b0b4177ad42f4555004819adb5dd82be3d..79750a9d23ebde13ac82e01be647fd151266b79c 100644 (file)
@@ -104,7 +104,7 @@ is destroyed.
 """
 
 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)
index 0dad01722922a9a8f5a82dd1e1bda9e8487c0a42..d3e8e9ee44a13467f57d56cbffb1c1295fc28c64 100644 (file)
@@ -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 @@ class AudioTests:
             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):
index c74758413d6ce1f3068f10790195208578e0822f..5a95099cc5cdfe838c618cf0c40a690c5a2b1830 100644 (file)
@@ -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 @@ class AifcMiscTest(audiotests.AudioMiscTests, unittest.TestCase):
         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 @@ class AifcMiscTest(audiotests.AudioMiscTests, unittest.TestCase):
         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'))
index 0b3934f6226e3673508f2613cf9a855a7da5aa3e..53130402131240baa724869cf92e3a0e57240cfc 100644 (file)
@@ -225,9 +225,7 @@ class PyclbrTest(TestCase):
         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
index 470a1007b4d48f84c7fd93e90fc25fa91c79f89a..7f1c0a5cbdeda95419cd80b994b970d03bd6f723 100644 (file)
@@ -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):
index 8a42f8e4710569684696b567008fa3445f805ea6..eb231cb19c6d0a841a071e7d99298c41b7ccb384 100644 (file)
@@ -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)
index f155879a9a76aba7a0c1c5d87b5674fe4bc23c8d..100420db9e162017b3fd3aca8c74ca09d9dabd37 100644 (file)
@@ -71,9 +71,15 @@ The close() method is called automatically when the class instance
 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 @@ WAVE_FORMAT_PCM = 0x0001
 
 _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 (file)
index 0000000..bc57452
--- /dev/null
@@ -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.