mirror of https://github.com/pybind/pybind11
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
2.0 KiB
87 lines
2.0 KiB
[build-system] |
|
requires = ["setuptools>=42", "cmake>=3.18", "ninja"] |
|
build-backend = "setuptools.build_meta" |
|
|
|
|
|
[tool.check-manifest] |
|
ignore = [ |
|
"tests/**", |
|
"docs/**", |
|
"tools/**", |
|
"include/**", |
|
".*", |
|
"pybind11/include/**", |
|
"pybind11/share/**", |
|
"CMakeLists.txt", |
|
"noxfile.py", |
|
] |
|
|
|
|
|
[tool.mypy] |
|
files = ["pybind11"] |
|
python_version = "3.8" |
|
strict = true |
|
enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"] |
|
warn_unreachable = true |
|
|
|
[[tool.mypy.overrides]] |
|
module = ["ghapi.*"] |
|
ignore_missing_imports = true |
|
|
|
|
|
[tool.pylint] |
|
master.py-version = "3.7" |
|
reports.output-format = "colorized" |
|
messages_control.disable = [ |
|
"design", |
|
"fixme", |
|
"imports", |
|
"line-too-long", |
|
"imports", |
|
"invalid-name", |
|
"protected-access", |
|
"missing-module-docstring", |
|
"unused-argument", # covered by Ruff ARG |
|
] |
|
|
|
[tool.ruff] |
|
target-version = "py37" |
|
src = ["src"] |
|
|
|
[tool.ruff.lint] |
|
extend-select = [ |
|
"B", # flake8-bugbear |
|
"I", # isort |
|
"N", # pep8-naming |
|
"ARG", # flake8-unused-arguments |
|
"C4", # flake8-comprehensions |
|
"EM", # flake8-errmsg |
|
"ICN", # flake8-import-conventions |
|
"PGH", # pygrep-hooks |
|
"PIE", # flake8-pie |
|
"PL", # pylint |
|
"PT", # flake8-pytest-style |
|
"RET", # flake8-return |
|
"RUF100", # Ruff-specific |
|
"SIM", # flake8-simplify |
|
"UP", # pyupgrade |
|
"YTT", # flake8-2020 |
|
] |
|
ignore = [ |
|
"PLR", # Design related pylint |
|
"E501", # Line too long (Black is enough) |
|
"PT011", # Too broad with raises in pytest |
|
"PT004", # Fixture that doesn't return needs underscore (no, it is fine) |
|
"SIM118", # iter(x) is not always the same as iter(x.keys()) |
|
] |
|
unfixable = ["T20"] |
|
isort.known-first-party = ["env", "pybind11_cross_module_tests", "pybind11_tests"] |
|
isort.required-imports = ["from __future__ import annotations"] |
|
|
|
|
|
[tool.ruff.lint.per-file-ignores] |
|
"tests/**" = ["EM", "N", "E721"] |
|
"tests/test_call_policies.py" = ["PLC1901"] |
|
|
|
[tool.repo-review] |
|
ignore = ["PP"]
|
|
|