Overhaul Python package metadata

Modernize our package metadata in the following ways:

* switch from description-file to long_description with the file
  attribute, and specify an explicit content type and encoding

* replace the home-page parameter with the newer general url one

* add specific labelled project links for improved navigation from
  PyPI's summary sidebar

* include some appropriate keywords to help folks searching

* use the specific license metadata in addition to the corresponding
  trove classifier for it

* make sure wheels when built also incorporate the LICENSE and
  AUTHORS files so that we're not distributing them without a copy
  of the license text

* indicate support for MacOS X/Darwin in trove classifiers

https://setuptools.readthedocs.io/en/latest/userguide/declarative_config.html

Also adjust tox.ini to no longer pick a specific Python 3.x
interpreter in the default envs list, instead making it use whatever
python3 the developer has on hand since that's probably "good
enough" for local testing.

Change-Id: Ib509016b532ec7cf65472cf3ee9a5e1b29949534
This commit is contained in:
Jeremy Stanley 2021-02-04 16:55:53 +00:00
parent 7fb65c5c22
commit cad541f4fe
2 changed files with 25 additions and 19 deletions

View File

@ -1,32 +1,46 @@
[metadata]
name = bindep
summary = Binary dependency utility
description-file =
README.rst
author = OpenStack Developer Community
author-email = openstack-discuss@lists.openstack.org
home-page = http://docs.openstack.org/infra/bindep
long_description = file: README.rst
long_description_content_type = text/x-rst; charset=UTF-8
author = OpenDev Contributors
author-email = service-discuss@lists.opendev.org
url = https://docs.opendev.org/opendev/bindep
project_urls =
Browse Source = https://opendev.org/opendev/bindep
Bug Reporting = https://storyboard.openstack.org/#!/project/opendev/bindep
Documentation = https://docs.opendev.org/opendev/bindep
Git Clone URL = https://opendev.org/opendev/bindep
License Texts = https://opendev.org/opendev/bindep/src/branch/master/LICENSE
Release Notes = https://docs.opendev.org/opendev/bindep/latest/releasenotes.html
keywords = binary dependency distribution distro package commandline
license = Apache License, Version 2.0
license_files =
AUTHORS
LICENSE
classifier =
Development Status :: 5 - Production/Stable
Environment :: Console
Environment :: OpenStack
Intended Audience :: Developers
Intended Audience :: Information Technology
License :: OSI Approved :: Apache Software License
Operating System :: MacOS :: MacOS X
Operating System :: POSIX :: Linux
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.4
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: Implementation :: CPython
Programming Language :: Python :: Implementation :: PyPy
Topic :: Software Development :: Quality Assurance
Topic :: Software Development :: Testing
Topic :: System :: Archiving :: Packaging
Topic :: Utilities
[files]
packages =
bindep
packages = bindep
[pbr]
warnerrors = True
@ -37,11 +51,3 @@ console_scripts =
[wheel]
universal = 1
[build_sphinx]
source-dir = doc/source
build-dir = doc/build
all_files = 1
[upload_sphinx]
upload-dir = doc/build/html

View File

@ -1,6 +1,6 @@
[tox]
min_version = 3.1
envlist = py35,py27,pypy,pep8
envlist = py3,py27,pep8
skipdist = True
ignore_basepython_conflict=true