theHarvester/pyproject.toml
2024-06-16 20:38:47 +02:00

105 lines
2.6 KiB
TOML

[project]
name = "theHarvester"
description = "theHarvester is a very simple, yet effective tool designed to be used in the early stages of a penetration test"
readme = "README.md"
authors = [
{ name = "Christian Martorella", email = "cmartorella@edge-security.com" },
{ name = "Jay Townsend", email = "jay@cybermon.uk" },
{ name = "Matthew Brown", email = "36310667+NotoriousRebel@users.noreply.github.com" },
]
requires-python = ">=3.10"
urls.Homepage = "https://github.com/laramies/theHarvester"
classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"License :: OSI Approved :: GNU General Public License v2 (GPLv2)",
"Operating System :: OS Independent",
]
dynamic = ["dependencies", "optional-dependencies", "version"]
[project.scripts]
theHarvester = "theHarvester.theHarvester:main"
restfulHarvest = "theHarvester.restfulHarvest:main"
[tool.setuptools.dynamic]
version = { attr = "theHarvester.lib.version.VERSION" }
dependencies = { file = "requirements/base.txt" }
optional-dependencies.dev = { file = "requirements/dev.txt" }
[tool.setuptools.packages.find]
include = ["theHarvester*"]
[tool.setuptools.package-data]
"*" = ["*.txt", "*.yaml"]
[tool.pytest.ini_options]
minversion = "7.1.1"
addopts = "--no-header --asyncio-mode=auto"
testpaths = [
"tests",
"tests/discovery/",
]
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[tool.mypy]
python_version = "3.11"
warn_unused_configs = true
ignore_missing_imports = true
show_traceback = true
show_error_codes = true
namespace_packages = true
[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
"tests",
".eggs",
".git",
".git-rewrite",
".mypy_cache",
".pyenv",
".pytest_cache",
".pytype",
".ruff_cache",
".github",
".venv",
".vscode",
".idea",
"__pypackages__",
"build",
"dist",
"site-packages",
"venv",
]
line-length = 130
target-version = "py310"
show-fixes = true
[tool.ruff.lint]
select = ["E4", "E7", "E9", "F", "I", "UP", "TCH"]
ignore = []
# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []
# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "single"
indent-style = "space"
# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false
# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"