summaryrefslogtreecommitdiff
path: root/pkg_resources/_vendor/packaging/utils.py
diff options
context:
space:
mode:
authorAnderson Bravalheri <andersonbravalheri@gmail.com>2023-01-23 10:00:28 +0000
committerAnderson Bravalheri <andersonbravalheri@gmail.com>2023-01-23 10:00:28 +0000
commit2aad1a041e9c7a9e89521f341fc9fa882189a57f (patch)
tree5cb3544f8e2ae52190c62063677c0c6a4c16a62c /pkg_resources/_vendor/packaging/utils.py
parent53b4bead360b9471147eb2f1b38054be0671f5af (diff)
downloadpython-setuptools-git-2aad1a041e9c7a9e89521f341fc9fa882189a57f.tar.gz
Update vendored packaging/jaraco.context for pkg_resources
Diffstat (limited to 'pkg_resources/_vendor/packaging/utils.py')
-rw-r--r--pkg_resources/_vendor/packaging/utils.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/pkg_resources/_vendor/packaging/utils.py b/pkg_resources/_vendor/packaging/utils.py
index bab11b80..33c613b7 100644
--- a/pkg_resources/_vendor/packaging/utils.py
+++ b/pkg_resources/_vendor/packaging/utils.py
@@ -35,7 +35,9 @@ def canonicalize_name(name: str) -> NormalizedName:
return cast(NormalizedName, value)
-def canonicalize_version(version: Union[Version, str]) -> str:
+def canonicalize_version(
+ version: Union[Version, str], *, strip_trailing_zero: bool = True
+) -> str:
"""
This is very similar to Version.__str__, but has one subtle difference
with the way it handles the release segment.
@@ -56,8 +58,11 @@ def canonicalize_version(version: Union[Version, str]) -> str:
parts.append(f"{parsed.epoch}!")
# Release segment
- # NB: This strips trailing '.0's to normalize
- parts.append(re.sub(r"(\.0)+$", "", ".".join(str(x) for x in parsed.release)))
+ release_segment = ".".join(str(x) for x in parsed.release)
+ if strip_trailing_zero:
+ # NB: This strips trailing '.0's to normalize
+ release_segment = re.sub(r"(\.0)+$", "", release_segment)
+ parts.append(release_segment)
# Pre-release
if parsed.pre is not None: