import os import re from setuptools import find_packages, setup def get_version(package: str) -> str: """ Return package version as listed in `__version__` in `init.py`. """ with open(os.path.join(package, "__init__.py")) as f: return re.search("__version__ = ['\"]([^'\"]+)['\"]", f.read()).group(1) setup( name="owslib", python_requires=">=3.8", version=get_version("owslib"), description="The Orchard Web Service library", author="The Orchard", author_email="webdev@theorchard.com", classifiers=[ "Development Status :: 3 - Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Topic :: Internet :: WWW/HTTP", "Framework :: Flask", "Framework :: FastAPI", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", ], packages=find_packages(exclude=["tests*"]), package_data={"owslib": ["py.typed"]}, entry_points={"pytest11": ["ows_client = owslib.client.plugin"]}, include_package_data=True, install_requires=[ "orjson >= 3.7.0", "arrow >= 1.2.2", "httpx >= 0.23.0", "authlib >= 1.0.1", "tabulate >= 0.8.9", "click >= 8.0.0", "cachelib >= 0.9.0", ], extras_require={ "fastapi": ["fastapi >= 0.78.0"], "starlette": ["starlette == 0.19.1"], "flask": ["flask >= 2.0.0"], "django": ["django >= 3.2.0"], "dev": [ "black >= 22.3.0", "isort >= 5.10.1", "flake8 >= 4.0.1", "flake8-tidy-imports >= 4.8.0", "mypy >= 0.950, < 0.960", "pytest >= 7.1.2", "pytest-cov >= 3.0.0", "pytest-mock >= 3.7.0", "pytest-env >= 0.6.2", "pytest-asyncio >= 0.18.3", "pytest-django >= 4.5.2", "respx >= 0.19.2", "requests >= 2.27.1", "types-tabulate >= 0.8.9", "django-stubs[compatible-mypy] >= 1.11.0", ], }, )