[project] name = "discord-bot" version = "0.1.0" description = "Discord Summarizer Bot with credit-based monetization" readme = "README.md" requires-python = ">=3.12" dependencies = [ "attrs==25.4.0", "disnake==2.11.0", "httpx==0.28.1", "loguru==0.7.3", "pydantic==2.12.3", ] [dependency-groups] dev = [ "black==25.9.0", "isort==7.0.0", "pyright==1.1.407", "ruff==0.14.3", ] [tool.black] line-length = 88 target-version = ["py312"] [tool.ruff.isort] combine-as-imports = true [tool.slotscheck] strict-imports = true require-superclass = true require-subclass = false [tool.pyright] typeCheckingMode = "strict" pythonVersion = "3.12" [tool.ruff] select = [ "E", "F", "W", "I", "D", "UP", "YTT", "ANN", "S", "BLE", "FBT", "B", "C4", "DTZ", "T10", "EM", "ISC", "G", "PIE", "T20", "Q", "RSE", "RET", "SIM", "ARG", "PGH", "PLC", "PLE", "PLR", "PLW", "TRY", "RUF", ] ignore = [ "F403", "F405", "D107", "D203", "D213", "RET505", "RET506", "RET507", "RET508", "PLR2004", "PLR0912", "PLR0913", "PLR0915", "UP006", "UP007", "UP035", "S311", ] unfixable = ["RET502", "RET503"] [tool.ruff.pydocstyle] convention = "numpy" [tool.ruff.per-file-ignores] "__init__.py" = ["F401"]