diff --git a/pipenv/utils.py b/pipenv/utils.py index d07d36ab..1f0f4ef4 100644 --- a/pipenv/utils.py +++ b/pipenv/utils.py @@ -200,7 +200,7 @@ def prepare_pip_source_args(sources, pip_args=None): # Trust the host if it's not verified. if not sources[0].get("verify_ssl", True): pip_args.extend( - ["--trusted-host", urlparse(sources[0]["url"]).netloc.split(":")[0]] + ["--trusted-host", urlparse(sources[0]["url"]).hostname] ) # Add additional sources as extra indexes. if len(sources) > 1: diff --git a/tests/unit/test_utils.py b/tests/unit/test_utils.py index dd3dd6d4..ab15f5cd 100644 --- a/tests/unit/test_utils.py +++ b/tests/unit/test_utils.py @@ -371,6 +371,20 @@ twine = "*" "https://user:password@custom.example.com/simple", ], ), + ( + [ + { + "url": "https://user:password@custom.example.com/simple", + "verify_ssl": False, + }, + ], + [ + "-i", + "https://user:password@custom.example.com/simple", + "--trusted-host", + "custom.example.com", + ], + ), ], ) def test_prepare_pip_source_args(self, sources, expected_args):