From: Senthil Kumaran Date: Thu, 13 May 2010 03:32:26 +0000 (+0000) Subject: Merged revisions 81130 via svnmerge from X-Git-Tag: v2.6.6rc1~333 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b87d04fc964c97ad57f6e1bd6865ec28518b6f22;p=python Merged revisions 81130 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r81130 | senthil.kumaran | 2010-05-13 08:55:21 +0530 (Thu, 13 May 2010) | 3 lines Fix Issue8657 - adding git and git+ssh as know schemes. ........ --- diff --git a/Lib/test/test_urlparse.py b/Lib/test/test_urlparse.py index 2879ccda6a..0225e3baad 100644 --- a/Lib/test/test_urlparse.py +++ b/Lib/test/test_urlparse.py @@ -100,7 +100,12 @@ class UrlParseTestCase(unittest.TestCase): ('svn+ssh', 'svn.zope.org', '/repos/main/ZConfig/trunk/', '', '', ''), ('svn+ssh', 'svn.zope.org', '/repos/main/ZConfig/trunk/', - '', '')) + '', '')), + ('git+ssh://git@github.com/user/project.git', + ('git+ssh', 'git@github.com','/user/project.git', + '','',''), + ('git+ssh', 'git@github.com','/user/project.git', + '', '')) ] for url, parsed, split in testcases: self.checkRoundtrips(url, parsed, split) diff --git a/Lib/urlparse.py b/Lib/urlparse.py index 0e73e4b97b..c5135c1f23 100644 --- a/Lib/urlparse.py +++ b/Lib/urlparse.py @@ -5,21 +5,22 @@ urlparse module is based upon the following RFC specifications. RFC 3986 (STD66): "Uniform Resource Identifiers" by T. Berners-Lee, R. Fielding and L. Masinter, January 2005. -RFC2396: "Uniform Resource Identifiers (URI)": Generic Syntax by T. +RFC 2396: "Uniform Resource Identifiers (URI)": Generic Syntax by T. Berners-Lee, R. Fielding, and L. Masinter, August 1998. -RFC2368: "The mailto URL scheme", by P.Hoffman , L Masinter, J. Zwinski, July 1998. +RFC 2368: "The mailto URL scheme", by P.Hoffman , L Masinter, J. Zwinski, July 1998. RFC 1808: "Relative Uniform Resource Locators", by R. Fielding, UC Irvine, June 1995. -RFC1738: "Uniform Resource Locators (URL)" by T. Berners-Lee, L. Masinter, M. +RFC 1738: "Uniform Resource Locators (URL)" by T. Berners-Lee, L. Masinter, M. McCahill, December 1994 -RFC 3986 is considered the current standard and any changes to urlparse module -should conform to this. urlparse module is not entirely compliant with this. -The defacto scenarios of parsing are considered sometimes and for backward -compatiblity purposes, older RFC uses of parsing are retained. The testcases in +RFC 3986 is considered the current standard and any future changes to +urlparse module should conform with it. The urlparse module is +currently not entirely compliant with this RFC due to defacto +scenarios for parsing, and for backward compatibility purposes, some +parsing quirks from older RFCs are retained. The testcases in test_urlparse.py provides a good indicator of parsing behavior. """ @@ -34,7 +35,7 @@ uses_relative = ['ftp', 'http', 'gopher', 'nntp', 'imap', uses_netloc = ['ftp', 'http', 'gopher', 'nntp', 'telnet', 'imap', 'wais', 'file', 'mms', 'https', 'shttp', 'snews', 'prospero', 'rtsp', 'rtspu', 'rsync', '', - 'svn', 'svn+ssh', 'sftp'] + 'svn', 'svn+ssh', 'sftp','nfs','git', 'git+ssh'] non_hierarchical = ['gopher', 'hdl', 'mailto', 'news', 'telnet', 'wais', 'imap', 'snews', 'sip', 'sips'] uses_params = ['ftp', 'hdl', 'prospero', 'http', 'imap',