X7ROOT File Manager
Current Path:
/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/packaging
opt
/
alt
/
python27
/
lib
/
python2.7
/
site-packages
/
pip
/
_vendor
/
packaging
/
??
..
??
__about__.py
(736 B)
??
__about__.pyc
(861 B)
??
__init__.py
(562 B)
??
__init__.pyc
(691 B)
??
_compat.py
(1.1 KB)
??
_compat.pyc
(1.66 KB)
??
_structures.py
(1.97 KB)
??
_structures.pyc
(5.51 KB)
??
_typing.py
(1.78 KB)
??
_typing.pyc
(1.72 KB)
??
markers.py
(9.27 KB)
??
markers.pyc
(14.61 KB)
??
requirements.py
(4.79 KB)
??
requirements.pyc
(5.92 KB)
??
specifiers.py
(31.2 KB)
??
specifiers.pyc
(30.43 KB)
??
tags.py
(23.5 KB)
??
tags.pyc
(25.39 KB)
??
utils.py
(1.77 KB)
??
utils.pyc
(2.48 KB)
??
version.py
(15.11 KB)
??
version.pyc
(22.01 KB)
Editing: utils.py
# This file is dual licensed under the terms of the Apache License, Version # 2.0, and the BSD License. See the LICENSE file in the root of this repository # for complete details. from __future__ import absolute_import, division, print_function import re from ._typing import TYPE_CHECKING, cast from .version import InvalidVersion, Version if TYPE_CHECKING: # pragma: no cover from typing import NewType, Union NormalizedName = NewType("NormalizedName", str) _canonicalize_regex = re.compile(r"[-_.]+") def canonicalize_name(name): # type: (str) -> NormalizedName # This is taken from PEP 503. value = _canonicalize_regex.sub("-", name).lower() return cast("NormalizedName", value) def canonicalize_version(_version): # type: (str) -> Union[Version, str] """ This is very similar to Version.__str__, but has one subtle difference with the way it handles the release segment. """ try: version = Version(_version) except InvalidVersion: # Legacy versions cannot be normalized return _version parts = [] # Epoch if version.epoch != 0: parts.append("{0}!".format(version.epoch)) # Release segment # NB: This strips trailing '.0's to normalize parts.append(re.sub(r"(\.0)+$", "", ".".join(str(x) for x in version.release))) # Pre-release if version.pre is not None: parts.append("".join(str(x) for x in version.pre)) # Post-release if version.post is not None: parts.append(".post{0}".format(version.post)) # Development release if version.dev is not None: parts.append(".dev{0}".format(version.dev)) # Local version segment if version.local is not None: parts.append("+{0}".format(version.local)) return "".join(parts)
Upload File
Create Folder