diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..353cc3e --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1 @@ +include davtelepot/ietf_language_tags.csv diff --git a/setup.py b/setup.py index 4cd1b74..5ba3a94 100644 --- a/setup.py +++ b/setup.py @@ -1,20 +1,29 @@ +"""Setup.""" + import codecs import os import re import setuptools import sys -if sys.version_info < (3,5): +if sys.version_info < (3, 5): raise RuntimeError("Python3.5+ is needed to run async code") here = os.path.abspath(os.path.dirname(__file__)) + def read(*parts): + """Read file in `part.part.part.part.ext`. + + Start from `here` and follow the path given by `*parts` + """ with codecs.open(os.path.join(here, *parts), 'r') as fp: return fp.read() -def find_information(info, *file_paths): - version_file = read(*file_paths) + +def find_information(info, *file_path_parts): + """Read information in file.""" + version_file = read(*file_path_parts) version_match = re.search( r"^__{info}__ = ['\"]([^'\"]*)['\"]".format( info=info @@ -26,6 +35,7 @@ def find_information(info, *file_paths): return version_match.group(1) raise RuntimeError("Unable to find version string.") + with open("README.md", "r") as readme_file: long_description = readme_file.read() @@ -34,7 +44,10 @@ setuptools.setup( version=find_information("version", "davtelepot", "__init__.py"), author=find_information("author", "davtelepot", "__init__.py"), author_email=find_information("email", "davtelepot", "__init__.py"), - description="telepot.aio.Bot convenient subclass, featuring dataset-powered SQLite.", + description=( + "telepot.aio.Bot convenient subclass, featuring dataset-powered " + "SQLite." + ), license=find_information("license", "davtelepot", "__init__.py"), long_description=long_description, long_description_content_type="text/markdown", @@ -52,11 +65,15 @@ setuptools.setup( "Development Status :: 3 - Alpha", "Framework :: AsyncIO", "Intended Audience :: Developers", - "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", + ( + "License :: OSI Approved :: GNU Lesser General Public License " + "v3 (LGPLv3)" + ), "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3 :: Only", "Topic :: Communications :: Chat", ], keywords='telepot telegram bot python wrapper', + include_package_data=True, )