[project] name = "camguard" version = "0.1.0" description = "Demo local: detecta intrusos en una zona restringida de un video de seguridad" readme = "README.md" requires-python = ">=3.12" dependencies = [ "av>=19.0.2", "gradio>=6.30.0", "numpy>=2.5.4", "opencv-python>=5.0.0.93", "rfdetr>=1.11.2", "spaces>=0.51.3", "supervision>=0.31.2", "trackers>=2.6.1", ] [dependency-groups] dev = [ "pytest>=9.2.0", "ruff>=0.17.3", ] [tool.ruff] line-length = 100 target-version = "py312" [tool.ruff.lint] select = [ "E", # pycodestyle: errores de estilo "F", # pyflakes: errores reales (imports sin usar, nombres indefinidos) "I", # isort: orden de imports "UP", # pyupgrade: sintaxis moderna de Python "B", # flake8-bugbear: bugs comunes "SIM", # flake8-simplify: código que se puede simplificar "D", # pydocstyle: docstrings ] # D105/D107: __enter__, __exit__ e __init__ se documentan en el docstring de la clase. ignore = ["D105", "D107"] [tool.ruff.lint.per-file-ignores] "tests/*" = ["D"] # exigir docstring en cada test es ruido [tool.ruff.lint.pydocstyle] convention = "google" [tool.pytest] testpaths = ["tests"] pythonpath = ["."] # para importar el paquete camguard desde la raíz del repo