installed.py 929 B

123456789101112131415161718192021222324252627282930313233
  1. from __future__ import annotations
  2. from typing import TYPE_CHECKING
  3. from pip._internal.distributions.base import AbstractDistribution
  4. from pip._internal.metadata import BaseDistribution
  5. if TYPE_CHECKING:
  6. from pip._internal.build_env import BuildEnvironmentInstaller
  7. class InstalledDistribution(AbstractDistribution):
  8. """Represents an installed package.
  9. This does not need any preparation as the required information has already
  10. been computed.
  11. """
  12. @property
  13. def build_tracker_id(self) -> str | None:
  14. return None
  15. def get_metadata_distribution(self) -> BaseDistribution:
  16. assert self.req.satisfied_by is not None, "not actually installed"
  17. return self.req.satisfied_by
  18. def prepare_distribution_metadata(
  19. self,
  20. build_env_installer: BuildEnvironmentInstaller,
  21. build_isolation: bool,
  22. check_build_deps: bool,
  23. ) -> None:
  24. pass