Commit 90d00060 authored by Martin Panter's avatar Martin Panter

Issue #16484: Fix pydoc link and test on Windows, by Kaushik Nadikuditi

parent e5e80d07
...@@ -28,7 +28,7 @@ to a file named "<name>.html". ...@@ -28,7 +28,7 @@ to a file named "<name>.html".
Module docs for core modules are assumed to be in Module docs for core modules are assumed to be in
http://docs.python.org/X.Y/library/ https://docs.python.org/X.Y/library/
This can be overridden by setting the PYTHONDOCS environment variable This can be overridden by setting the PYTHONDOCS environment variable
to a different URL or to a local directory containing the Library to a different URL or to a local directory containing the Library
...@@ -395,6 +395,7 @@ class Doc: ...@@ -395,6 +395,7 @@ class Doc:
docloc = os.environ.get("PYTHONDOCS", self.PYTHONDOCS) docloc = os.environ.get("PYTHONDOCS", self.PYTHONDOCS)
basedir = os.path.normcase(basedir)
if (isinstance(object, type(os)) and if (isinstance(object, type(os)) and
(object.__name__ in ('errno', 'exceptions', 'gc', 'imp', (object.__name__ in ('errno', 'exceptions', 'gc', 'imp',
'marshal', 'posix', 'signal', 'sys', 'marshal', 'posix', 'signal', 'sys',
...@@ -402,7 +403,7 @@ class Doc: ...@@ -402,7 +403,7 @@ class Doc:
(file.startswith(basedir) and (file.startswith(basedir) and
not file.startswith(os.path.join(basedir, 'site-packages')))) and not file.startswith(os.path.join(basedir, 'site-packages')))) and
object.__name__ not in ('xml.etree', 'test.pydoc_mod')): object.__name__ not in ('xml.etree', 'test.pydoc_mod')):
if docloc.startswith("http://"): if docloc.startswith(("http://", "https://")):
docloc = "%s/%s" % (docloc.rstrip("/"), object.__name__.lower()) docloc = "%s/%s" % (docloc.rstrip("/"), object.__name__.lower())
else: else:
docloc = os.path.join(docloc, object.__name__.lower() + ".html") docloc = os.path.join(docloc, object.__name__.lower() + ".html")
......
...@@ -356,7 +356,7 @@ def get_pydoc_html(module): ...@@ -356,7 +356,7 @@ def get_pydoc_html(module):
def get_pydoc_link(module): def get_pydoc_link(module):
"Returns a documentation web link of a module" "Returns a documentation web link of a module"
dirname = os.path.dirname dirname = os.path.dirname
basedir = os.path.join(dirname(dirname(__file__))) basedir = dirname(dirname(__file__))
doc = pydoc.TextDoc() doc = pydoc.TextDoc()
loc = doc.getdocloc(module, basedir=basedir) loc = doc.getdocloc(module, basedir=basedir)
return loc return loc
......
...@@ -591,6 +591,10 @@ IDLE ...@@ -591,6 +591,10 @@ IDLE
Documentation Documentation
------------- -------------
- Issue #16484: Change the default PYTHONDOCS URL to "https:", and fix the
resulting links to use lowercase. Patch by Sean Rodman, test by Kaushik
Nadikuditi.
- Issue #24136: Document the new PEP 448 unpacking syntax of 3.5. - Issue #24136: Document the new PEP 448 unpacking syntax of 3.5.
- Issue #26736: Used HTTPS for external links in the documentation if possible. - Issue #26736: Used HTTPS for external links in the documentation if possible.
......
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