diff --git a/pipenv/utils.py b/pipenv/utils.py index 8e9273d3..830dcc4a 100644 --- a/pipenv/utils.py +++ b/pipenv/utils.py @@ -5,6 +5,7 @@ import tempfile import parse import requests import requirements +import six try: from HTMLParser import HTMLParser @@ -81,7 +82,7 @@ def convert_deps_to_pip(deps, r=True): for dep in deps.keys(): # Default (e.g. '>1.10'). - extra = deps[dep] if isinstance(deps[dep], str) else '' + extra = deps[dep] if isinstance(deps[dep], six.string_types) else '' version = '' # Get rid of '*'. diff --git a/tests/test_utils.py b/tests/test_utils.py index 0f3a2d81..01fc9eb0 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -56,6 +56,11 @@ class TestUtils: deps = pipenv.utils.convert_deps_to_pip(deps, r=False) assert deps[0] == 'FooProject==1.2 --hash=sha256:2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824' + # test unicode values + deps = {u'django': u'==1.10'} + deps = pipenv.utils.convert_deps_to_pip(deps, r=False) + assert deps[0] == 'django>1.10' + def test_convert_from_pip(self):