]> git.madduck.net Git - etc/vim.git/blobdiff - setup.py

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

redo grammar selection, add test (#765)
[etc/vim.git] / setup.py
index a64482cc1a89c62dc657369ab96b275e8bbbc9c7..620124facc39b25631faf5c61654e91522262378 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -10,58 +10,57 @@ from pathlib import Path  # noqa E402
 CURRENT_DIR = Path(__file__).parent
 
 
-def get_long_description():
-    readme_md = CURRENT_DIR / 'README.md'
-    try:
-        import pypandoc
-        return pypandoc.convert_file(str(readme_md), 'rst')
+def get_long_description() -> str:
+    readme_md = CURRENT_DIR / "README.md"
+    with open(readme_md, encoding="utf8") as ld_file:
+        return ld_file.read()
 
-    except (IOError, ImportError):
-        print()
-        print(
-            '\x1b[31m\x1b[1mwarning:\x1b[0m\x1b[31m pandoc not found, '
-            'long description will be ugly (PyPI does not support .md).'
-            '\x1b[0m'
-        )
-        print()
-        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')
+def get_version() -> str:
+    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:
+        match = _version_re.search(f.read())
+        version = match.group("version") if match is not None else '"unknown"'
     return str(ast.literal_eval(version))
 
 
 setup(
-    name='black',
+    name="black",
     version=get_version(),
     description="The uncompromising code formatter.",
     long_description=get_long_description(),
-    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'],
+    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", "blackd"],
+    packages=["blib2to3", "blib2to3.pgen2"],
+    package_data={"blib2to3": ["*.txt"]},
     python_requires=">=3.6",
     zip_safe=False,
-    install_requires=['click', 'attrs'],
-    test_suite='tests.test_black',
+    install_requires=["click>=6.5", "attrs>=18.1.0", "appdirs", "toml>=0.9.4"],
+    extras_require={"d": ["aiohttp>=3.3.2", "aiohttp-cors"]},
+    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',
-        'Topic :: Software Development :: Libraries :: Python Modules',
-        'Topic :: Software Development :: Quality Assurance',
+        "Development Status :: 4 - Beta",
+        "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.7",
+        "Programming Language :: Python :: 3 :: Only",
+        "Topic :: Software Development :: Libraries :: Python Modules",
+        "Topic :: Software Development :: Quality Assurance",
     ],
-    entry_points={'console_scripts': ['black=black:main']},
+    entry_points={
+        "console_scripts": [
+            "black=black:patched_main",
+            "blackd=blackd:patched_main [d]",
+        ]
+    },
 )