From 8fc9c365bc4dd63adacde1dc9bb86a83a75d2c76 Mon Sep 17 00:00:00 2001 From: Matt Davis Date: Tue, 16 Aug 2022 17:54:35 -0400 Subject: [PATCH] Revise how we do the import patch to include only module pipenv. --- pipenv/core.py | 1 - pipenv/patched/pip/__main__.py | 8 +++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pipenv/core.py b/pipenv/core.py index c0e82fa7..5408d6e3 100644 --- a/pipenv/core.py +++ b/pipenv/core.py @@ -1529,7 +1529,6 @@ def pip_install( project_python(project, system=allow_global), _get_runnable_pip(), "install", - "--ignore-installed", ] pip_args = get_pip_args( project, diff --git a/pipenv/patched/pip/__main__.py b/pipenv/patched/pip/__main__.py index 03b90ffd..b424ab20 100644 --- a/pipenv/patched/pip/__main__.py +++ b/pipenv/patched/pip/__main__.py @@ -26,7 +26,13 @@ if __name__ == "__main__": warnings.filterwarnings( "ignore", category=DeprecationWarning, module=".*packaging\\.version" ) - sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))) + import importlib.util + import sys + spec = importlib.util.spec_from_file_location( + "pipenv", location=os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "__init__.py")) + pipenv = importlib.util.module_from_spec(spec) + sys.modules["pipenv"] = pipenv + spec.loader.exec_module(pipenv) from pipenv.patched.pip._internal.cli.main import main as _main sys.exit(_main())