Path: blob/master/venv/Lib/site-packages/pip/_internal/commands/check.py
811 views
import logging12from pip._internal.cli.base_command import Command3from pip._internal.cli.status_codes import ERROR, SUCCESS4from pip._internal.operations.check import (5check_package_set,6create_package_set_from_installed,7)8from pip._internal.utils.misc import write_output9from pip._internal.utils.typing import MYPY_CHECK_RUNNING1011logger = logging.getLogger(__name__)1213if MYPY_CHECK_RUNNING:14from typing import List, Any15from optparse import Values161718class CheckCommand(Command):19"""Verify installed packages have compatible dependencies."""2021usage = """22%prog [options]"""2324def run(self, options, args):25# type: (Values, List[Any]) -> int2627package_set, parsing_probs = create_package_set_from_installed()28missing, conflicting = check_package_set(package_set)2930for project_name in missing:31version = package_set[project_name].version32for dependency in missing[project_name]:33write_output(34"%s %s requires %s, which is not installed.",35project_name, version, dependency[0],36)3738for project_name in conflicting:39version = package_set[project_name].version40for dep_name, dep_version, req in conflicting[project_name]:41write_output(42"%s %s has requirement %s, but you have %s %s.",43project_name, version, req, dep_name, dep_version,44)4546if missing or conflicting or parsing_probs:47return ERROR48else:49write_output("No broken requirements found.")50return SUCCESS515253