Current Path: > > opt > cloudlinux > venv > lib > python3.11 > site-packages > setuptools
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
_distutils | Directory | - | - | |
_vendor | Directory | - | - | |
command | Directory | - | - | |
compat | Directory | - | - | |
config | Directory | - | - | |
tests | Directory | - | - | |
__init__.py | File | 10406 bytes | April 17 2025 13:10:58. | |
_core_metadata.py | File | 11978 bytes | April 17 2025 13:10:58. | |
_entry_points.py | File | 2310 bytes | April 17 2025 13:10:58. | |
_imp.py | File | 2435 bytes | April 17 2025 13:10:58. | |
_importlib.py | File | 223 bytes | April 17 2025 13:10:58. | |
_itertools.py | File | 657 bytes | April 17 2025 13:10:58. | |
_normalization.py | File | 5824 bytes | April 17 2025 13:10:58. | |
_path.py | File | 2685 bytes | April 17 2025 13:10:58. | |
_reqs.py | File | 1438 bytes | April 17 2025 13:10:58. | |
_shutil.py | File | 1496 bytes | April 17 2025 13:10:58. | |
_static.py | File | 4855 bytes | April 17 2025 13:10:58. | |
archive_util.py | File | 7356 bytes | April 17 2025 13:10:58. | |
build_meta.py | File | 20446 bytes | April 17 2025 13:10:58. | |
cli-32.exe | File | 11776 bytes | April 17 2025 13:10:58. | |
cli-64.exe | File | 14336 bytes | April 17 2025 13:10:58. | |
cli-arm64.exe | File | 13824 bytes | April 17 2025 13:10:58. | |
cli.exe | File | 11776 bytes | April 17 2025 13:10:58. | |
depends.py | File | 5965 bytes | April 17 2025 13:10:58. | |
discovery.py | File | 21258 bytes | April 17 2025 13:10:58. | |
dist.py | File | 44897 bytes | April 17 2025 13:10:58. | |
errors.py | File | 3024 bytes | April 17 2025 13:10:58. | |
extension.py | File | 6683 bytes | April 17 2025 13:10:58. | |
glob.py | File | 6062 bytes | April 17 2025 13:10:58. | |
gui-32.exe | File | 11776 bytes | April 17 2025 13:10:58. | |
gui-64.exe | File | 14336 bytes | April 17 2025 13:10:58. | |
gui-arm64.exe | File | 13824 bytes | April 17 2025 13:10:58. | |
gui.exe | File | 11776 bytes | April 17 2025 13:10:58. | |
installer.py | File | 5110 bytes | April 17 2025 13:10:58. | |
launch.py | File | 820 bytes | April 17 2025 13:10:58. | |
logging.py | File | 1261 bytes | April 17 2025 13:10:58. | |
modified.py | File | 568 bytes | April 17 2025 13:10:58. | |
monkey.py | File | 3717 bytes | April 17 2025 13:10:58. | |
msvc.py | File | 41631 bytes | April 17 2025 13:10:58. | |
namespaces.py | File | 3171 bytes | April 17 2025 13:10:58. | |
package_index.py | File | 39095 bytes | April 17 2025 13:10:58. | |
sandbox.py | File | 14906 bytes | April 17 2025 13:10:58. | |
script (dev).tmpl | File | 218 bytes | April 17 2025 13:10:58. | |
script.tmpl | File | 138 bytes | April 17 2025 13:10:58. | |
unicode_utils.py | File | 3189 bytes | April 17 2025 13:10:58. | |
version.py | File | 161 bytes | April 17 2025 13:10:58. | |
warnings.py | File | 3796 bytes | April 17 2025 13:10:58. | |
wheel.py | File | 8624 bytes | April 17 2025 13:10:58. | |
windows_support.py | File | 726 bytes | April 17 2025 13:10:58. |
""" Helpers for normalization as expected in wheel/sdist/module file names and core metadata """ import re from typing import TYPE_CHECKING import packaging # https://packaging.python.org/en/latest/specifications/core-metadata/#name _VALID_NAME = re.compile(r"^([A-Z0-9]|[A-Z0-9][A-Z0-9._-]*[A-Z0-9])$", re.I) _UNSAFE_NAME_CHARS = re.compile(r"[^A-Z0-9._-]+", re.I) _NON_ALPHANUMERIC = re.compile(r"[^A-Z0-9]+", re.I) _PEP440_FALLBACK = re.compile(r"^v?(?P<safe>(?:[0-9]+!)?[0-9]+(?:\.[0-9]+)*)", re.I) def safe_identifier(name: str) -> str: """Make a string safe to be used as Python identifier. >>> safe_identifier("12abc") '_12abc' >>> safe_identifier("__editable__.myns.pkg-78.9.3_local") '__editable___myns_pkg_78_9_3_local' """ safe = re.sub(r'\W|^(?=\d)', '_', name) assert safe.isidentifier() return safe def safe_name(component: str) -> str: """Escape a component used as a project name according to Core Metadata. >>> safe_name("hello world") 'hello-world' >>> safe_name("hello?world") 'hello-world' >>> safe_name("hello_world") 'hello_world' """ # See pkg_resources.safe_name return _UNSAFE_NAME_CHARS.sub("-", component) def safe_version(version: str) -> str: """Convert an arbitrary string into a valid version string. Can still raise an ``InvalidVersion`` exception. To avoid exceptions use ``best_effort_version``. >>> safe_version("1988 12 25") '1988.12.25' >>> safe_version("v0.2.1") '0.2.1' >>> safe_version("v0.2?beta") '0.2b0' >>> safe_version("v0.2 beta") '0.2b0' >>> safe_version("ubuntu lts") Traceback (most recent call last): ... packaging.version.InvalidVersion: Invalid version: 'ubuntu.lts' """ v = version.replace(' ', '.') try: return str(packaging.version.Version(v)) except packaging.version.InvalidVersion: attempt = _UNSAFE_NAME_CHARS.sub("-", v) return str(packaging.version.Version(attempt)) def best_effort_version(version: str) -> str: """Convert an arbitrary string into a version-like string. Fallback when ``safe_version`` is not safe enough. >>> best_effort_version("v0.2 beta") '0.2b0' >>> best_effort_version("ubuntu lts") '0.dev0+sanitized.ubuntu.lts' >>> best_effort_version("0.23ubuntu1") '0.23.dev0+sanitized.ubuntu1' >>> best_effort_version("0.23-") '0.23.dev0+sanitized' >>> best_effort_version("0.-_") '0.dev0+sanitized' >>> best_effort_version("42.+?1") '42.dev0+sanitized.1' """ # See pkg_resources._forgiving_version try: return safe_version(version) except packaging.version.InvalidVersion: v = version.replace(' ', '.') match = _PEP440_FALLBACK.search(v) if match: safe = match["safe"] rest = v[len(safe) :] else: safe = "0" rest = version safe_rest = _NON_ALPHANUMERIC.sub(".", rest).strip(".") local = f"sanitized.{safe_rest}".strip(".") return safe_version(f"{safe}.dev0+{local}") def safe_extra(extra: str) -> str: """Normalize extra name according to PEP 685 >>> safe_extra("_FrIeNdLy-._.-bArD") 'friendly-bard' >>> safe_extra("FrIeNdLy-._.-bArD__._-") 'friendly-bard' """ return _NON_ALPHANUMERIC.sub("-", extra).strip("-").lower() def filename_component(value: str) -> str: """Normalize each component of a filename (e.g. distribution/version part of wheel) Note: ``value`` needs to be already normalized. >>> filename_component("my-pkg") 'my_pkg' """ return value.replace("-", "_").strip("_") def filename_component_broken(value: str) -> str: """ Produce the incorrect filename component for compatibility. See pypa/setuptools#4167 for detailed analysis. TODO: replace this with filename_component after pip 24 is nearly-ubiquitous. >>> filename_component_broken('foo_bar-baz') 'foo-bar-baz' """ return value.replace('_', '-') def safer_name(value: str) -> str: """Like ``safe_name`` but can be used as filename component for wheel""" # See bdist_wheel.safer_name return ( # Per https://packaging.python.org/en/latest/specifications/name-normalization/#name-normalization re.sub(r"[-_.]+", "-", safe_name(value)) .lower() # Per https://packaging.python.org/en/latest/specifications/binary-distribution-format/#escaping-and-unicode .replace("-", "_") ) def safer_best_effort_version(value: str) -> str: """Like ``best_effort_version`` but can be used as filename component for wheel""" # See bdist_wheel.safer_verion # TODO: Replace with only safe_version in the future (no need for best effort) return filename_component(best_effort_version(value)) def _missing_canonicalize_license_expression(expression: str) -> str: """ Defer import error to affect only users that actually use it https://github.com/pypa/setuptools/issues/4894 >>> _missing_canonicalize_license_expression("a OR b") Traceback (most recent call last): ... ImportError: ...Cannot import `packaging.licenses`... """ raise ImportError( "Cannot import `packaging.licenses`." """ Setuptools>=77.0.0 requires "packaging>=24.2" to work properly. Please make sure you have a suitable version installed. """ ) try: from packaging.licenses import ( canonicalize_license_expression as _canonicalize_license_expression, ) except ImportError: # pragma: nocover if not TYPE_CHECKING: # XXX: pyright is still upset even with # pyright: ignore[reportAssignmentType] _canonicalize_license_expression = _missing_canonicalize_license_expression
SILENT KILLER Tool