TOML · 2122 bytes Raw Blame History
1 [build-system]
2 requires = ["setuptools>=61.0", "wheel"]
3 build-backend = "setuptools.build_meta"
4
5 [project]
6 name = "sultree"
7 version = "0.0.8"
8 description = "SELinux-aware tree command - displays directory trees filtered by SELinux security contexts"
9 readme = "README.md"
10 requires-python = ">=3.8"
11 license = {text = "MIT"}
12 authors = [
13 {name = "mfw", email = "espadon@outlook.com"},
14 ]
15 keywords = ["tree", "selinux", "security", "filesystem", "cli"]
16 classifiers = [
17 "Development Status :: 3 - Alpha",
18 "Environment :: Console",
19 "Intended Audience :: System Administrators",
20 "License :: OSI Approved :: MIT License",
21 "Operating System :: POSIX :: Linux",
22 "Programming Language :: Python :: 3",
23 "Programming Language :: Python :: 3.8",
24 "Programming Language :: Python :: 3.9",
25 "Programming Language :: Python :: 3.10",
26 "Programming Language :: Python :: 3.11",
27 "Programming Language :: Python :: 3.12",
28 "Topic :: System :: Systems Administration",
29 "Topic :: Security",
30 ]
31 dependencies = []
32
33 [project.optional-dependencies]
34 dev = [
35 "pytest>=7.0.0",
36 "pytest-cov>=4.0.0",
37 "black>=22.0.0",
38 "flake8>=6.0.0",
39 "mypy>=1.0.0",
40 "bandit>=1.7.0", # Security linting
41 "safety>=2.0.0", # Dependency security scanning
42 ]
43
44 [project.scripts]
45 sultree = "sultree.__main__:main"
46
47 [project.urls]
48 # Homepage = "https://github.com/username/sultree"
49 # Repository = "https://github.com/username/sultree"
50 # Issues = "https://github.com/username/sultree/issues"
51
52 [tool.setuptools.packages.find]
53 where = ["src"]
54
55 [tool.setuptools.package-dir]
56 "" = "src"
57
58 # Security-focused linting configuration
59 [tool.bandit]
60 exclude_dirs = ["tests"]
61 skips = []
62
63 [tool.black]
64 line-length = 88
65 target-version = ["py38"]
66
67 [tool.mypy]
68 python_version = "3.8"
69 warn_return_any = true
70 warn_unused_configs = true
71 disallow_untyped_defs = true
72 disallow_incomplete_defs = true
73 check_untyped_defs = true
74 warn_redundant_casts = true
75 warn_unused_ignores = true
76 strict_optional = true
77
78 [tool.pytest.ini_options]
79 testpaths = ["tests"]
80 addopts = "--cov=sultree --cov-report=html --cov-report=term-missing"