Files
vaiola/deprecated/Resolver/PipConflictGrubber.py
2025-09-12 17:18:13 +07:00

21 lines
729 B
Python

from pythonapp.Decider.Loader import RequirementInfo
from pythonapp.Env.Env import Env
from pythonapp.Libs.pip_api import pip_api
class PipConflictGrubber:
@classmethod
def check_for_conflicts(cls,
env: Env,
installed_reqs: list[RequirementInfo],
requested_reqs: list[RequirementInfo],
repo_url: str
):
tmp = [str(req) for req in installed_reqs]
tmp.extend([str(req) for req in requested_reqs])
result = pip_api.run_pip_install(env.pip_path, tmp, extra_index_urls=[repo_url])
if not result.success:
raise RuntimeError(result.stderr)