aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsetuptools/command/egg_info.py5
-rw-r--r--setuptools/dist.py15
-rw-r--r--setuptools/tests/test_config.py2
3 files changed, 10 insertions, 12 deletions
diff --git a/setuptools/command/egg_info.py b/setuptools/command/egg_info.py
index 103c5f20..befa0904 100755
--- a/setuptools/command/egg_info.py
+++ b/setuptools/command/egg_info.py
@@ -597,10 +597,7 @@ 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
diff --git a/setuptools/dist.py b/setuptools/dist.py
index 477f93dd..e79058c3 100644
--- a/setuptools/dist.py
+++ b/setuptools/dist.py
@@ -58,11 +58,8 @@ def write_pkg_file(self, file):
if self.download_url:
file.write('Download-URL: %s\n' % self.download_url)
- long_desc_content_type = getattr(
- self,
- 'long_description_content_type',
- None
- ) or 'UNKNOWN'
+ long_desc_content_type = \
+ self.long_description_content_type or 'UNKNOWN'
file.write('Description-Content-Type: %s\n' % long_desc_content_type)
long_desc = rfc822_escape(self.get_long_description())
@@ -326,14 +323,16 @@ class Distribution(Distribution_parse_config_files, _Distribution):
self.dist_files = []
self.src_root = attrs.pop("src_root", None)
self.patch_missing_pkg_info(attrs)
- self.long_description_content_type = attrs.get(
- 'long_description_content_type'
- )
self.dependency_links = attrs.pop('dependency_links', [])
self.setup_requires = attrs.pop('setup_requires', [])
for ep in pkg_resources.iter_entry_points('distutils.setup_keywords'):
vars(self).setdefault(ep.name, None)
_Distribution.__init__(self, attrs)
+
+ self.metadata.long_description_content_type = attrs.get(
+ 'long_description_content_type'
+ )
+
if isinstance(self.metadata.version, numbers.Number):
# Some people apparently take "version number" too literally :)
self.metadata.version = str(self.metadata.version)
diff --git a/setuptools/tests/test_config.py b/setuptools/tests/test_config.py
index cdfa5af4..15b0cee1 100644
--- a/setuptools/tests/test_config.py
+++ b/setuptools/tests/test_config.py
@@ -110,6 +110,7 @@ class TestMetadata:
'[metadata]\n'
'version = 10.1.1\n'
'description = Some description\n'
+ 'long_description_content_type = text/something\n'
'long_description = file: README\n'
'name = fake_name\n'
'keywords = one, two\n'
@@ -131,6 +132,7 @@ class TestMetadata:
assert metadata.version == '10.1.1'
assert metadata.description == 'Some description'
+ assert metadata.long_description_content_type == 'text/something'
assert metadata.long_description == 'readme contents\nline2'
assert metadata.provides == ['package', 'package.sub']
assert metadata.license == 'BSD 3-Clause License'