diff --git a/Doc/library/nntplib.rst b/Doc/library/nntplib.rst index ea08fcaac87..0f978067349 100644 --- a/Doc/library/nntplib.rst +++ b/Doc/library/nntplib.rst @@ -52,24 +52,26 @@ headers, and that you have right to post on the particular newsgroup):: The module itself defines the following classes: -.. class:: NNTP(host, port=119, user=None, password=None, readermode=None, usenetrc=True, [timeout]) +.. class:: NNTP(host, port=119, user=None, password=None, readermode=None, usenetrc=False, [timeout]) Return a new :class:`NNTP` object, representing a connection to the NNTP server running on host *host*, listening at port *port*. An optional *timeout* can be specified for the socket connection. If the optional *user* and *password* are provided, or if suitable credentials are present in :file:`/.netrc` and the optional flag *usenetrc* - is true (the default), the ``AUTHINFO USER`` and ``AUTHINFO PASS`` commands - are used to identify and authenticate the user to the server. If the optional + is true, the ``AUTHINFO USER`` and ``AUTHINFO PASS`` commands are used + to identify and authenticate the user to the server. If the optional flag *readermode* is true, then a ``mode reader`` command is sent before authentication is performed. Reader mode is sometimes necessary if you are connecting to an NNTP server on the local machine and intend to call reader-specific commands, such as ``group``. If you get unexpected :exc:`NNTPPermanentError`\ s, you might need to set *readermode*. - *readermode* defaults to ``None``. *usenetrc* defaults to ``True``. + + .. versionchanged:: 3.2 + *usenetrc* is now False by default. -.. class:: NNTP_SSL(host, port=563, user=None, password=None, ssl_context=None, readermode=None, usenetrc=True, [timeout]) +.. class:: NNTP_SSL(host, port=563, user=None, password=None, ssl_context=None, readermode=None, usenetrc=False, [timeout]) Return a new :class:`NNTP_SSL` object, representing an encrypted connection to the NNTP server running on host *host*, listening at diff --git a/Lib/nntplib.py b/Lib/nntplib.py index 79611b36803..70a75b60d27 100644 --- a/Lib/nntplib.py +++ b/Lib/nntplib.py @@ -308,7 +308,7 @@ class _NNTPBase: readermode=None, timeout=_GLOBAL_DEFAULT_TIMEOUT): """Initialize an instance. Arguments: - file: file-like object (open for read/write in binary mode) - - host: hostname of the server (used if `usenetrc` is True) + - host: hostname of the server - readermode: if true, send 'mode reader' command after connecting. - timeout: timeout (in seconds) used for socket connections @@ -986,7 +986,7 @@ class _NNTPBase: class NNTP(_NNTPBase): def __init__(self, host, port=NNTP_PORT, user=None, password=None, - readermode=None, usenetrc=True, + readermode=None, usenetrc=False, timeout=_GLOBAL_DEFAULT_TIMEOUT): """Initialize an instance. Arguments: - host: hostname to connect to @@ -1026,7 +1026,7 @@ if _have_ssl: def __init__(self, host, port=NNTP_SSL_PORT, user=None, password=None, ssl_context=None, - readermode=None, usenetrc=True, + readermode=None, usenetrc=False, timeout=_GLOBAL_DEFAULT_TIMEOUT): """This works identically to NNTP.__init__, except for the change in default port and the `ssl_context` argument for SSL connections. diff --git a/Misc/NEWS b/Misc/NEWS index 1c0da0c48c7..519c1899e9f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -60,6 +60,8 @@ Core and Builtins Library ------- +- ``usenetrc`` is now false by default for NNTP objects. + - Issue #1926: Add support for NNTP over SSL on port 563, as well as STARTTLS. Patch by Andrew Vant.