diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..2b653b5 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,2 @@ +enforce-typing +aenum diff --git a/setup.py b/setup.py index 5c15a7a..17d7009 100644 --- a/setup.py +++ b/setup.py @@ -1,29 +1,42 @@ #!/usr/bin/env python -from setuptools import setup import re -PACKAGE_NAME = 'socials_util' +from setuptools import setup -with open('README.md', 'r') as f: +PACKAGE_NAME = 'socials-util' + +with open('README.md') as f: readme = f.read() -with open(PACKAGE_NAME+'/_version.py', 'r') as f: - match = re.match(r'^__version__\s*=\s*"([\d\.]+)"$', f.read()) - version = match.group(1) - del match +with open(PACKAGE_NAME.replace('-', '_') + '/_version.py') as f: + text = f.read() + match = re.match(r'^__version__\s*=\s*(["\'])([\d\.]+)\1$', text) + version = match.group(2) + del match, text + +with open('requirements.txt') as f: + install_requires = f.read().strip().split('\n') + + +def get_short_description(readme: str): + readme = re.sub(r'#+[^\n]*\n+', '', readme) + m = re.search(r'^\s*(\w+[\w\s,`]+\.)', readme) + try: + return m.group(1) + except AttributeError as err: + msg = 'Could not determine short description' + raise Exception(msg) from err + setup( name=PACKAGE_NAME, version=version, + description=get_short_description(readme), long_description=readme, long_description_content_type='text/markdown', author='Jmaa', author_email='jonjmaa@gmail.com', - url='https://gitfub.space/Jmaa/socials-util', + url='https://gitfub.space/Jmaa/' + PACKAGE_NAME, packages=[PACKAGE_NAME], - install_requires=['enforce-typing', 'aenum'], - keywords=[], - classifiers=[], - include_package_data=True, - zip_safe=False + install_requires=install_requires, )