[project] name = "pigway-frame-flow" version = "0.1.24" readme = "README.md" license = {file = "LICENSE"} requires-python = ">=3.14,<3.15" dependencies = ["paho-mqtt==2.1.0", "python-dateutil==2.9.0.post0", "fastapi==0.142.2", "uvicorn==0.54.0", "pillow==12.3.0", "requests==2.34.2", "croniter==6.2.4", "python-multipart==0.0.32", "pyyaml==6.0.3"] [project.optional-dependencies] test = ["pytest==9.1.1", "httpx2==2.13.1", "mypy==2.3.1", "pip-audit==2.10.1", "types-requests==2.33.0.20260906", "types-PyYAML==6.0.12.20260906", "types-croniter==6.2.4.20260711", "ruff==0.16.9"] [tool.pytest.ini_options] pythonpath = ["."] testpaths = ["tests"] [tool.ruff] # Preserve existing syntax/formatting independently of runtime support. target-version = "py312" exclude = ["vendor", ".venv"] [build-system] requires = ["setuptools>=75"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find] include = ["pigway_frame_flow*", "vendor*"] [tool.setuptools.package-data] pigway_frame_flow = ["templates/*.json", "web/*", "integrations/kokonna_official/*.json"] [tool.ruff.lint] select = ["E4", "E7", "E9", "F", "I", "B"] ignore = ["B008"] # FastAPI dependency defaults are declarative framework markers. [tool.mypy] python_version = "3.14" check_untyped_defs = true ignore_missing_imports = true exclude = ["vendor/", "tests/"]