diff options
author | PJ Eby <distutils-sig@python.org> | 2008-08-21 17:56:23 +0000 |
---|---|---|
committer | PJ Eby <distutils-sig@python.org> | 2008-08-21 17:56:23 +0000 |
commit | 3430324f7fcd38e9d1a8c045812e80376292788e (patch) | |
tree | cb99f1355e6e5346834ed1be7f346b8c1fa689b8 | |
parent | 22071a62ddcb38c2b224ab94981e6c301d41b187 (diff) | |
download | external_python_setuptools-3430324f7fcd38e9d1a8c045812e80376292788e.tar.gz external_python_setuptools-3430324f7fcd38e9d1a8c045812e80376292788e.tar.bz2 external_python_setuptools-3430324f7fcd38e9d1a8c045812e80376292788e.zip |
Fix for http://bugs.python.org/setuptools/issue7 (backport from trunk)
--HG--
branch : setuptools-0.6
extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/branches/setuptools-0.6%4065943
-rwxr-xr-x | setuptools/package_index.py | 4 | ||||
-rw-r--r-- | setuptools/tests/test_packageindex.py | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/setuptools/package_index.py b/setuptools/package_index.py index fed36a88..84f1fcea 100755 --- a/setuptools/package_index.py +++ b/setuptools/package_index.py @@ -220,7 +220,8 @@ class PackageIndex(Environment): map(self.add, dists) def url_ok(self, url, fatal=False): - if self.allows(urlparse.urlparse(url)[1]): + s = URL_SCHEME(url) + if (s and s.group(1).lower()=='file') or self.allows(urlparse.urlparse(url)[1]): return True msg = "\nLink to % s ***BLOCKED*** by --allow-hosts\n" if fatal: @@ -243,7 +244,6 @@ class PackageIndex(Environment): dist.precedence = SOURCE_DIST self.add(dist) - def process_index(self,url,page): """Process the contents of a PyPI page""" def scan(link): diff --git a/setuptools/tests/test_packageindex.py b/setuptools/tests/test_packageindex.py index 2d619a08..0231eda8 100644 --- a/setuptools/tests/test_packageindex.py +++ b/setuptools/tests/test_packageindex.py @@ -17,3 +17,11 @@ class TestPackageIndex(unittest.TestCase): self.assert_(url in str(v)) else: self.assert_(isinstance(v,urllib2.HTTPError)) + + def test_url_ok(self): + index = setuptools.package_index.PackageIndex( + hosts=('www.example.com',) + ) + url = 'file:///tmp/test_package_index' + self.assert_(index.url_ok(url, True)) + |