mirror of
https://github.com/aljazceru/Auditor.git
synced 2025-12-17 03:24:18 +01:00
113 lines
2.2 KiB
TOML
113 lines
2.2 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "theauditor"
|
|
version = "1.0.1"
|
|
description = "Offline, air-gapped CLI for repo indexing, evidence checking, and task running"
|
|
readme = "README.md"
|
|
requires-python = ">=3.11"
|
|
license = {text = "AGPL-3.0"}
|
|
authors = [
|
|
{name = "TheAuditor Team"}
|
|
]
|
|
dependencies = [
|
|
"click==8.2.1",
|
|
"PyYAML==6.0.2",
|
|
"jsonschema==4.25.1",
|
|
"ijson==3.4.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest==8.4.2",
|
|
"ruff==0.12.12",
|
|
"black==25.1.0",
|
|
]
|
|
linters = [
|
|
"ruff==0.12.12",
|
|
"mypy==1.17.1",
|
|
"black==25.1.0",
|
|
"bandit==1.8.6",
|
|
"pylint==3.3.8",
|
|
]
|
|
ml = [
|
|
"scikit-learn==1.7.1",
|
|
"numpy==2.3.2",
|
|
"scipy==1.16.1",
|
|
"joblib==1.5.2",
|
|
]
|
|
ast = [
|
|
"tree-sitter==0.25.1",
|
|
"tree-sitter-language-pack==0.9.0",
|
|
"sqlparse==0.5.3",
|
|
"dockerfile-parse==2.0.1",
|
|
]
|
|
all = [
|
|
# Dev tools
|
|
"pytest==8.4.2",
|
|
# Linters
|
|
"ruff==0.12.12",
|
|
"mypy==1.17.1",
|
|
"black==25.1.0",
|
|
"bandit==1.8.6",
|
|
"pylint==3.3.8",
|
|
# ML features
|
|
"scikit-learn==1.7.1",
|
|
"numpy==2.3.2",
|
|
"scipy==1.16.1",
|
|
"joblib==1.5.2",
|
|
# AST parsing
|
|
"tree-sitter==0.25.1",
|
|
"tree-sitter-language-pack==0.9.0",
|
|
# SQL parsing
|
|
"sqlparse==0.5.3",
|
|
# Docker parsing
|
|
"dockerfile-parse==2.0.1",
|
|
]
|
|
|
|
[project.scripts]
|
|
aud = "theauditor.cli:main"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["theauditor"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py311"
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"E", # pycodestyle errors
|
|
"W", # pycodestyle warnings
|
|
"F", # pyflakes
|
|
"I", # isort
|
|
"N", # pep8-naming
|
|
"UP", # pyupgrade
|
|
"B", # flake8-bugbear
|
|
"C4", # flake8-comprehensions
|
|
"SIM", # flake8-simplify
|
|
]
|
|
ignore = [
|
|
"E501", # line too long - handled by black
|
|
"SIM105", # contextlib.suppress - can be less readable
|
|
"SIM117", # multiple with statements - can be less readable
|
|
]
|
|
|
|
[tool.ruff.lint.isort]
|
|
known-first-party = ["theauditor"]
|
|
|
|
[tool.black]
|
|
line-length = 100
|
|
target-version = ["py311"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
pythonpath = ["."]
|
|
addopts = "-v"
|
|
|
|
[tool.mypy]
|
|
python_version = "3.12"
|
|
strict = true
|
|
warn_unused_configs = true |