mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-04-20 16:00:29 +00:00
Add long_description_content_type in setup.py, fix incorrectly matched up title underlines in README.rst, and fix incorrect entry in MANIFEST.in that was forgotten when the README was renamed in 06296bf.
73 lines
2.3 KiB
Python
73 lines
2.3 KiB
Python
from setuptools import setup, find_packages
|
|
import re
|
|
|
|
requirements = []
|
|
with open('requirements.txt') as f:
|
|
requirements = f.read().splitlines()
|
|
|
|
version = ''
|
|
with open('discord/__init__.py') as f:
|
|
version = re.search(r'^__version__\s*=\s*[\'"]([^\'"]*)[\'"]', f.read(), re.MULTILINE).group(1)
|
|
|
|
if not version:
|
|
raise RuntimeError('version is not set')
|
|
|
|
if version.endswith(('a', 'b', 'rc')):
|
|
# append version identifier based on commit count
|
|
try:
|
|
import subprocess
|
|
p = subprocess.Popen(['git', 'rev-list', '--count', 'HEAD'],
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
out, err = p.communicate()
|
|
if out:
|
|
version += out.decode('utf-8').strip()
|
|
p = subprocess.Popen(['git', 'rev-parse', '--short', 'HEAD'],
|
|
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
|
out, err = p.communicate()
|
|
if out:
|
|
version += '+g' + out.decode('utf-8').strip()
|
|
except Exception:
|
|
pass
|
|
|
|
readme = ''
|
|
with open('README.rst') as f:
|
|
readme = f.read()
|
|
|
|
extras_require = {
|
|
'voice': ['PyNaCl==1.2.1'],
|
|
'docs': [
|
|
'sphinx==1.7.4',
|
|
'sphinxcontrib-asyncio',
|
|
'sphinxcontrib-websupport',
|
|
]
|
|
}
|
|
|
|
setup(name='discord.py',
|
|
author='Rapptz',
|
|
url='https://github.com/Rapptz/discord.py',
|
|
version=version,
|
|
packages=['discord', 'discord.ext.commands'],
|
|
license='MIT',
|
|
description='A python wrapper for the Discord API',
|
|
long_description=readme,
|
|
long_description_content_type="text/x-rst",
|
|
include_package_data=True,
|
|
install_requires=requirements,
|
|
extras_require=extras_require,
|
|
python_requires='>=3.5.3',
|
|
classifiers=[
|
|
'Development Status :: 4 - Beta',
|
|
'License :: OSI Approved :: MIT License',
|
|
'Intended Audience :: Developers',
|
|
'Natural Language :: English',
|
|
'Operating System :: OS Independent',
|
|
'Programming Language :: Python :: 3.5',
|
|
'Programming Language :: Python :: 3.6',
|
|
'Programming Language :: Python :: 3.7',
|
|
'Topic :: Internet',
|
|
'Topic :: Software Development :: Libraries',
|
|
'Topic :: Software Development :: Libraries :: Python Modules',
|
|
'Topic :: Utilities',
|
|
]
|
|
)
|