[project] name = "wheke-sqlmodel" version = "0.5.1" description = "Add sql capabilities to wheke with SQLModel" readme = "README.md" requires-python = ">=3.12" dependencies = [ "aiosqlite", "anyio", "sqlmodel", "wheke", ] [dependency-groups] dev = [ "httpx2", "isort", "mypy", "pytest", "pytest-cov", "ruff", ] [tool.pytest.ini_options] pythonpath = [ "src" ] [tool.coverage.run] relative_files = true branch = true parallel = true omit = [] [tool.coverage.report] exclude_lines = [ "no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:", ] [tool.isort] profile = "black" skip = [ ".env", ".hatch", ".mypy_cache", ".venv", "__pycache__", "env", "venv", ] [tool.mypy] disallow_incomplete_defs = true check_untyped_defs = true warn_unused_ignores = true exclude = """ .env | .hatch | .mypy_cache | .venv | __pycache__ | env | venv """ [tool.ruff] exclude = [ ".env", ".hatch", ".mypy_cache", ".venv", "__pycache__", "env", "venv", ] [tool.ruff.lint] select = [ "A", "ARG", "B", "C", "DTZ", "E", "EM", "F", "FBT", "I", "ICN", "ISC", "N", "PLC", "PLE", "PLR", "PLW", "Q", "RUF", "S", "T", "TID", "UP", "W", "YTT", ] ignore = [ # Same line string implicit string concatenation "ISC001", # Allow non-abstract empty methods in abstract base classes "B027", # Ignore checks for possible passwords "S105", "S106", "S107", # Ignore complexity "C901", "PLR0911", "PLR0912", "PLR0913", "PLR0915", # Relative imports "TID252", ] unfixable = [ # Don't touch unused imports "F401", ] [tool.ruff.lint.isort] known-first-party = ["wheke_sqlmodel"] [tool.ruff.lint.per-file-ignores] # Tests can use magic values, assertions, and relative imports "tests/**/*" = ["PLR2004", "S101", "TID252"]