mirror of
https://github.com/volatilityfoundation/volatility3.git
synced 2026-09-13 21:27:39 +02:00
With the plugin module __path__ variable updated at runtime, and plugin imports based on this updated path within their own module definitions, static type checkers and language servers cannot resolve these imports to provide support for autocompletion, type-checking, etc. This commit: - Adds the required stub files to make development easier when working on plugins - Removes the stubs directory from the .gitignore file - Adds a [tool.pyright] section to tell pyright where to look for stubs Development: Additional stub updates
103 lines
2.3 KiB
TOML
103 lines
2.3 KiB
TOML
[project]
|
|
name = "volatility3"
|
|
description = "Memory forensics framework"
|
|
keywords = [
|
|
"volatility",
|
|
"memory",
|
|
"forensics",
|
|
"framework",
|
|
"windows",
|
|
"linux",
|
|
"volshell",
|
|
]
|
|
readme = "README.md"
|
|
authors = [
|
|
{ name = "Volatility Foundation", email = "volatility@volatilityfoundation.org" },
|
|
]
|
|
requires-python = ">=3.8.0"
|
|
license = { text = "VSL" }
|
|
dynamic = ["version"]
|
|
|
|
dependencies = ["pefile>=2024.8.26"]
|
|
|
|
[project.optional-dependencies]
|
|
full = [
|
|
"yara-python>=4.5.1,<5",
|
|
"capstone>=5.0.3,<6",
|
|
"pycryptodome>=3.21.0,<4",
|
|
"leechcorepyc>=2.19.2,<3; sys_platform != 'darwin'",
|
|
# https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst
|
|
# 10.0.0 dropped support for Python3.7
|
|
# 11.0.0 dropped support for Python3.8, which is still supported by Volatility3
|
|
"pillow>=10.0.0,<11.0.0",
|
|
]
|
|
|
|
cloud = ["gcsfs>=2024.10.0", "s3fs>=2024.10.0"]
|
|
|
|
dev = [
|
|
"volatility3[full,cloud]",
|
|
"jsonschema>=4.23.0,<5",
|
|
"pyinstaller>=6.5.0,<7",
|
|
"pyinstaller-hooks-contrib>=2024.9",
|
|
"types-jsonschema>=4.23.0,<5",
|
|
]
|
|
|
|
test = [
|
|
"volatility3[dev]",
|
|
"pytest>=8.3.3,<9",
|
|
"capstone>=5.0.3,<6",
|
|
"yara-x>=0.10.0,<1",
|
|
]
|
|
|
|
docs = [
|
|
"volatility3[dev]",
|
|
"sphinx>=4.0.0,<9",
|
|
"sphinx-autodoc-typehints>=2.0.0,<3",
|
|
"sphinx-rtd-theme>=3.0.1,<4",
|
|
]
|
|
|
|
[project.urls]
|
|
homepage = "https://github.com/volatilityfoundation/volatility3/"
|
|
documentation = "https://volatility3.readthedocs.io/"
|
|
repository = "https://github.com/volatilityfoundation/volatility3"
|
|
issues = "https://github.com/volatilityfoundation/volatility3/issues"
|
|
|
|
[project.scripts]
|
|
vol = "volatility3.cli:main"
|
|
volshell = "volatility3.cli.volshell:main"
|
|
|
|
[tool.setuptools.dynamic]
|
|
version = { attr = "volatility3.framework.constants._version.PACKAGE_VERSION" }
|
|
|
|
[tool.setuptools.packages.find]
|
|
include = ["volatility3*"]
|
|
|
|
[tool.mypy]
|
|
mypy_path = "./stubs"
|
|
show_traceback = true
|
|
|
|
[tool.pyright]
|
|
stubPath = "./stubs"
|
|
|
|
[tool.ruff]
|
|
line-length = 88
|
|
target-version = "py38"
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"F", # pyflakes
|
|
"E", # pycodestyle errors
|
|
"W", # pycodestyle warnings
|
|
"G", # flake8-logging-format
|
|
"PIE", # flake8-pie
|
|
"UP", # pyupgrade
|
|
]
|
|
|
|
ignore = [
|
|
"E501", # ignore due to conflict with formatter
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=68"]
|
|
build-backend = "setuptools.build_meta"
|