Files
pwntools/pyproject.toml
T
Rogdham d9eff01662 Use compression.zstd (PEP-784) (#2769)
* Use compression.zstd (PEP-784)

* Add changelog entry
2026-08-28 13:54:23 +02:00

125 lines
3.0 KiB
TOML

[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
dynamic = ["version", "scripts"]
name = "pwntools"
description = "Pwntools CTF framework and exploit development library."
license = {text = "Mostly MIT, some GPL/BSD, see LICENSE-pwntools.txt"}
readme = "README.md"
authors = [{name = "Gallopsled et al.", email = "[email protected]"}]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: MIT License",
"Natural Language :: English",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3",
"Topic :: Security",
"Topic :: Software Development :: Assemblers",
"Topic :: Software Development :: Debuggers",
"Topic :: Software Development :: Disassemblers",
"Topic :: Software Development :: Embedded Systems",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: System :: System Shells",
"Topic :: Utilities",
]
keywords = ["pwntools", "exploit", "ctf", "capture", "the", "flag", "binary", "wargame", "overflow", "stack", "heap", "defcon"]
requires-python = ">=3.10"
dependencies = [
"paramiko>=1.15.2",
"mako>=1.0.0",
"pyelftools>=0.32",
"capstone>=4.0.0",
"ropgadget>=5.3",
"pyserial>=2.7",
"requests>=2.0",
"pygments>=2.0",
"pysocks",
"packaging",
"psutil>=3.3.0",
"intervaltree>=3.0",
"sortedcontainers",
"unicorn>=2.0.1",
"rpyc",
"colored_traceback",
"unix-ar",
"backports.zstd>=1.0.0 ; python_version<'3.14'",
]
[project.urls]
homepage = "https://pwntools.com"
download = "https://github.com/Gallopsled/pwntools/releases"
[dependency-groups]
dev = [
"mypy-baseline",
"mypy",
"types-beautifulsoup4",
"types-docutils",
"types-gdb",
"types-paramiko",
"types-psutil",
"types-Pygments",
"types-pyserial",
"types-PySocks",
"types-python-dateutil",
"types-requests",
]
[tool.distutils.bdist_wheel]
universal = 1
[tool.setuptools]
include-package-data = false
[tool.setuptools.packages.find]
namespaces = false
[tool.coverage.run]
branch = true
parallel = true
concurrency = ["thread", "multiprocessing"]
omit = [
"*/constants/*",
]
source = [
"pwn",
"pwnlib",
"~/.cache/.pwntools-cache-3.10/",
"~/.cache/.pwntools-cache-3.11/",
"~/.cache/.pwntools-cache-3.12/",
"~/.cache/.pwntools-cache-3.13/",
]
disable_warnings = ["module-not-imported"]
[tool.coverage.paths]
pwnlib = ["pwnlib", "*/pwntools/pwnlib", "*\\pwntools\\pwnlib"]
pwn = ["pwn", "*/pwntools/pwn", "*\\pwntools\\pwn"]
[tool.mypy]
files = [
"pwn/**/*.py",
"pwnlib/**/*.py",
]
allow_redefinition = true
[[tool.mypy.overrides]]
module = [
"unix_ar.*",
"capstone.*",
"colored_traceback.*",
"intervaltree.*",
"mako.*",
"ropgadget.*",
"rpyc.*",
"sortedcontainers.*",
]
ignore_missing_imports = true