from setuptools import setup, find_packages
from pathlib import Path
import runpy

# Load package metadata from __about__.py without importing dependencies
about = runpy.run_path(Path(__file__).parent / "alpaxa_quant" / "__about__.py")

setup(
    name="alpaxa_quant",
    version=about["__version__"],
    author=about["__author__"],
    author_email=about["__email__"],
    description=about["__summary__"],
    long_description=open("README.md", encoding="utf-8").read(),
    long_description_content_type="text/markdown",
    url=about["__uri__"],
    license=about["__license__"],
    packages=find_packages(),
    include_package_data=True,
    install_requires=[
        "beautifulsoup4==4.14.2",
        "certifi==2025.10.5",
        "cffi==2.0.0",
        "charset-normalizer==3.4.4",
        "curl_cffi==0.13.0",
        "decorator==5.2.1",
        "frozendict==2.4.6",
        "html5lib==1.1",
        "idna==3.11",
        "iniconfig==2.3.0",
        "lxml==6.0.2",
        "multitasking==0.0.12",
        "numpy==2.3.4",
        "packaging==25.0",
        "pandas==2.3.3",
        "peewee==3.18.3",
        "platformdirs==4.5.0",
        "pluggy==1.6.0",
        "protobuf==6.33.0",
        "pycparser==2.23",
        "Pygments==2.19.2",
        "pytest==8.4.2",
        "python-dateutil==2.9.0.post0",
        "python-dotenv==1.2.1",
        "pytz==2025.2",
        "requests==2.32.5",
        "retry==0.9.2",
        "setuptools==80.9.0",
        "six==1.17.0",
        "soupsieve==2.8",
        "tqdm==4.67.1",
        "typing_extensions==4.15.0",
        "tzdata==2025.2",
        "urllib3==2.5.0",
        "webencodings==0.5.1",
        "websockets==15.0.1",
        "yfinance==0.2.66",
    ],
    python_requires=">=3.9",
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: Apache Software License",
        "Operating System :: OS Independent",
        "Topic :: Scientific/Engineering :: Information Analysis",
        "Topic :: Software Development :: Libraries :: Python Modules",
    ],
)
