From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Mon, 13 Jul 2026 10:09:39 +0000 (+0200) Subject: [3.15] gh-89696: Fix `loop.sock_connect` docs on address resolution (GH-153651) ... X-Git-Tag: v3.15.0b4~30 X-Git-Url: http://git.ipfire.org/index.cgi?a=commitdiff_plain;h=9efded46646ae25de8e8c6fdef85f2f7d188dfd3;p=thirdparty%2FPython%2Fcpython.git [3.15] gh-89696: Fix `loop.sock_connect` docs on address resolution (GH-153651) (#153652) gh-89696: Fix `loop.sock_connect` docs on address resolution (GH-153651) (cherry picked from commit 1fece4457032382947c7c2a5c9e95dc106ca7a7d) Co-authored-by: Kumar Aditya --- diff --git a/Doc/library/asyncio-eventloop.rst b/Doc/library/asyncio-eventloop.rst index 79c9516cda2d..865f5e3be39a 100644 --- a/Doc/library/asyncio-eventloop.rst +++ b/Doc/library/asyncio-eventloop.rst @@ -1156,12 +1156,21 @@ convenient. *sock* must be a non-blocking socket. + With :class:`SelectorEventLoop`, *address* does not need to be resolved: + for :const:`~socket.AF_INET` and :const:`~socket.AF_INET6` sockets, + ``sock_connect`` first checks whether *address* is already resolved by + calling :func:`socket.inet_pton`, and uses :meth:`loop.getaddrinfo` to + resolve it if it is not. + + :class:`ProactorEventLoop`, the default event loop on Windows, does not + resolve *address*. The host must already be a numeric IP address; passing + a host name raises :exc:`OSError`. Resolve the address with + :meth:`loop.getaddrinfo` first, or use :meth:`loop.create_connection`, + which resolves the address on every platform. + .. versionchanged:: 3.5.2 - ``address`` no longer needs to be resolved. ``sock_connect`` - will try to check if the *address* is already resolved by calling - :func:`socket.inet_pton`. If not, - :meth:`loop.getaddrinfo` will be used to resolve the - *address*. + With :class:`SelectorEventLoop`, ``address`` no longer needs to be + resolved. .. seealso::