[tool.poetry] name = "birdcam2" version = "0.1.0" description = "" authors = ["Andrew Kettel "] readme = "README.md" packages = [{include = "src"}] [tool.poetry.dependencies] python = "^3.12.3" [tool.poetry.group.dev.dependencies] pytest = "^8.0" pytest-cov = "^5.0" black = "^24.0" ruff = "^0.4" mypy = "^1.10" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" # ── Black ────────────────────────────────────────────────────────────────── [tool.black] line-length = 88 target-version = ["py312"] # ── Ruff ─────────────────────────────────────────────────────────────────── [tool.ruff] line-length = 88 target-version = "py312" [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 length handled by black [tool.ruff.lint.isort] known-first-party = ["src"] # ── Mypy ─────────────────────────────────────────────────────────────────── [tool.mypy] python_version = "3.12.3" strict = true warn_return_any = true warn_unused_configs = true ignore_missing_imports = true # ── Pytest ───────────────────────────────────────────────────────────────── [tool.pytest.ini_options] testpaths = ["tests"] addopts = "--cov=src --cov-report=term-missing"