test_PR349 / pyproject.toml
alozowski's picture
alozowski HF Staff
Sync from GitHub via hub-sync
8c424b3 verified
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
[project]
name = "reachy_mini_conversation_app"
version = "0.6.1"
authors = [{ name = "Pollen Robotics", email = "contact@pollen-robotics.com" }]
description = ""
readme = "README.md"
requires-python = ">=3.10"
dependencies = [
#Media
"av",
"aiortc>=1.13.0",
"fastrtc>=0.0.34",
"gradio==5.50.1.dev1",
"huggingface-hub==1.3.0",
"httpx",
#Environment variables
"python-dotenv",
#OpenAI
"openai>=2.30.0",
#Gemini
"google-genai>=1.0.0",
#Reachy mini
"reachy_mini_dances_library",
"reachy_mini_toolbox",
"reachy-mini>=1.7.1",
"gradio_client>=1.13.3",
]
[project.optional-dependencies]
local_vision = [
"accelerate>=1.13.0",
"torch>=2.1",
"transformers==5.3.0",
"num2words",
]
yolo_vision = [
"ultralytics",
"supervision",
"opencv-python>=4.13.0.92",
]
mediapipe_vision = [
"mediapipe==0.10.14",
]
all_vision = [
"accelerate>=1.13.0",
"torch>=2.1",
"transformers==5.3.0",
"num2words",
"ultralytics",
"supervision",
"opencv-python>=4.13.0.92",
"mediapipe==0.10.14",
]
[dependency-groups]
dev = [
"pytest",
"pytest-asyncio",
"ruff==0.12.0",
"mypy==1.18.2",
"pre-commit",
"types-requests",
"python-semantic-release>=10.5.3",
]
[project.scripts]
reachy-mini-conversation-app = "reachy_mini_conversation_app.main:main"
[tool.uv]
dependency-metadata = [
# Upstream metadata currently marks `gstreamer-msvc-runtime` as unconditional.
# It should only be required on Windows. Temp fix.
{ name = "gstreamer-libs", version = "1.28.1", requires-dist = ["gstreamer-msvc-runtime; sys_platform == 'win32'", "setuptools"] },
]
[project.entry-points."reachy_mini_apps"]
reachy_mini_conversation_app = "reachy_mini_conversation_app.main:ReachyMiniConversationApp"
[tool.setuptools]
package-dir = { "" = "src" }
include-package-data = true
[tool.setuptools.packages.find]
where = ["src"]
[tool.setuptools.package-data]
reachy_mini_conversation_app = [
"images/*",
"static/*",
".env.example",
"demos/**/*.txt",
"prompts_library/*.txt",
"prompts/**/*.txt",
]
reachy_talk_data = [
"profiles/**/*.txt",
"profiles/**/*.py",
]
[tool.ruff]
line-length = 119
exclude = [".venv", "dist", "build", "**/__pycache__", "*.egg-info", ".mypy_cache", ".pytest_cache"]
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"F", # pyflakes
"W", # pycodestyle warnings
"I", # isort
"C4", # flake8-comprehensions
"D", # pydocstyle
]
ignore = [
"E501", # handled by formatter
"D100", # ignore missing module docstrings
"D203", # blank line before class docstring (conflicts with D211)
"D213", # summary on second line (conflicts with D212)
]
[tool.ruff.lint.isort]
length-sort = true
lines-after-imports = 2
no-lines-before = ["standard-library", "local-folder"]
known-local-folder = ["reachy_mini_conversation_app"]
known-first-party = ["reachy_mini", "reachy_mini_dances_library", "reachy_mini_toolbox"]
split-on-trailing-comma = true
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[tool.mypy]
python_version = "3.12"
files = ["src/"]
ignore_missing_imports = true
strict = true
show_error_codes = true
warn_unused_ignores = true