From: Vinay Sajip Date: Mon, 3 May 2010 15:11:53 +0000 (+0000) Subject: Issue #8576: logging updated to remove usage of find_unused_port(). X-Git-Tag: v2.7b2~114 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=27a1370ae0608d083ec1b4162d510cb7ec6a95f5;p=python Issue #8576: logging updated to remove usage of find_unused_port(). --- diff --git a/Lib/logging/config.py b/Lib/logging/config.py index 4f55c53ead..07b9d1a834 100644 --- a/Lib/logging/config.py +++ b/Lib/logging/config.py @@ -873,6 +873,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT): def run(self): server = self.rcvr(port=self.port, handler=self.hdlr, ready=self.ready) + if self.port == 0: + self.port = server.server_address[1] self.ready.set() global _listener logging._acquireLock() diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 0211f56074..ed17d15f2e 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -38,8 +38,7 @@ from SocketServer import ThreadingTCPServer, StreamRequestHandler import struct import sys import tempfile -from test.test_support import captured_stdout, run_with_locale, run_unittest,\ - find_unused_port +from test.test_support import captured_stdout, run_with_locale, run_unittest import textwrap import unittest import warnings @@ -1664,10 +1663,12 @@ class ConfigDictTest(BaseTest): @unittest.skipUnless(threading, 'listen() needs threading to work') def setup_via_listener(self, text): - port = find_unused_port() - t = logging.config.listen(port) + # Ask for a randomly assigned port (by using port 0) + t = logging.config.listen(0) t.start() t.ready.wait() + # Now get the port allocated + port = t.port t.ready.clear() try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) diff --git a/Misc/NEWS b/Misc/NEWS index f4f4d2fb61..e024d60a9b 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -31,6 +31,8 @@ Core and Builtins Library ------- +- Issue #8576: logging updated to remove usage of find_unused_port(). + - Issue #4687: Fix accuracy of garbage collection runtimes displayed with gc.DEBUG_STATS.