[Python-checkins] r53541 - sandbox/trunk/setuptools/setuptools/package_index.py
phillip.eby
python-checkins at python.org
Wed Jan 24 16:39:06 CET 2007
Author: phillip.eby
Date: Wed Jan 24 16:39:00 2007
New Revision: 53541
Modified:
sandbox/trunk/setuptools/setuptools/package_index.py
Log:
If a page can't be spidered, warn and ignore rather than aborting.
Modified: sandbox/trunk/setuptools/setuptools/package_index.py
==============================================================================
--- sandbox/trunk/setuptools/setuptools/package_index.py (original)
+++ sandbox/trunk/setuptools/setuptools/package_index.py Wed Jan 24 16:39:00 2007
@@ -166,7 +166,6 @@
"""Evaluate a URL as a possible download, and maybe retrieve it"""
if url in self.scanned_urls and not retrieve:
return
-
self.scanned_urls[url] = True
if not URL_SCHEME(url):
self.process_filename(url)
@@ -187,7 +186,8 @@
return
self.info("Reading %s", url)
- f = self.open_url(url)
+ f = self.open_url(url, "Download error: %s -- Some packages may not be found!")
+ if f is None: return
self.fetched_urls[url] = self.fetched_urls[f.url] = True
if 'html' not in f.headers.get('content-type', '').lower():
@@ -572,7 +572,7 @@
pass # no-op
- def open_url(self, url):
+ def open_url(self, url, warning=None):
if url.startswith('file:'):
return local_open(url)
try:
@@ -580,7 +580,8 @@
except urllib2.HTTPError, v:
return v
except urllib2.URLError, v:
- raise DistutilsError("Download error: %s" % v.reason)
+ if warning: self.warn(warning, v.reason)
+ else: raise DistutilsError("Download error: %s" % v.reason)
def _download_url(self, scheme, url, tmpdir):
# Determine download filename
@@ -612,7 +613,6 @@
self.process_url(url, True)
-
def _attempt_download(self, url, filename):
headers = self._download_to(url, filename)
if 'html' in headers['content-type'].lower():
More information about the Python-checkins
mailing list