summaryrefslogtreecommitdiff
path: root/setuptools/command/egg_info.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2014-12-13 10:36:55 -0500
committerJason R. Coombs <jaraco@jaraco.com>2014-12-13 10:36:55 -0500
commit59f12c0141af1061de6f39f7b5a69795d1353993 (patch)
tree1743f53ecc5b06ea908806707fd75656ba3d9891 /setuptools/command/egg_info.py
parent3bc1dafb0e22f3c694c63cc1159648cee720e638 (diff)
parent2439ceb80430a4201efac7370c90474e429ab41b (diff)
downloadpython-setuptools-git-8.0.tar.gz
Merge with 8.0b1 (use packaging for version specifiers)8.0
Diffstat (limited to 'setuptools/command/egg_info.py')
-rwxr-xr-xsetuptools/command/egg_info.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py
index 06764a17..43df87dc 100755
--- a/setuptools/command/egg_info.py
+++ b/setuptools/command/egg_info.py
@@ -10,6 +10,13 @@ import os
import re
import sys
+try:
+ import packaging.version
+except ImportError:
+ # fallback to vendored version
+ import setuptools._vendor.packaging.version
+ packaging = setuptools._vendor.packaging
+
from setuptools import Command
from setuptools.command.sdist import sdist
from setuptools.compat import basestring, PY3, StringIO
@@ -68,10 +75,15 @@ class egg_info(Command):
self.vtags = self.tags()
self.egg_version = self.tagged_version()
+ parsed_version = parse_version(self.egg_version)
+
try:
+ is_version = isinstance(parsed_version, packaging.version.Version)
+ spec = (
+ "%s==%s" if is_version else "%s===%s"
+ )
list(
- parse_requirements('%s==%s' % (self.egg_name,
- self.egg_version))
+ parse_requirements(spec % (self.egg_name, self.egg_version))
)
except ValueError:
raise distutils.errors.DistutilsOptionError(