-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathpyproject.toml
More file actions
76 lines (67 loc) · 2 KB
/
Copy pathpyproject.toml
File metadata and controls
76 lines (67 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
[build-system]
requires = ["setuptools>=70", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "ocinferno"
version = "0.6.2"
description = "OCI offensive security assessment and enumeration framework."
readme = "README.md"
requires-python = ">=3.11"
license = "BSD-3-Clause"
license-files = ["LICENSE"]
authors = [
{ name = "NetSPI" }
]
dynamic = ["dependencies"]
classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Operating System :: OS Independent",
"Intended Audience :: Information Technology",
"Topic :: Security",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0",
"ruff==0.16.1"
]
excel = [
"pandas==3.0.5",
"xlsxwriter==3.2.9"
]
# Prettier boxed tables. Optional: without it, output falls back to a plain ASCII table.
table = [
"prettytable==3.18.0"
]
[project.scripts]
ocinferno = "ocinferno.cli.main:main"
[tool.setuptools.dynamic]
dependencies = { file = ["requirements.txt"] }
[tool.setuptools]
include-package-data = true
[tool.setuptools.packages.find]
where = ["."]
include = ["ocinferno*"]
namespaces = true
[tool.setuptools.package-data]
"ocinferno.mappings" = ["*.json"]
"ocinferno.modules.opengraph.utilities.helpers" = ["data/*.json"]
# -----------------------------
# Lint / type-check configuration
# -----------------------------
# Ruff is the BLOCKING CI gate. The rule set is intentionally conservative
# (real-bug rules only, no style/formatting churn) so it stays green on the
# existing large codebase. Grow `select` over time (B, UP, SIM, ...) as the
# code is cleaned up.
[tool.ruff]
target-version = "py311"
line-length = 120
extend-exclude = ["tests/**/data"]
[tool.ruff.lint]
# E9 = syntax/IndentationError/IO errors (always real)
# F = pyflakes: undefined names, unused imports, f-string bugs, redefinitions
select = ["E9", "F"]