krec 0.2.0

K-Scale robot action format
[tool.black]

line-length = 120
target-version = ["py311"]
include = '\.pyi?$'

[tool.pytest.ini_options]

addopts = "-rx -rf -x -q --full-trace"
testpaths = ["tests"]

markers = [
    "slow: Marks test as being slow",
]

[tool.mypy]

pretty = true
show_column_numbers = true
show_error_context = true
show_error_codes = true
show_traceback = true
disallow_untyped_defs = true
strict_equality = true
allow_redefinition = true

warn_unused_ignores = true
warn_redundant_casts = true

incremental = true
namespace_packages = false

[[tool.mypy.overrides]]

module = [
    "setuptools",
    "setuptools_rust",
]
ignore_missing_imports = true

[[tool.mypy.overrides]]

module = ["krec.bindings"]

disable_error_code = ["no-untyped-def"]

[tool.isort]

profile = "black"

[tool.ruff]

line-length = 120
target-version = "py310"

[tool.ruff.lint]

select = ["ANN", "D", "E", "F", "I", "N", "PGH", "PLC", "PLE", "PLR", "PLW", "W"]

ignore = [
    "ANN101", "ANN102",
    "D101", "D102", "D103", "D104", "D105", "D106", "D107",
    "N812", "N817",
    "PLR0911", "PLR0912", "PLR0913", "PLR0915", "PLR2004",
    "PLW0603", "PLW2901",
]

dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"

[tool.ruff.lint.per-file-ignores]

"__init__.py" = ["E402", "F401", "F403", "F811"]

[tool.ruff.lint.isort]

known-first-party = ["krec", "tests"]
combine-as-imports = true

[tool.ruff.lint.pydocstyle]

convention = "google"

[build-system]

requires = ["setuptools>=42", "wheel", "setuptools-rust>=1.5.2"]
build-backend = "setuptools.build_meta"