def get_finder( sources: List[Source], cache_dir: Optional[str] = None, python_version: Optional[Tuple[int, int]] = None, ignore_requires_python: bool = False, ) -> PackageFinder: install_cmd = InstallCommand() pip_args = prepare_pip_source_args(sources) options, _ = install_cmd.parser.parse_args(pip_args) if cache_dir: options.cache_dir = cache_dir finder = get_package_finder( install_cmd=install_cmd, options=options, python_version=python_version, ignore_requires_python=ignore_requires_python, ) if not hasattr(finder, "session"): finder.session = finder._link_collector.session return finder
def get_finder( sources: list[Source], cache_dir: str | None = None, python_version: tuple[int, ...] | None = None, python_abi_tag: str | None = None, ignore_requires_python: bool = False, ) -> PackageFinder: install_cmd = InstallCommand() pip_args = prepare_pip_source_args(sources) options, _ = install_cmd.parser.parse_args(pip_args) if cache_dir: options.cache_dir = cache_dir finder = get_package_finder( install_cmd=install_cmd, options=options, python_version=python_version, python_abi_tag=python_abi_tag, ignore_requires_python=ignore_requires_python, ) if not hasattr(finder, "session"): finder.session = finder._link_collector.session # type: ignore return finder