summaryrefslogtreecommitdiff
path: root/setuptools/_distutils/command
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2022-05-09 10:28:14 -0400
committerJason R. Coombs <jaraco@jaraco.com>2022-05-10 07:47:52 -0400
commit7e3e58ce198d9319bb2279c2da4b1f298914d8a5 (patch)
tree1af3b0f99f5e37c47789bf93519392e08eb24094 /setuptools/_distutils/command
parente009a87b5578cb16099b697ba8395c8f6bdd70f3 (diff)
parenta7cfb56a7b1eaa95824d81a34e8e70b85d42f784 (diff)
downloadpython-setuptools-git-7e3e58ce198d9319bb2279c2da4b1f298914d8a5.tar.gz
Merge https://github.com/pypa/distutils into feature/distutils-a7cfb56a7b1eaa
Diffstat (limited to 'setuptools/_distutils/command')
-rw-r--r--setuptools/_distutils/command/bdist_msi.py6
-rw-r--r--setuptools/_distutils/command/bdist_rpm.py8
-rw-r--r--setuptools/_distutils/command/check.py43
3 files changed, 9 insertions, 48 deletions
diff --git a/setuptools/_distutils/command/bdist_msi.py b/setuptools/_distutils/command/bdist_msi.py
index 15259532..56c4b988 100644
--- a/setuptools/_distutils/command/bdist_msi.py
+++ b/setuptools/_distutils/command/bdist_msi.py
@@ -231,11 +231,7 @@ class bdist_msi(Command):
if os.path.exists(installer_name): os.unlink(installer_name)
metadata = self.distribution.metadata
- author = metadata.author
- if not author:
- author = metadata.maintainer
- if not author:
- author = "UNKNOWN"
+ author = metadata.author or metadata.maintainer
version = metadata.get_version()
# ProductVersion must be strictly numeric
# XXX need to deal with prerelease versions
diff --git a/setuptools/_distutils/command/bdist_rpm.py b/setuptools/_distutils/command/bdist_rpm.py
index 550cbfa1..a2a9e8e5 100644
--- a/setuptools/_distutils/command/bdist_rpm.py
+++ b/setuptools/_distutils/command/bdist_rpm.py
@@ -399,7 +399,7 @@ class bdist_rpm(Command):
'%define unmangled_version ' + self.distribution.get_version(),
'%define release ' + self.release.replace('-','_'),
'',
- 'Summary: ' + self.distribution.get_description(),
+ 'Summary: ' + (self.distribution.get_description() or "UNKNOWN"),
]
# Workaround for #14443 which affects some RPM based systems such as
@@ -438,7 +438,7 @@ class bdist_rpm(Command):
spec_file.append('Source0: %{name}-%{unmangled_version}.tar.gz')
spec_file.extend([
- 'License: ' + self.distribution.get_license(),
+ 'License: ' + (self.distribution.get_license() or "UNKNOWN"),
'Group: ' + self.group,
'BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot',
'Prefix: %{_prefix}', ])
@@ -464,7 +464,7 @@ class bdist_rpm(Command):
spec_file.append('%s: %s' % (field, val))
- if self.distribution.get_url() != 'UNKNOWN':
+ if self.distribution.get_url():
spec_file.append('Url: ' + self.distribution.get_url())
if self.distribution_name:
@@ -483,7 +483,7 @@ class bdist_rpm(Command):
spec_file.extend([
'',
'%description',
- self.distribution.get_long_description()
+ self.distribution.get_long_description() or "",
])
# put locale descriptions into spec file
diff --git a/setuptools/_distutils/command/check.py b/setuptools/_distutils/command/check.py
index af311ca9..8a02dbca 100644
--- a/setuptools/_distutils/command/check.py
+++ b/setuptools/_distutils/command/check.py
@@ -82,54 +82,19 @@ class check(Command):
"""Ensures that all required elements of meta-data are supplied.
Required fields:
- name, version, URL
-
- Recommended fields:
- (author and author_email) or (maintainer and maintainer_email))
+ name, version
Warns if any are missing.
"""
metadata = self.distribution.metadata
missing = []
- for attr in ('name', 'version', 'url'):
- if not (hasattr(metadata, attr) and getattr(metadata, attr)):
+ for attr in 'name', 'version':
+ if not getattr(metadata, attr, None):
missing.append(attr)
if missing:
- self.warn("missing required meta-data: %s" % ', '.join(missing))
- if not (
- self._check_contact("author", metadata) or
- self._check_contact("maintainer", metadata)
- ):
- self.warn("missing meta-data: either (author and author_email) " +
- "or (maintainer and maintainer_email) " +
- "should be supplied")
-
- def _check_contact(self, kind, metadata):
- """
- Returns True if the contact's name is specified and False otherwise.
- This function will warn if the contact's email is not specified.
- """
- name = getattr(metadata, kind) or ''
- email = getattr(metadata, kind + '_email') or ''
-
- msg = ("missing meta-data: if '{}' supplied, " +
- "'{}' should be supplied too")
-
- if name and email:
- return True
-
- if name:
- self.warn(msg.format(kind, kind + '_email'))
- return True
-
- addresses = [(alias, addr) for alias, addr in getaddresses([email])]
- if any(alias and addr for alias, addr in addresses):
- # The contact's name can be encoded in the email: `Name <email>`
- return True
-
- return False
+ self.warn("missing required meta-data: %s" % ', '.join(missing))
def check_restructuredtext(self):
"""Checks if the long string fields are reST-compliant."""