Spaces:
Build error
Build error
Add autopep8 as a dependency for code formatting - Updated pyproject.toml to include autopep8 version 2.3.2 for improved code style consistency. Modified uv.lock to reflect the new dependency and its requirements. This update aims to enhance code maintainability and adherence to style guidelines.
f7943d1 | [project] | |
| name = "beatdebate" | |
| version = "0.1.0" | |
| description = "Multi-agent music recommendation system using LLM debates" | |
| authors = [ | |
| {name = "BeatDebate Team", email = "team@beatdebate.com"} | |
| ] | |
| readme = "README.md" | |
| requires-python = ">=3.11" | |
| dependencies = [ | |
| # Core web framework | |
| "fastapi>=0.104.0", | |
| "gradio>=4.0.0", | |
| "uvicorn>=0.24.0", | |
| # LLM and Agent Framework | |
| "langchain>=0.1.0", | |
| "langchain-google-genai>=1.0.0", | |
| "langgraph>=0.0.40", | |
| # Vector Store and Embeddings | |
| "chromadb>=0.4.0", | |
| "sentence-transformers>=2.2.0", | |
| # HTTP and API clients | |
| "requests>=2.31.0", | |
| "aiohttp>=3.9.0", | |
| "httpx>=0.25.0", | |
| # Environment and Configuration | |
| "python-dotenv>=1.0.0", | |
| "pydantic>=2.5.0", | |
| "pydantic-settings>=2.1.0", | |
| # Data Processing | |
| "pandas>=2.1.0", | |
| "numpy>=1.24.0", | |
| # Caching and Storage | |
| "diskcache>=5.6.0", | |
| # Logging and Monitoring | |
| "structlog>=23.2.0", | |
| "rich>=13.7.0", | |
| "google-generativeai>=0.8.5", | |
| "autopep8>=2.3.2", | |
| ] | |
| [project.optional-dependencies] | |
| dev = [ | |
| # Testing | |
| "pytest>=7.4.0", | |
| "pytest-asyncio>=0.21.0", | |
| "pytest-cov>=4.1.0", | |
| "httpx>=0.25.0", # For testing async clients | |
| # Code Quality | |
| "black>=23.11.0", | |
| "isort>=5.12.0", | |
| "mypy>=1.7.0", | |
| "ruff>=0.1.6", | |
| # Development Tools | |
| "pre-commit>=3.5.0", | |
| "jupyter>=1.0.0", | |
| ] | |
| [build-system] | |
| requires = ["hatchling"] | |
| build-backend = "hatchling.build" | |
| [tool.hatch.build.targets.wheel] | |
| packages = ["src"] | |
| [tool.black] | |
| line-length = 188 | |
| target-version = ['py311'] | |
| include = '\.pyi?$' | |
| extend-exclude = ''' | |
| /( | |
| # directories | |
| \.eggs | |
| | \.git | |
| | \.hg | |
| | \.mypy_cache | |
| | \.tox | |
| | \.venv | |
| | build | |
| | dist | |
| )/ | |
| ''' | |
| [tool.isort] | |
| profile = "black" | |
| multi_line_output = 3 | |
| line-length = 188 | |
| known_first_party = ["beatdebate"] | |
| [tool.mypy] | |
| python_version = "3.11" | |
| warn_return_any = true | |
| warn_unused_configs = true | |
| disallow_untyped_defs = true | |
| disallow_incomplete_defs = true | |
| check_untyped_defs = true | |
| disallow_untyped_decorators = true | |
| no_implicit_optional = true | |
| warn_redundant_casts = true | |
| warn_unused_ignores = true | |
| warn_no_return = true | |
| warn_unreachable = true | |
| strict_equality = true | |
| [tool.pytest.ini_options] | |
| testpaths = ["tests"] | |
| python_files = "test_*.py" | |
| python_classes = "Test*" | |
| python_functions = "test_*" | |
| addopts = "--cov=src --cov-report=term-missing --cov-report=html" | |
| asyncio_mode = "auto" | |
| [tool.ruff] | |
| line-length = 188 | |
| target-version = "py311" | |
| extend-exclude = [ | |
| ".venv", | |
| "build", | |
| "dist", | |
| ] | |
| [tool.ruff.lint] | |
| select = [ | |
| "E", # pycodestyle errors | |
| "W", # pycodestyle warnings | |
| "F", # pyflakes | |
| "I", # isort | |
| "B", # flake8-bugbear | |
| "C4", # flake8-comprehensions | |
| "UP", # pyupgrade | |
| ] | |
| ignore = [ | |
| "E501", # line too long, handled by black | |
| "B008", # do not perform function calls in argument defaults | |
| ] | |
| [dependency-groups] | |
| dev = [ | |
| "pytest>=8.3.5", | |
| "pytest-asyncio>=0.26.0", | |
| "pytest-cov>=6.1.1", | |
| ] | |