black/setup.py

59 lines
1.9 KiB
Python

# Copyright (C) 2018 Łukasz Langa
import ast
import re
from setuptools import setup
import sys
assert sys.version_info >= (3, 6, 0), "black requires Python 3.6+"
from pathlib import Path # noqa E402
CURRENT_DIR = Path(__file__).parent
def get_long_description():
readme_md = CURRENT_DIR / 'README.md'
with open(readme_md, encoding='utf8') as ld_file:
return ld_file.read()
def get_version():
black_py = CURRENT_DIR / 'black.py'
_version_re = re.compile(r'__version__\s+=\s+(?P<version>.*)')
with open(black_py, 'r', encoding='utf8') as f:
version = _version_re.search(f.read()).group('version')
return str(ast.literal_eval(version))
setup(
name='black',
version=get_version(),
description="The uncompromising code formatter.",
long_description=get_long_description(),
long_description_content_type="text/markdown",
keywords='automation formatter yapf autopep8 pyfmt gofmt rustfmt',
author='Łukasz Langa',
author_email='lukasz@langa.pl',
url='https://github.com/ambv/black',
license='MIT',
py_modules=['black'],
packages=['blib2to3', 'blib2to3.pgen2'],
package_data={'blib2to3': ['*.txt']},
python_requires=">=3.6",
zip_safe=False,
install_requires=['click', 'attrs'],
test_suite='tests.test_black',
classifiers=[
'Development Status :: 3 - Alpha',
'Environment :: Console',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3 :: Only',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: Software Development :: Quality Assurance',
],
entry_points={'console_scripts': ['black=black:main']},
)