summaryrefslogtreecommitdiffstats
path: root/Lib/smtpd.py
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2021-06-24 19:37:26 (GMT)
committerGitHub <noreply@github.com>2021-06-24 19:37:26 (GMT)
commit8488b85c6397fe58f17fc00e047044c959ac0b04 (patch)
tree379e7953b538a0f0aa5652e5613c4005c0dfa828 /Lib/smtpd.py
parent19459f8ce63cc7f905e3c1a55d09d4d10d245343 (diff)
downloadcpython-8488b85c6397fe58f17fc00e047044c959ac0b04.zip
cpython-8488b85c6397fe58f17fc00e047044c959ac0b04.tar.gz
cpython-8488b85c6397fe58f17fc00e047044c959ac0b04.tar.bz2
bpo-44498: Issue a deprecation warning on asynchat, asyncore and smtpd import (#26882)
* Issue a deprecation warning on smtpd import * Also issue DeprecationWarnings for asynchat and asyncore * Fix some tests * test___all__ requires the word 'module' or 'package' in the deprecation warning text, so add those to smtpd, asynchat, and asyncore. * In test_support, use pprint now instead of asyncore as the landmark. * Add What's New * Use ..deprecated:: * Use ..deprecated:: * Update Lib/smtpd.py Co-authored-by: Miro Hrončok <miro@hroncok.cz> * Update Doc/library/smtpd.rst Co-authored-by: Miro Hrončok <miro@hroncok.cz> * Import async{hat,ore} after the DeprecationWarning for this module Co-authored-by: Miro Hrončok <miro@hroncok.cz>
Diffstat (limited to 'Lib/smtpd.py')
-rwxr-xr-xLib/smtpd.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/Lib/smtpd.py b/Lib/smtpd.py
index d053602..1cd004f 100755
--- a/Lib/smtpd.py
+++ b/Lib/smtpd.py
@@ -76,8 +76,6 @@ import errno
import getopt
import time
import socket
-import asyncore
-import asynchat
import collections
from warnings import warn
from email._header_value_parser import get_addr_spec, get_angle_addr
@@ -86,6 +84,19 @@ __all__ = [
"SMTPChannel", "SMTPServer", "DebuggingServer", "PureProxy",
]
+warn(
+ 'The smtpd module is deprecated and unmaintained. Please see aiosmtpd '
+ '(https://aiosmtpd.readthedocs.io/) for the recommended replacement.',
+ DeprecationWarning,
+ stacklevel=2)
+
+
+# These are imported after the above warning so that users get the correct
+# deprecation warning.
+import asyncore
+import asynchat
+
+
program = sys.argv[0]
__version__ = 'Python SMTP proxy version 0.3'