[project] name = "playlist-monitor" version = "0.1.0" description = "Automated playlist monitoring service for MeTube" authors = [ {name = "TubeWatch Team", email = "noreply@example.com"} ] dependencies = [ "fastapi>=0.104.0", "uvicorn[standard]>=0.24.0", "sqlalchemy>=2.0.0", "alembic>=1.12.0", "apscheduler>=3.10.0", "aiohttp>=3.9.0", "python-socketio[client]>=5.10.0", "yt-dlp>=2023.12.30", "pydantic>=2.5.0", "pydantic-settings>=2.0.0", "python-dotenv>=1.0.0", "asyncpg>=0.29.0", "python-multipart>=0.0.6", "httpx>=0.25.0", ] requires-python = ">=3.13" readme = "README.md" license = {text = "MIT"} [tool.setuptools] py-modules = [] [project.optional-dependencies] dev = [ "pytest>=7.4.0", "pytest-asyncio>=0.21.0", "pytest-cov>=4.1.0", "black>=23.11.0", "isort>=5.12.0", "flake8>=6.1.0", "mypy>=1.7.0", ] [build-system] requires = ["setuptools>=61.0", "wheel"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find] where = ["."] include = ["app*"] exclude = ["tests*", "data*", "logs*"] [tool.black] line-length = 88 target-version = ['py313'] [tool.isort] profile = "black" line_length = 88 [tool.mypy] python_version = "3.13" warn_return_any = true warn_unused_configs = true disallow_untyped_defs = true