bpo-38786: Add parsing of https links to pydoc (GH-17143)

This commit is contained in:
Kirill 2019-11-13 19:13:53 +03:00 committed by Tal Einat
parent d89cea15ad
commit 61289d4366
4 changed files with 14 additions and 2 deletions

View file

@ -585,7 +585,7 @@ def markup(self, text, escape=None, funcs={}, classes={}, methods={}):
escape = escape or self.escape
results = []
here = 0
pattern = re.compile(r'\b((http|ftp)://\S+[\w/]|'
pattern = re.compile(r'\b((http|https|ftp)://\S+[\w/]|'
r'RFC[- ]?(\d+)|'
r'PEP[- ]?(\d+)|'
r'(self\.)?(\w+))')

View file

@ -1311,6 +1311,17 @@ async def an_async_generator():
'async <a name="-an_async_generator"><strong>an_async_generator',
html)
def test_html_for_https_links(self):
def a_fn_with_https_link():
"""a link https://localhost/"""
pass
html = pydoc.HTMLDoc().document(a_fn_with_https_link)
self.assertIn(
'<a href="https://localhost/">https://localhost/</a>',
html
)
class PydocServerTest(unittest.TestCase):
"""Tests for pydoc._start_server"""

View file

@ -732,7 +732,7 @@ def markup(self, text, escape=None, funcs={}, classes={}, methods={}):
# hyperlinking of arbitrary strings being used as method
# names. Only methods with names consisting of word characters
# and '.'s are hyperlinked.
pattern = re.compile(r'\b((http|ftp)://\S+[\w/]|'
pattern = re.compile(r'\b((http|https|ftp)://\S+[\w/]|'
r'RFC[- ]?(\d+)|'
r'PEP[- ]?(\d+)|'
r'(self\.)?((?:\w|\.)+))\b')

View file

@ -0,0 +1 @@
pydoc now recognizes and parses HTTPS URLs. Patch by python273.