[tool.poetry]
name = "boofuzz"
version = "0.4.2"
description = "A fork and successor of the Sulley Fuzzing Framework"
authors = ["Joshua Pereyda <joshua.t.pereyda@gmail.com>"]
license = "GPL-2.0-only"
readme = ["README.rst", "CHANGELOG.rst"]
repository = "https://github.com/jtpereyda/boofuzz"
documentation = "https://boofuzz.readthedocs.io/"
keywords = ["security", "fuzzing"]
classifiers = [
    "Development Status :: 4 - Beta",
    "Environment :: Console",
    "Environment :: Console :: Curses",
    "Intended Audience :: Developers",
    "Intended Audience :: Science/Research",
    "Natural Language :: English",
    "Operating System :: OS Independent",
    "Topic :: Security",
    "Topic :: System :: Networking",
    "Topic :: Software Development :: Testing :: Traffic Generation",
]

include = [
    { path = "*.py", format = "sdist" },
    { path = "*.rst", format = "sdist" },
    { path = "*.toml", format = "sdist" },
    { path = "*.txt", format = "sdist" },
    { path = "tox.ini", format = "sdist" },
    { path = "_static", format = "sdist" },
    { path = "artwork", format = "sdist" },
    { path = "docs", format = "sdist" },
    { path = "examples", format = "sdist" },
    { path = "request_definitions", format = "sdist" },
    { path = "unit_tests", format = "sdist" },
    { path = "utils", format = "sdist" },
]

[tool.poetry.dependencies]
attrs = "*"
click = "*"
colorama = "*"
Flask = "*"
funcy = "*"
psutil = "*"
pydot = "*"
pyserial = "*"
python = "^3.9"
tornado = "*"

# dev extras
black = { version = "*", optional = true }
flake8 = { version = "*", optional = true }
ipaddress = { version = "*", optional = true }
mock = { version = "*", optional = true }
netifaces = { version = "*", optional = true }
pytest = { version = "*", optional = true }
pytest-bdd = { version = "*", optional = true }
pytest-cov = { version = "*", optional = true }
tox = { version = "*", optional = true }
wheel = { version = "*", optional = true }

# docs extras
pygments = { version = ">=2.4.0", optional = true }
sphinx = { version = "*", optional = true }
sphinx_rtd_theme = { version = "*", optional = true }

[tool.poetry.extras]
dev = [
    "black",
    "flake8",
    "ipaddress",
    "mock",
    "netifaces",
    "pygments",
    "pytest",
    "pytest-bdd",
    "pytest-cov",
    "sphinx",
    "sphinx_rtd_theme",
    "tox",
    "wheel",
]
docs = [
    "sphinx",
    "sphinx_rtd_theme",
    "pygments",
]

[tool.poetry.scripts]
boo = 'boofuzz.cli:main'

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"

[tool.black]
line-length = 120

[tool.pytest.ini_options]
testpaths = ["unit_tests"]
filterwarnings = [
    "ignore:SocketConnection is deprecated:FutureWarning",
]

[tool.pytype]
disable = [
    "import-error",
]
exclude = [
    "**/ida_fuzz_library_extender.py",
    "examples/*.py",
    "**/*_test_*.py",
    "request_definitions/*.py",
    "utils/*.py",
]
