[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "la-leaderboard-v2" dynamic = ["version"] description = "LLM Leaderboard for Ibero-American Languages - v2 Update" readme = "README.md" requires-python = ">=3.11" license = "Apache-2.0" keywords = ["nlp", "llm", "evaluation", "spanish", "catalan", "basque", "galician", "leaderboard"] authors = [ { name = "La Leaderboard Community" }, ] [tool.hatch.version] path = "src/__init__.py" [tool.hatch.envs.default] dependencies = [ "pytest", "pytest-cov", ] [tool.hatch.envs.default.scripts] cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=src --cov=tests {args}" no-cov = "cov --no-cov {args}" [tool.hatch.envs.test] dependencies = [ "pytest", "pytest-cov", ] [tool.hatch.build.targets.wheel] packages = ["src"] [tool.black] target-version = ["py311"] line-length = 120 skip-string-normalization = true [tool.ruff] target-version = "py311" line-length = 120 [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 = [ # Allow non-abstract empty methods in abstract base classes "B027", # Allow boolean positional values in function calls "FBT003", # Ignore checks for possible passwords "S105", "S107", "S106", # Ignore complexity "C901", "PLR0911", "PLR0912", "PLR0913", "PLR0915", ] [tool.ruff.lint.pydocstyle] convention = "google" [tool.ruff.lint.per-file-ignores] # Tests can use magic values, assertions, and relative imports "tests/**/*" = ["PLR2004", "S101", "TID252"] [tool.coverage.run] source_pkgs = ["src", "tests"] branch = true parallel = true omit = [ "src/__about__.py", ] [tool.coverage.paths] la_leaderboard_v2 = ["src", "*/la-leaderboard-v2/src"] tests = ["tests", "*/la-leaderboard-v2/tests"] [tool.coverage.report] exclude_lines = [ "no cov", "if __name__ == .__main__.:", "if TYPE_CHECKING:", ]