import pathlib
import tomli # For Python < 3.11
from setuptools import find_packages, setup

# Get the directory containing this file
HERE = pathlib.Path(__file__).parent

# Load pyproject.toml
with open(HERE / "pyproject.toml", "rb") as f:
    pyproject_toml = tomli.load(f)

project_metadata = pyproject_toml.get("project", {})

# Extract dependencies
install_requires = project_metadata.get("dependencies", [])
extras_require = project_metadata.get("optional-dependencies", {})

setup(
    name=project_metadata.get("name", "suno-dagster"), # Fallback if not in pyproject
    version=project_metadata.get("version", "0.1.0"), # Fallback
    description=project_metadata.get("description", ""), # Fallback
    packages=find_packages(exclude=["tests"]),
    install_requires=install_requires,
    extras_require=extras_require,
    python_requires=project_metadata.get("requires-python", ">=3.10"), # Fallback
)
