]> granicus.if.org Git - python/commitdiff
Issue #18905: "pydoc -p 0" now outputs actually used port. Based on patch by
authorSerhiy Storchaka <storchaka@gmail.com>
Thu, 27 Nov 2014 21:45:37 +0000 (23:45 +0200)
committerSerhiy Storchaka <storchaka@gmail.com>
Thu, 27 Nov 2014 21:45:37 +0000 (23:45 +0200)
Wieland Hoffmann.

Lib/pydoc.py
Misc/NEWS

index dfa1f8e36bd7910540acfc6a01b3b75229a8d609..594e6c789e3e750581c233709506bd69fc5ddba2 100755 (executable)
@@ -17,7 +17,8 @@ Run "pydoc -k <keyword>" to search for a keyword in the synopsis lines
 of all available modules.
 
 Run "pydoc -p <port>" to start an HTTP server on a given port on the
-local machine to generate documentation web pages.
+local machine to generate documentation web pages.  Port number 0 can be
+used to get an arbitrary unused port.
 
 For platforms without a command line, "pydoc -g" starts the HTTP server
 and also pops up a little window for controlling it.
@@ -2098,7 +2099,6 @@ pydoc</strong> by Ka-Ping Yee &lt;ping@lfw.org&gt;</font>'''
         def __init__(self, port, callback):
             host = 'localhost'
             self.address = (host, port)
-            self.url = 'http://%s:%d/' % (host, port)
             self.callback = callback
             self.base.__init__(self, self.address, self.handler)
 
@@ -2111,6 +2111,7 @@ pydoc</strong> by Ka-Ping Yee &lt;ping@lfw.org&gt;</font>'''
 
         def server_activate(self):
             self.base.server_activate(self)
+            self.url = 'http://%s:%d/' % (self.address[0], self.server_port)
             if self.callback: self.callback(self)
 
     DocServer.base = BaseHTTPServer.HTTPServer
@@ -2384,7 +2385,8 @@ def cli():
     Search for a keyword in the synopsis lines of all available modules.
 
 %s -p <port>
-    Start an HTTP server on the given port on the local machine.
+    Start an HTTP server on the given port on the local machine.  Port
+    number 0 can be used to get an arbitrary unused port.
 
 %s -g
     Pop up a graphical interface for finding and serving documentation.
index b630250258b1834ff94dfec2d630ec0d1bb68ced..d3bf2dedc948891bf85d9faa09e803daa3789f30 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -22,6 +22,12 @@ Documentation
 - Issue #21514: The documentation of the json module now refers to new JSON RFC
   7159 instead of obsoleted RFC 4627.
 
+Tools/Demos
+-----------
+
+- Issue #18905: "pydoc -p 0" now outputs actually used port.  Based on patch by
+  Wieland Hoffmann.
+
 
 What's New in Python 2.7.9 release candidate 1?
 ===============================================