summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsetup.py1
-rw-r--r--setuptools/dist.py17
2 files changed, 10 insertions, 8 deletions
diff --git a/setup.py b/setup.py
index 27a0e30e..c83a98ff 100755
--- a/setup.py
+++ b/setup.py
@@ -135,6 +135,7 @@ setup_params = dict(
"convert_2to3_doctests = setuptools.dist:assert_string_list",
"use_2to3_fixers = setuptools.dist:assert_string_list",
"use_2to3_exclude_fixers = setuptools.dist:assert_string_list",
+ "normalize_version = setuptools.dist:assert_bool",
],
"egg_info.writers": [
"PKG-INFO = setuptools.command.egg_info:write_pkg_info",
diff --git a/setuptools/dist.py b/setuptools/dist.py
index 6ee4a97f..06b557b5 100644
--- a/setuptools/dist.py
+++ b/setuptools/dist.py
@@ -390,15 +390,16 @@ class Distribution(Distribution_parse_config_files, _Distribution):
if self.metadata.version is not None:
try:
ver = packaging.version.Version(self.metadata.version)
- normalized_version = str(ver)
- if self.metadata.version != normalized_version:
- warnings.warn(
- "Normalizing '%s' to '%s'" % (
- self.metadata.version,
- normalized_version,
+ if self.normalize_version or self.normalize_version is None:
+ normalized_version = str(ver)
+ if self.metadata.version != normalized_version:
+ warnings.warn(
+ "Normalizing '%s' to '%s'" % (
+ self.metadata.version,
+ normalized_version,
+ )
)
- )
- self.metadata.version = normalized_version
+ self.metadata.version = normalized_version
except (packaging.version.InvalidVersion, TypeError):
warnings.warn(
"The version specified (%r) is an invalid version, this "