diff --git a/setup.py b/setup.py index 9165f96..d3745b2 100644 --- a/setup.py +++ b/setup.py @@ -3,6 +3,7 @@ # MANUAL CHANGES CAN AND WILL BE OVERWRITTEN! import re +from pathlib import Path from setuptools import setup @@ -64,6 +65,20 @@ def parse_version_file(text: str) -> str: return match.group(2) +def find_python_packages() -> list[str]: + """ + Find all python packages. (Directories containing __init__.py files.) + """ + root_path = Path(PACKAGE_NAME) + packages: set[str] = set([PACKAGE_NAME]) + + # Search recursively + for init_file in root_path.rglob('__init__.py'): + packages.add(str(init_file.parent).replace('/', '.')) + + print(f'Found following packages: {packages}') + return sorted(packages) + with open(PACKAGE_NAME + '/_version.py') as f: version = parse_version_file(f.read()) @@ -99,6 +114,7 @@ setup( author='Jon Michael Aanes', author_email='jonjmaa@gmail.com', url='https://gitfub.space/Jmaa/' + PACKAGE_NAME, + packages=find_python_packages(), install_requires=REQUIREMENTS_MAIN, extras_require={ 'test': REQUIREMENTS_TEST,