I was using caniusepython3 and managed to trigger an AttributeError in distlib by feeding it a package name that isn't on PyPI. I'm sorry I can't provide much more info, but the traceback is below.
[ERROR] Failed to get external data for %s: %s
Traceback (most recent call last):
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/util.py", line 745, in _get_external_data
resp = urlopen(url)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 153, in urlopen
return opener.open(url, data, timeout)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 461, in open
response = meth(req, response)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 574, in http_response
'http', request, response, code, msg, hdrs)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 499, in error
return self._call_chain(*args)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 433, in _call_chain
result = func(*args)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/urllib/request.py", line 582, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found
[WARNING] xxx.sncodecs not found
Traceback (most recent call last):
File "/Users/miv/.venvs3.4/caniusepython3_master/bin/caniusepython3", line 9, in <module>
load_entry_point('caniusepython3==1.2.1', 'console_scripts', 'caniusepython3')()
File "/Users/miv/projects/caniusepython3/caniusepython3/__main__.py", line 152, in main
check(projects_from_cli(args))
File "/Users/miv/projects/caniusepython3/caniusepython3/__main__.py", line 140, in check
blockers = ciu.blocking_dependencies(projects, ciu.all_py3_projects())
File "/Users/miv/projects/caniusepython3/caniusepython3/__init__.py", line 182, in blocking_dependencies
for parent, deps in zip(check, executor.map(dependencies, check)):
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/concurrent/futures/_base.py", line 549, in result_iterator
yield future.result()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/concurrent/futures/_base.py", line 395, in result
return self.__get_result()
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/concurrent/futures/_base.py", line 354, in __get_result
raise self._exception
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/concurrent/futures/thread.py", line 54, in run
result = self.fn(*self.args, **self.kwargs)
File "/Users/miv/projects/caniusepython3/caniusepython3/__init__.py", line 154, in dependencies
located = distlib.locators.locate(project_name, prereleases=True)
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/locators.py", line 331, in locate
versions = self.get_project(r.name)
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/locators.py", line 158, in get_project
result = self._get_project(name)
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/locators.py", line 900, in _get_project
d = locator.get_project(name)
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/locators.py", line 158, in get_project
result = self._get_project(name)
File "/Users/miv/.venvs3.4/caniusepython3_master/lib/python3.4/site-packages/distlib/locators.py", line 577, in _get_project
del self.result
AttributeError: result