mirror of
https://github.com/kennethreitz/pipenv.git
synced 2026-06-05 22:50:18 +00:00
handle bad package names more gracefully
This commit is contained in:
+7
-1
@@ -415,6 +415,8 @@ def proper_case(package_name):
|
||||
|
||||
# Hit the simple API.
|
||||
r = requests.get('{0}/{1}'.format(project.source['url'], package_name))
|
||||
if not r.ok:
|
||||
raise IOError('Unable to find package {0} in PyPI repository.'.format(crayons.green(package_name)))
|
||||
|
||||
# Parse the HTML.
|
||||
parser = SimpleHTMLParser()
|
||||
@@ -528,7 +530,11 @@ def install(package_name=False, more_packages=False, dev=False, three=False, sys
|
||||
|
||||
# Proper-case incoming package name (check against API).
|
||||
old_name = [k for k in convert_deps_from_pip(package_name).keys()][0]
|
||||
new_name = proper_case(old_name)
|
||||
try:
|
||||
new_name = proper_case(old_name)
|
||||
except IOError as e:
|
||||
click.echo('{0} {1}'.format(crayons.red('Error: '), e.args[0], crayons.green(package_name)))
|
||||
continue
|
||||
package_name = package_name.replace(old_name, new_name)
|
||||
|
||||
click.echo('Installing {0}...'.format(crayons.green(package_name)))
|
||||
|
||||
Reference in New Issue
Block a user