[Python-checkins] bpo-39353: binascii.crc_hqx() is no longer deprecated (GH-18276)

Victor Stinner webhook-mailer at python.org
Thu Jan 30 03:56:45 EST 2020


https://github.com/python/cpython/commit/c38fd0df2b4cbc1cc906d8dfe23f63b67cd6965f
commit: c38fd0df2b4cbc1cc906d8dfe23f63b67cd6965f
branch: master
author: Victor Stinner <vstinner at python.org>
committer: GitHub <noreply at github.com>
date: 2020-01-30T09:56:40+01:00
summary:

bpo-39353: binascii.crc_hqx() is no longer deprecated (GH-18276)

The binascii.crc_hqx() function is no longer deprecated.

files:
A Misc/NEWS.d/next/Library/2020-01-30-09-07-16.bpo-39353.wTl9hc.rst
M Doc/library/binascii.rst
M Doc/whatsnew/3.9.rst
M Lib/binhex.py
M Lib/test/test_binascii.py
M Modules/binascii.c

diff --git a/Doc/library/binascii.rst b/Doc/library/binascii.rst
index aa2a27084c34c..2c0c1bce5d7f8 100644
--- a/Doc/library/binascii.rst
+++ b/Doc/library/binascii.rst
@@ -132,8 +132,6 @@ The :mod:`binascii` module defines the following functions:
    *x*:sup:`16` + *x*:sup:`12` + *x*:sup:`5` + 1, often represented as
    0x1021.  This CRC is used in the binhex4 format.
 
-   .. deprecated:: 3.9
-
 
 .. function:: crc32(data[, value])
 
diff --git a/Doc/whatsnew/3.9.rst b/Doc/whatsnew/3.9.rst
index a4c4266bfc35d..c8f407751ec5e 100644
--- a/Doc/whatsnew/3.9.rst
+++ b/Doc/whatsnew/3.9.rst
@@ -379,7 +379,6 @@ Deprecated
 
   * :func:`~binascii.b2a_hqx`, :func:`~binascii.a2b_hqx`
   * :func:`~binascii.rlecode_hqx`, :func:`~binascii.rledecode_hqx`
-  * :func:`~binascii.crc_hqx`
 
   (Contributed by Victor Stinner in :issue:`39353`.)
 
diff --git a/Lib/binhex.py b/Lib/binhex.py
index 6ff38dd8229c8..9559f46d5a288 100644
--- a/Lib/binhex.py
+++ b/Lib/binhex.py
@@ -200,8 +200,7 @@ def _writeinfo(self, name, finfo):
         self._writecrc()
 
     def _write(self, data):
-        with _ignore_deprecation_warning():
-            self.crc = binascii.crc_hqx(data, self.crc)
+        self.crc = binascii.crc_hqx(data, self.crc)
         self.ofp.write(data)
 
     def _writecrc(self):
@@ -396,8 +395,7 @@ def __init__(self, ifp):
 
     def _read(self, len):
         data = self.ifp.read(len)
-        with _ignore_deprecation_warning():
-            self.crc = binascii.crc_hqx(data, self.crc)
+        self.crc = binascii.crc_hqx(data, self.crc)
         return data
 
     def _checkcrc(self):
diff --git a/Lib/test/test_binascii.py b/Lib/test/test_binascii.py
index 649edbe295413..45327953a7701 100644
--- a/Lib/test/test_binascii.py
+++ b/Lib/test/test_binascii.py
@@ -435,9 +435,6 @@ def test_deprecated_warnings(self):
         with self.assertWarns(DeprecationWarning):
             self.assertEqual(binascii.rledecode_hqx(b'a\x90\n'), b'a' * 10)
 
-        with self.assertWarns(DeprecationWarning):
-            self.assertEqual(binascii.crc_hqx(b'abc', 0), 40406)
-
 
 class ArrayBinASCIITest(BinASCIITest):
     def type2test(self, s):
diff --git a/Misc/NEWS.d/next/Library/2020-01-30-09-07-16.bpo-39353.wTl9hc.rst b/Misc/NEWS.d/next/Library/2020-01-30-09-07-16.bpo-39353.wTl9hc.rst
new file mode 100644
index 0000000000000..b6db7c5c58842
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2020-01-30-09-07-16.bpo-39353.wTl9hc.rst
@@ -0,0 +1 @@
+The :func:`binascii.crc_hqx` function is no longer deprecated.
diff --git a/Modules/binascii.c b/Modules/binascii.c
index c6da3e0a635bc..e428b0d6f963f 100644
--- a/Modules/binascii.c
+++ b/Modules/binascii.c
@@ -965,11 +965,6 @@ static PyObject *
 binascii_crc_hqx_impl(PyObject *module, Py_buffer *data, unsigned int crc)
 /*[clinic end generated code: output=2fde213d0f547a98 input=56237755370a951c]*/
 {
-    if (PyErr_WarnEx(PyExc_DeprecationWarning,
-                     "binascii.crc_hqx() is deprecated", 1) < 0) {
-        return NULL;
-    }
-
     const unsigned char *bin_data;
     Py_ssize_t len;
 



More information about the Python-checkins mailing list