105 lines
2.2 KiB
TOML
105 lines
2.2 KiB
TOML
[project]
|
|
name = "pyargus"
|
|
version = "0.1.0"
|
|
requires-python = ">=3.8"
|
|
classifiers = [
|
|
"Programming Language :: Rust",
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
|
|
dev = [
|
|
# Type check
|
|
"mypy",
|
|
"typing-extensions",
|
|
# Lint code
|
|
"ruff",
|
|
"Flake8-pyproject",
|
|
"flake8-bugbear",
|
|
"flake8-pyi",
|
|
# Sort imports
|
|
"isort",
|
|
# Reformat
|
|
"black",
|
|
]
|
|
|
|
test = ["pytest", "pytest-cov", "hypothesis"]
|
|
|
|
[build-system]
|
|
requires = ["maturin>=1.0,<2.0"]
|
|
build-backend = "maturin"
|
|
|
|
|
|
[tool.maturin]
|
|
features = ["pyo3/extension-module"]
|
|
module-name = "argus._argus"
|
|
|
|
[tool.pytest.ini_options]
|
|
addopts = ["--import-mode=importlib"]
|
|
testpaths = ["tests"]
|
|
|
|
[tool.mypy]
|
|
packages = ["argus"]
|
|
# ignore_missing_imports = true
|
|
show_error_codes = true
|
|
|
|
[tool.ruff]
|
|
line-length = 127
|
|
select = ["E", "F", "W", "N", "B", "ANN", "PYI"]
|
|
ignore = ["ANN101", "ANN102"]
|
|
|
|
[tool.ruff.per-file-ignores]
|
|
"*.py" = ["B905", "E203", "E501", "W291", "W293"]
|
|
"*.pyi" = ["B", "E501", "E701"]
|
|
|
|
[tool.flake8]
|
|
max-line-length = 127
|
|
max-complexity = 10
|
|
per-file-ignores = [
|
|
"*.py: B905, B907, B950, E203, E501, W503, W291, W293",
|
|
"*.pyi: B, E301, E302, E305, E501, E701, E704, W503",
|
|
]
|
|
# 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/",
|
|
]
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
line_length = 127
|
|
skip_gitignore = false
|
|
group_by_package = true
|
|
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
|