94 lines
2 KiB
TOML
94 lines
2 KiB
TOML
[build-system]
|
|
requires = ["maturin>=0.14,<0.15"]
|
|
build-backend = "maturin"
|
|
|
|
[project]
|
|
name = "pyargus"
|
|
requires-python = ">=3.7"
|
|
classifiers = [
|
|
"Programming Language :: Rust",
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
|
|
dev = [
|
|
# Type check
|
|
"mypy",
|
|
# Lint code
|
|
"Flake8-pyproject",
|
|
"ruff",
|
|
# Find likely bugs
|
|
"flake8-bugbear",
|
|
# Sort imports
|
|
"isort",
|
|
# Reformat
|
|
"black",
|
|
]
|
|
|
|
[tool.maturin]
|
|
features = ["pyo3/extension-module"]
|
|
module-name = "argus._argus"
|
|
|
|
[tool.pyright]
|
|
include = ["argus/", "examples/"]
|
|
|
|
[tool.mypy]
|
|
# ignore_missing_imports = true
|
|
show_error_codes = true
|
|
|
|
[tool.ruff]
|
|
line-length = 127
|
|
select = ["E", "F", "W", "N"]
|
|
ignore = ["F403"]
|
|
|
|
[tool.flake8]
|
|
# line breaks before and after binary operators
|
|
# ignore explicit stack level
|
|
ignore = ["W503", "W504", "E203", "E231", "C901", "F403"]
|
|
# Ignore import not used when aliases are defined
|
|
exclude = [
|
|
# No need to traverse our git directory
|
|
".git/",
|
|
# There's no value in checking cache directories
|
|
"__pycache__/",
|
|
# Don't check the doc
|
|
"docs/",
|
|
# This contains our built documentation
|
|
"build/",
|
|
# This contains builds of flake8 that we don't want to check
|
|
"dist/",
|
|
"*.egg-info",
|
|
# Artifacts generated by linters and type checkers
|
|
".mypy_cache/",
|
|
".ruff_cache/",
|
|
]
|
|
max-complexity = 10
|
|
max-line-length = 127
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
line_length = 127
|
|
skip_gitignore = false
|
|
group_by_package = true
|
|
src_paths = ["argus", "examples/"]
|
|
extend_skip = [
|
|
# No need to traverse our git directory
|
|
".git/",
|
|
# There's no value in checking cache directories
|
|
"__pycache__/",
|
|
# Don't check the doc
|
|
"docs/",
|
|
# This contains our built documentation
|
|
"build/",
|
|
# This contains builds of flake8 that we don't want to check
|
|
"dist/",
|
|
"*.egg-info",
|
|
# Artifacts generated by linters and type checkers
|
|
".mypy_cache/",
|
|
".ruff_cache/",
|
|
]
|
|
|
|
[tool.black]
|
|
line-length = 127
|