Files
pf1e-simulator/pyproject.toml
T

64 lines
2.2 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[project]
name = "pf1e-simulator"
version = "0.1.0"
requires-python = ">=3.12"
dependencies = [
"pydantic>=2",
"pyyaml",
]
[project.scripts]
pf1e-sim = "pf1e_simulator.cli:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/pf1e_simulator"]
[dependency-groups]
dev = [
"pytest",
"ruff",
"basedpyright",
]
# ── Ruff ──────────────────────────────────────────────────────────────────────
[tool.ruff]
target-version = "py312"
line-length = 100
[tool.ruff.lint]
select = ["ALL"]
ignore = [
# D: docstring rules — we don't write docstrings everywhere in early scaffolding
"D",
# COM812: trailing-comma-in-missing — conflicts with ruff formatter
"COM812",
# ISC001: single-line-implicit-string-concatenation — conflicts with formatter
"ISC001",
# CPY001: missing copyright notice — we don't use copyright headers
"CPY001",
]
# RUF001: sigma in the CLI balance report is intentional, not a confusable
allowed-confusables = ["σ"]
[tool.ruff.lint.per-file-ignores]
# Tests: assert is expected, magic numbers are fine, annotations are noisy,
# parametrized golden tests legitimately take many arguments
"tests/**" = ["S101", "PLR2004", "ANN", "PLR0913", "PLR0917", "ARG001"]
# rng.py: `random.Random` is used for reproducible Monte Carlo streams, not cryptography
"src/pf1e_simulator/rng.py" = ["S311"]
# cli.py: stdout printing is the point of a CLI
"src/pf1e_simulator/cli.py" = ["T201"]
# ── Basedpyright ──────────────────────────────────────────────────────────────
[tool.basedpyright]
typeCheckingMode = "strict"
include = ["src", "tests"]
# ── Pytest ────────────────────────────────────────────────────────────────────
[tool.pytest.ini_options]
testpaths = ["tests"]