From bf00739895992b389b1060693da004d94d654fe2 Mon Sep 17 00:00:00 2001 From: Matt Davis Date: Mon, 14 Mar 2022 21:16:29 -0400 Subject: [PATCH] Seems to resolve the two tests that failed when run together as well as maintain the correct behavior of the issue-4637 example script --- pipenv/core.py | 6 ++++-- pipenv/utils.py | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pipenv/core.py b/pipenv/core.py index 7aec3daa..c0f0840b 100644 --- a/pipenv/core.py +++ b/pipenv/core.py @@ -1416,9 +1416,11 @@ def pip_install( if not index and requirement.index: index = requirement.index if index and not extra_indexes: - extra_indexes = list(project.sources) + extra_indexes = [] if requirement.index: - extra_indexes = list(filter(lambda d: d['name'] == requirement.index, extra_indexes)) + extra_indexes = list(filter(lambda d: d['name'] == requirement.index, project.sources)) + if not extra_indexes: + extra_indexes = list(project.sources) if requirement and requirement.vcs or requirement.editable: requirement.index = None # Install dependencies when a package is a non-editable VCS dependency. diff --git a/pipenv/utils.py b/pipenv/utils.py index a96ab65d..2abc0ccb 100644 --- a/pipenv/utils.py +++ b/pipenv/utils.py @@ -897,6 +897,7 @@ class Resolver: from pipenv.vendor.pip_shims.shims import InstallationError from pipenv.exceptions import ResolutionFailure + self.constraints # For some reason its important to evaluate constraints before resolver context with temp_environ(), self.get_resolver() as resolver: try: results = resolver.resolve(self.constraints, check_supported_wheels=False)