Files
NetScaler_forensik/pyproject.toml
T

61 lines
1.5 KiB
TOML
Raw Normal View History

[build-system]
requires = ["hatchling>=1.27"]
build-backend = "hatchling.build"
[project]
name = "netscaler-triage"
version = "1.0.1"
description = "Offline NetScaler evidence analysis with inspectable decoding and provenance"
readme = "README.md"
license = "MIT"
license-files = ["LICENSE.txt"]
requires-python = ">=3.14"
dependencies = [
"py7zr>=1.0",
"regex>=2025.11",
"tzdata>=2025.2",
"rich>=14.1",
"rich-argparse>=1.7",
"pyzipper>=0.3.6",
# pySigma 2 defaults to RE2, which rejects the supported lookahead rules.
"pysigma>=1.5.1,<2",
]
[project.scripts]
netscaler-triage = "netscaler_triage.cli:main"
[tool.hatch.build.targets.wheel]
packages = ["src/netscaler_triage"]
[tool.hatch.build.targets.sdist]
include = ["src/", "tests/", "typing_stubs/", "examples/", "config/threat_intel.json", "README.md", "RULES.txt", "VALIDATION.txt", "THREAT_INTELLIGENCE.txt", "LICENSE.txt", "uv.lock", ".python-version", ".gitignore", "pyproject.toml"]
[dependency-groups]
dev = [
"mypy>=2.3.1",
"ruff>=0.14",
"types-pyyaml>=6.0.12.20260906",
"types-regex>=2026.9.10.20260911",
]
[tool.ruff]
line-length = 100
target-version = "py314"
[tool.ruff.lint]
select = ["E", "F", "I", "UP", "B", "SIM", "RUF", "PERF"]
[tool.mypy]
strict = true
warn_unreachable = true
mypy_path = "typing_stubs"
python_version = "3.14"
files = ["src", "tests"]
check_untyped_defs = true
disallow_untyped_defs = true
warn_return_any = true
warn_unused_ignores = true
warn_redundant_casts = true
strict_equality = true
no_implicit_optional = true
pretty = true