migrate to setup.cfg

This commit is contained in:
Mathieu Dupuy 2023-09-04 15:19:54 +02:00
parent ab9c8301cb
commit 760e864200
No known key found for this signature in database
GPG Key ID: 8A83DA018824DAC3
2 changed files with 67 additions and 120 deletions

View File

@ -5,3 +5,68 @@ addopts = --assert=plain --cov=gunicorn --cov-report=xml
[metadata]
license_files = ['LICENSE']
name = gunicorn
version = attr: gunicorn.__version__
author = Benoit Chesneau
author_email = benoitc@gunicorn.org
license = MIT
description = WSGI HTTP Server for UNIX
url = https://gunicorn.org
long_description = file: README.rst
classifiers =
Development Status :: 5 - Production/Stable
Environment :: Other Environment
Intended Audience :: Developers
License :: OSI Approved :: MIT License
Operating System :: MacOS :: MacOS X
Operating System :: POSIX
Programming Language :: Python
Programming Language :: Python :: 3
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 :: 3.10
Programming Language :: Python :: 3.11
Programming Language :: Python :: 3 :: Only
Programming Language :: Python :: Implementation :: CPython
Programming Language :: Python :: Implementation :: PyPy
Topic :: Internet
Topic :: Utilities
Topic :: Software Development :: Libraries :: Python Modules
Topic :: Internet :: WWW/HTTP
Topic :: Internet :: WWW/HTTP :: WSGI
Topic :: Internet :: WWW/HTTP :: WSGI :: Server
Topic :: Internet :: WWW/HTTP :: Dynamic Content
project_urls =
Documentation = https://docs.gunicorn.org
Homepage = https://gunicorn.org
Issue tracker = https://github.com/benoitc/gunicorn/issues
Source code = https://github.com/benoitc/gunicorn
[options]
packages = find:
zip_safe = False
install_requires =
importlib_metadata; python_version<"3.8"
packaging
include_package_data = True
python_requires = >=3.5
tests_require =
gevent
eventlet
cryptography
coverage
pytest
pytest-cov
[options.packages.find]
exclude = examples; tests
[options.extras_require]
gevent = gevent>=1.4.0
eventlet = eventlet>=0.24.1
tornado = tornado>=0.2
gthread =
setproctitle = setproctitle

122
setup.py
View File

@ -1,121 +1,3 @@
# -*- coding: utf-8 -
#
# This file is part of gunicorn released under the MIT license.
# See the NOTICE for more information.
from setuptools import setup
import os
import sys
from setuptools import setup, find_packages
from setuptools.command.test import test as TestCommand
from gunicorn import __version__
CLASSIFIERS = [
'Development Status :: 5 - Production/Stable',
'Environment :: Other Environment',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: MacOS :: MacOS X',
'Operating System :: POSIX',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'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 :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
'Topic :: Internet',
'Topic :: Utilities',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: Internet :: WWW/HTTP',
'Topic :: Internet :: WWW/HTTP :: WSGI',
'Topic :: Internet :: WWW/HTTP :: WSGI :: Server',
'Topic :: Internet :: WWW/HTTP :: Dynamic Content']
# read long description
with open(os.path.join(os.path.dirname(__file__), 'README.rst')) as f:
long_description = f.read()
# read dev requirements
fname = os.path.join(os.path.dirname(__file__), 'requirements_test.txt')
with open(fname) as f:
tests_require = [l.strip() for l in f.readlines()]
class PyTestCommand(TestCommand):
user_options = [
("cov", None, "measure coverage")
]
def initialize_options(self):
TestCommand.initialize_options(self)
self.cov = None
def finalize_options(self):
TestCommand.finalize_options(self)
self.test_args = ['tests']
if self.cov:
self.test_args += ['--cov', 'gunicorn']
self.test_suite = True
def run_tests(self):
import pytest
errno = pytest.main(self.test_args)
sys.exit(errno)
install_requires = [
'importlib_metadata; python_version<"3.8"',
'packaging',
]
extras_require = {
'gevent': ['gevent>=1.4.0'],
'eventlet': ['eventlet>=0.24.1'],
'tornado': ['tornado>=0.2'],
'gthread': [],
'setproctitle': ['setproctitle'],
}
setup(
name='gunicorn',
version=__version__,
description='WSGI HTTP Server for UNIX',
long_description=long_description,
author='Benoit Chesneau',
author_email='benoitc@gunicorn.org',
license='MIT',
url='https://gunicorn.org',
project_urls={
'Documentation': 'https://docs.gunicorn.org',
'Homepage': 'https://gunicorn.org',
'Issue tracker': 'https://github.com/benoitc/gunicorn/issues',
'Source code': 'https://github.com/benoitc/gunicorn',
},
python_requires='>=3.5',
install_requires=install_requires,
classifiers=CLASSIFIERS,
zip_safe=False,
packages=find_packages(exclude=['examples', 'tests']),
include_package_data=True,
tests_require=tests_require,
cmdclass={'test': PyTestCommand},
entry_points="""
[console_scripts]
gunicorn=gunicorn.app.wsgiapp:run
[paste.server_runner]
main=gunicorn.app.pasterapp:serve
""",
extras_require=extras_require,
)
setup()