Commit 311b2a67 authored by R David Murray's avatar R David Murray

#6623: Add explicit deprecation warning for ftplib.Netrc.

parent fb96d12e
......@@ -39,6 +39,7 @@ python ftplib.py -d localhost -l -p -l
import os
import sys
import socket
import warnings
from socket import _GLOBAL_DEFAULT_TIMEOUT
__all__ = ["FTP","Netrc"]
......@@ -953,6 +954,8 @@ class Netrc:
__defacct = None
def __init__(self, filename=None):
warnings.warn("This class is deprecated, use the netrc module instead",
DeprecationWarning, 2)
if filename is None:
if "HOME" in os.environ:
filename = os.path.join(os.environ["HOME"],
......
......@@ -985,8 +985,19 @@ class TestTimeouts(TestCase):
ftp.close()
class TestNetrcDeprecation(TestCase):
def test_deprecation(self):
with support.temp_cwd(), support.EnvironmentVarGuard() as env:
env['HOME'] = os.getcwd()
open('.netrc', 'w').close()
with self.assertWarns(DeprecationWarning):
ftplib.Netrc()
def test_main():
tests = [TestFTPClass, TestTimeouts]
tests = [TestFTPClass, TestTimeouts, TestNetrcDeprecation]
if support.IPV6_ENABLED:
tests.append(TestIPv6Environment)
......
......@@ -260,6 +260,9 @@ Core and Builtins
Library
-------
- Issue #6623: Added explicit DeprecationWarning for ftplib.netrc, which has
been deprecated and undocumented for a long time.
- Issue #13700: Fix byte/string handling in imaplib authentication when an
authobject is specified.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment