summaryrefslogtreecommitdiff
path: root/setuptools/command/egg_info.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2017-09-03 19:57:54 -0400
committerJason R. Coombs <jaraco@jaraco.com>2017-09-03 20:01:45 -0400
commitdcb24ad15465c266a3f258471766fbbe8fc8a42e (patch)
tree13123440610d78e398476a8ce1e8cc3d9f9ec72e /setuptools/command/egg_info.py
parentf14930e66601b462699c44384c482cd966f53b8f (diff)
parent1b192005562d5cf0de30c02154c58fd1dca577c8 (diff)
downloadpython-setuptools-git-dcb24ad15465c266a3f258471766fbbe8fc8a42e.tar.gz
Merge branch 'master' into drop-py26
Diffstat (limited to 'setuptools/command/egg_info.py')
-rwxr-xr-xsetuptools/command/egg_info.py59
1 files changed, 28 insertions, 31 deletions
diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py
index 40cea9bf..a1d41b27 100755
--- a/setuptools/command/egg_info.py
+++ b/setuptools/command/egg_info.py
@@ -32,11 +32,6 @@ from setuptools.glob import glob
from pkg_resources.extern import packaging
-try:
- from setuptools_svn import svn_utils
-except ImportError:
- pass
-
def translate_pattern(glob):
"""
@@ -117,7 +112,8 @@ def translate_pattern(glob):
if not last_chunk:
pat += sep
- return re.compile(pat + r'\Z(?ms)')
+ pat += r'\Z'
+ return re.compile(pat, flags=re.MULTILINE|re.DOTALL)
class egg_info(Command):
@@ -126,18 +122,13 @@ class egg_info(Command):
user_options = [
('egg-base=', 'e', "directory containing .egg-info directories"
" (default: top of the source tree)"),
- ('tag-svn-revision', 'r',
- "Add subversion revision ID to version number"),
('tag-date', 'd', "Add date stamp (e.g. 20050528) to version number"),
('tag-build=', 'b', "Specify explicit tag to add to version number"),
- ('no-svn-revision', 'R',
- "Don't add subversion revision ID [default]"),
('no-date', 'D', "Don't include date stamp [default]"),
]
- boolean_options = ['tag-date', 'tag-svn-revision']
+ boolean_options = ['tag-date']
negative_opt = {
- 'no-svn-revision': 'tag-svn-revision',
'no-date': 'tag-date',
}
@@ -147,15 +138,26 @@ class egg_info(Command):
self.egg_base = None
self.egg_info = None
self.tag_build = None
- self.tag_svn_revision = 0
self.tag_date = 0
self.broken_egg_info = False
self.vtags = None
+ ####################################
+ # allow the 'tag_svn_revision' to be detected and
+ # set, supporting sdists built on older Setuptools.
+ @property
+ def tag_svn_revision(self):
+ pass
+
+ @tag_svn_revision.setter
+ def tag_svn_revision(self, value):
+ pass
+ ####################################
+
def save_version_info(self, filename):
"""
- Materialize the values of svn_revision and date into the
- build tag. Install these keys in a deterministic order
+ Materialize the value of date into the
+ build tag. Install build keys in a deterministic order
to avoid arbitrary reordering on subsequent builds.
"""
egg_info = collections.OrderedDict()
@@ -163,7 +165,6 @@ class egg_info(Command):
# when PYTHONHASHSEED=0
egg_info['tag_build'] = self.tags()
egg_info['tag_date'] = 0
- egg_info['tag_svn_revision'] = 0
edit_config(filename, dict(egg_info=egg_info))
def finalize_options(self):
@@ -280,22 +281,10 @@ class egg_info(Command):
version = ''
if self.tag_build:
version += self.tag_build
- if self.tag_svn_revision:
- warnings.warn(
- "tag_svn_revision is deprecated and will not be honored "
- "in a future release"
- )
- version += '-r%s' % self.get_svn_revision()
if self.tag_date:
version += time.strftime("-%Y%m%d")
return version
- @staticmethod
- def get_svn_revision():
- if 'svn_utils' not in globals():
- return "0"
- return str(svn_utils.SvnInfo.load(os.curdir).get_revision())
-
def find_sources(self):
"""Generate SOURCES.txt manifest file"""
manifest_filename = os.path.join(self.egg_info, "SOURCES.txt")
@@ -439,7 +428,11 @@ class FileList(_FileList):
def graft(self, dir):
"""Include all files from 'dir/'."""
- found = distutils.filelist.findall(dir)
+ found = [
+ item
+ for match_dir in glob(dir)
+ for item in distutils.filelist.findall(match_dir)
+ ]
self.extend(found)
return bool(found)
@@ -455,7 +448,7 @@ class FileList(_FileList):
"""
if self.allfiles is None:
self.findall()
- match = translate_pattern(os.path.join('**', '*' + pattern))
+ match = translate_pattern(os.path.join('**', pattern))
found = [f for f in self.allfiles if match.match(f)]
self.extend(found)
return bool(found)
@@ -464,7 +457,7 @@ class FileList(_FileList):
"""
Exclude all files anywhere that match the pattern.
"""
- match = translate_pattern(os.path.join('**', '*' + pattern))
+ match = translate_pattern(os.path.join('**', pattern))
return self._remove_files(match.match)
def append(self, item):
@@ -604,6 +597,10 @@ def write_pkg_info(cmd, basename, filename):
metadata = cmd.distribution.metadata
metadata.version, oldver = cmd.egg_version, metadata.version
metadata.name, oldname = cmd.egg_name, metadata.name
+ metadata.long_description_content_type = getattr(
+ cmd.distribution,
+ 'long_description_content_type'
+ )
try:
# write unescaped data to PKG-INFO, so older pkg_resources
# can still parse it