From 5a268534d590ae455dc0634ce21662b5eedb7a8e Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 12 Apr 2022 20:19:27 -0700 Subject: [PATCH 1/2] Deprecate nntplib --- Lib/nntplib.py | 3 +++ Lib/test/support/socket_helper.py | 4 ++-- Lib/test/test_nntplib.py | 4 ++-- .../Library/2022-04-12-20-19-10.gh-issue-91217.acd4h9.rst | 1 + 4 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 Misc/NEWS.d/next/Library/2022-04-12-20-19-10.gh-issue-91217.acd4h9.rst diff --git a/Lib/nntplib.py b/Lib/nntplib.py index f6e746e7c95c5bf..dddea059982be13 100644 --- a/Lib/nntplib.py +++ b/Lib/nntplib.py @@ -68,6 +68,7 @@ import collections import datetime import sys +import warnings try: import ssl @@ -85,6 +86,8 @@ "decode_header", ] +warnings._deprecated(__name__, remove=(3, 13)) + # maximal line length when calling readline(). This is to prevent # reading arbitrary length lines. RFC 3977 limits NNTP line length to # 512 characters, including CRLF. We have selected 2048 just to be on diff --git a/Lib/test/support/socket_helper.py b/Lib/test/support/socket_helper.py index 0ee7a5d69a1b30b..754af181ec922ea 100644 --- a/Lib/test/support/socket_helper.py +++ b/Lib/test/support/socket_helper.py @@ -5,7 +5,7 @@ import sys from .. import support - +from . import warnings_helper HOST = "localhost" HOSTv4 = "127.0.0.1" @@ -190,7 +190,7 @@ def get_socket_conn_refused_errs(): def transient_internet(resource_name, *, timeout=_NOT_SET, errnos=()): """Return a context manager that raises ResourceDenied when various issues with the internet connection manifest themselves as exceptions.""" - import nntplib + nntplib = warnings_helper.import_deprecated("nntplib") import urllib.error if timeout is _NOT_SET: timeout = support.INTERNET_TIMEOUT diff --git a/Lib/test/test_nntplib.py b/Lib/test/test_nntplib.py index 4f0592188f84438..9812c055193517d 100644 --- a/Lib/test/test_nntplib.py +++ b/Lib/test/test_nntplib.py @@ -5,13 +5,13 @@ import unittest import functools import contextlib -import nntplib import os.path import re import threading from test import support -from test.support import socket_helper +from test.support import socket_helper, warnings_helper +nntplib = warnings_helper.import_deprecated("nntplib") from nntplib import NNTP, GroupInfo from unittest.mock import patch try: diff --git a/Misc/NEWS.d/next/Library/2022-04-12-20-19-10.gh-issue-91217.acd4h9.rst b/Misc/NEWS.d/next/Library/2022-04-12-20-19-10.gh-issue-91217.acd4h9.rst new file mode 100644 index 000000000000000..4a74b9d0851429c --- /dev/null +++ b/Misc/NEWS.d/next/Library/2022-04-12-20-19-10.gh-issue-91217.acd4h9.rst @@ -0,0 +1 @@ +Deprecate nntplib. From eb383d35d1e7cedd57f3e4b83161392d2ee4c749 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Thu, 14 Apr 2022 12:51:03 -0700 Subject: [PATCH 2/2] Add a What's New entry --- Doc/whatsnew/3.11.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/Doc/whatsnew/3.11.rst b/Doc/whatsnew/3.11.rst index f8e86f6ba349b2b..f9a8fc43a6b42e9 100644 --- a/Doc/whatsnew/3.11.rst +++ b/Doc/whatsnew/3.11.rst @@ -858,6 +858,7 @@ Deprecated * :mod:`crypt` * :mod:`imghdr` * :mod:`msilib` + * :mod:`nntplib` (Contributed by Brett Cannon in :issue:`47061`.)