from functools import lru_cache from typing import Callable, Iterable, Iterator, TypeVar, Union, overload import setuptools.extern.jaraco.text as text from setuptools.extern.packaging.requirements import Requirement _T = TypeVar("_T") _StrOrIter = Union[str, Iterable[str]] parse_req: Callable[[str], Requirement] = lru_cache()(Requirement) # Setuptools parses the same requirement many times # (e.g. first for validation than for normalisation), # so it might be worth to cache. def parse_strings(strs: _StrOrIter) -> Iterator[str]: """ Yield requirement strings for each specification in `strs`. `strs` must be a string, or a (possibly-nested) iterable thereof. """ return text.join_continuation(map(text.drop_comment, text.yield_lines(strs))) @overload def parse(strs: _StrOrIter) -> Iterator[Requirement]: ... @overload def parse(strs: _StrOrIter, parser: Callable[[str], _T]) -> Iterator[_T]: ... def parse(strs, parser=parse_req): """ Replacement for ``pkg_resources.parse_requirements`` that uses ``packaging``. """ return map(parser, parse_strings(strs))
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
_distutils | Folder | 0755 |
|
|
_vendor | Folder | 0755 |
|
|
command | Folder | 0755 |
|
|
compat | Folder | 0755 |
|
|
config | Folder | 0755 |
|
|
extern | Folder | 0755 |
|
|
__init__.py | File | 8.74 KB | 0644 |
|
_core_metadata.py | File | 9.6 KB | 0644 |
|
_entry_points.py | File | 2.28 KB | 0644 |
|
_imp.py | File | 2.39 KB | 0644 |
|
_importlib.py | File | 1.42 KB | 0644 |
|
_itertools.py | File | 675 B | 0644 |
|
_normalization.py | File | 4.46 KB | 0644 |
|
_path.py | File | 1.15 KB | 0644 |
|
_reqs.py | File | 1.09 KB | 0644 |
|
archive_util.py | File | 7.16 KB | 0644 |
|
build_meta.py | File | 18.64 KB | 0644 |
|
cli-32.exe | File | 11.5 KB | 0644 |
|
cli-64.exe | File | 14 KB | 0644 |
|
cli-arm64.exe | File | 13.5 KB | 0644 |
|
cli.exe | File | 11.5 KB | 0644 |
|
depends.py | File | 5.42 KB | 0644 |
|
discovery.py | File | 20.63 KB | 0644 |
|
dist.py | File | 37.04 KB | 0644 |
|
errors.py | File | 2.61 KB | 0644 |
|
extension.py | File | 5.66 KB | 0644 |
|
glob.py | File | 4.74 KB | 0644 |
|
gui-32.exe | File | 11.5 KB | 0644 |
|
gui-64.exe | File | 14 KB | 0644 |
|
gui-arm64.exe | File | 13.5 KB | 0644 |
|
gui.exe | File | 11.5 KB | 0644 |
|
installer.py | File | 4.85 KB | 0644 |
|
launch.py | File | 812 B | 0644 |
|
logging.py | File | 1.21 KB | 0644 |
|
modified.py | File | 190 B | 0644 |
|
monkey.py | File | 4.23 KB | 0644 |
|
msvc.py | File | 46.42 KB | 0644 |
|
namespaces.py | File | 3.05 KB | 0644 |
|
package_index.py | File | 38.17 KB | 0644 |
|
sandbox.py | File | 14.38 KB | 0644 |
|
script (dev).tmpl | File | 218 B | 0644 |
|
script.tmpl | File | 138 B | 0644 |
|
unicode_utils.py | File | 3.11 KB | 0644 |
|
version.py | File | 161 B | 0644 |
|
warnings.py | File | 3.61 KB | 0644 |
|
wheel.py | File | 8.48 KB | 0644 |
|
windows_support.py | File | 720 B | 0644 |
|