1
0

Updated standard Python setup

This commit is contained in:
Jon Michael Aanes 2024-05-29 20:29:10 +02:00
parent 5460384ba4
commit 4c7d47fe42

View File

@ -15,29 +15,32 @@ PACKAGE_NAME = 'fin_defs'
with open('README.md') as f: with open('README.md') as f:
readme = f.read() readme = f.read()
with open(PACKAGE_NAME + '/_version.py') as f: def parse_version_file(text: str) -> str:
text = f.read()
match = re.match(r'^__version__\s*=\s*(["\'])([\d\.]+)\1$', text) match = re.match(r'^__version__\s*=\s*(["\'])([\d\.]+)\1$', text)
version = match.group(2) if match is None:
del match, text msg = 'Malformed _version.py file!'
raise Exception(msg)
return match.group(2)
with open(PACKAGE_NAME + '/_version.py') as f:
version = parse_version_file(f.read())
def parse_requirements(text: str) -> list[str]: def parse_requirements(text: str) -> list[str]:
return text.strip().split('\n') return text.strip().split('\n')
def read_requirements(path: str): def read_requirements(path: str) -> list[str]:
with open(path) as f: with open(path) as f:
return parse_requirements(f.read()) return parse_requirements(f.read())
def get_short_description(readme: str): def determine_short_description(readme: str) -> str:
readme = re.sub(r'#+[^\n]*\n+', '', readme) readme = re.sub(r'#+[^\n]*\n+', '', readme)
m = re.search(r'^\s*(\w+[\w\s,`-]+\.)', readme) m = re.search(r'^\s*(\w+[\w\s,`+-]+\.)', readme)
try: try:
return m.group(1) return m.group(1)
except AttributeError as err: except AttributeError as err:
msg = 'Could not determine short description' msg = f'Could not determine short description: {readme}'
raise Exception(msg) from err raise Exception(msg) from err
@ -53,7 +56,7 @@ pytest
setup( setup(
name=PACKAGE_NAME, name=PACKAGE_NAME,
version=version, version=version,
description=get_short_description(readme), description=determine_short_description(readme),
long_description=readme, long_description=readme,
long_description_content_type='text/markdown', long_description_content_type='text/markdown',
author='Jmaa', author='Jmaa',