[build-system]
requires = ["setuptools", "wheel", "build"]
build-backend = "setuptools.build_meta"

[project]
name = "wapiti3"
version = "3.2.0"
description = "A web application vulnerability scanner"
readme  = "README.rst"
requires-python = ">=3.10" 
authors = [
        {name="Nicolas Surribas", email="nicolas.surribas@gmail.com"},
]
license = {file = "LICENSE"}
classifiers = [
        "Development Status :: 5 - Production/Stable",
        "Environment :: Console",
        "Intended Audience :: End Users/Desktop",
        "Intended Audience :: Developers",
        "Intended Audience :: System Administrators",
        "License :: OSI Approved :: GNU General Public License v2 (GPLv2)",
        "Natural Language :: English",
        "Operating System :: MacOS :: MacOS X",
        "Operating System :: POSIX",
        "Operating System :: Unix",
        "Programming Language :: Python :: 3",
        "Programming Language :: Python :: 3.10",
        "Programming Language :: Python :: 3.11",
        "Topic :: Security",
        "Topic :: Internet :: WWW/HTTP :: Indexing/Search",
        "Topic :: Software Development :: Testing"
]
dependencies = [
        "aiocache==0.12.2",
        "aiohttp==3.9.4",
        "aiosqlite==0.20.0",
        "arsenic==21.8",
        "beautifulsoup4==4.12.3",
        "browser-cookie3==0.19.1",
        "dnspython==2.6.1",
        "h11==0.14.0",
        "httpcore==1.0.4",
        "httpx[brotli, socks]==0.27.0",
        "httpx-ntlm==1.4.0",
        "humanize==4.9.0",
        "loguru==0.7.2",
        "mako==1.3.2",
        "markupsafe==2.1.5",
        "mitmproxy==10.2.3",
        "packaging==24.1",
        "pyasn1==0.5.1",
        "six==1.16.0",
        "sqlalchemy==2.0.28",
        "tld==0.13",
        "typing-extensions==4.10.0",
        "yaswfp==0.9.3",
        "prance[osv]>=23.6.21.0"
]

[project.urls]
homepage = "https://wapiti-scanner.github.io/"
repository = "https://github.com/wapiti-scanner/wapiti"

[project.scripts]
wapiti = "wapitiCore.main.wapiti:wapiti_asyncio_wrapper"
wapiti-getcookie = "wapitiCore.main.getcookie:getcookie_asyncio_wrapper"

[project.optional-dependencies]
test = [
        "humanize==4.9.0",
        "pytest==8.0.2",
        "pytest-cov==4.1.0",
        "pytest-asyncio==0.23.5",
        "respx==0.20.2",
]

[tool.setuptools.packages]
find = {exclude=["tests*"]}

[tool.pytest.ini_options]
testpaths = [
    "tests",
]
addopts = "--cov --cov-report=xml"

[tool.coverage.run]
source = ["wapitiCore"]

[tool.coverage.report]
show_missing = true
