[project]
name = "diy"
version = "0.1.0"
description = "Add your description here"
authors = [{ name = "Niclas van Eyk", email = "niclas.eyk@gmail.com" }]
dependencies = []
readme = "README.md"
requires-python = ">= 3.12"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.rye]
managed = true
dev-dependencies = [
  "pytest>=8.1.1",
  "ruff>=0.3.5",
  "mkdocs-material>=9.5.17",
  "coverage>=7.4.4",
]

[tool.hatch.metadata]
allow-direct-references = true

[tool.hatch.build.targets.wheel]
packages = ["src/diy"]

[tool.pytest]
addopts = "--doctest-modules"

[tool.ruff]
src = ["src"]

[tool.ruff.lint]
preview = true
select = [
  "F",
  "I",
  "UP",
  "N",
  "YTT",
  "ANN",
  "ASYNC",
  "S",
  "BLE",
  "FBT",
  "B",
  "C4",
  "DTZ",
  "T10",
  "EM",
  "FA",
  "LOG",
  "G",
  "INP",
  "PIE",
  "T20",
  "PT",
  "RSE",
  "RET",
  "SLF",
  "SIM",
  "TID",
  "PTH",
  "PLE",
  "FURB",
  "RUF",
]
ignore = ["ANN101", "PT013", "S101"]

[tool.basedpyright]
reportAny = false
reportUnusedCallResult = false
