106 lines
2.3 KiB
TOML
106 lines
2.3 KiB
TOML
[project]
|
|
requires-python = ">=3.10,<3.13" # in order to support numpy<2.0.0
|
|
dependencies = [
|
|
"requests>=2.18.4",
|
|
"types-requests>=2.31.0.5",
|
|
"numpy>=1.21.0,<2.0.0",
|
|
]
|
|
|
|
# these will not be included in build distributions
|
|
[dependency-groups]
|
|
dev = [
|
|
## dev dependencies
|
|
"black==25.9.0",
|
|
"isort==7.0.0",
|
|
"mypy==1.13.0",
|
|
|
|
## I would like to enable these in the future
|
|
"bandit>=1.8.2", # code is currently invalid for bandit
|
|
"ruff>=0.14.1", # code is currently invalid for ruff
|
|
"pydoclint>=0.7.3", # code is currently invalid for pydoclint
|
|
]
|
|
|
|
[tool.isort]
|
|
multi_line_output = 3
|
|
lines_after_imports = 2
|
|
skip = ["lib", "out", ".venv"]
|
|
profile = "black"
|
|
|
|
[tool.black]
|
|
target-version = ['py310']
|
|
include = '\.pyi?$'
|
|
exclude = '''
|
|
/(\.git|lib|out)/
|
|
'''
|
|
|
|
[tool.ruff]
|
|
target-version = "py310"
|
|
line-length = 120
|
|
include = ["pyproject.toml",
|
|
"**/*.py",
|
|
"*.py"
|
|
]
|
|
exclude = [
|
|
"lib",
|
|
"out",
|
|
"addon_updater.py",
|
|
"addon_updater_ops.py",
|
|
"_debug/**",
|
|
"_bck/**",
|
|
"*.tmp",
|
|
"__pycache__/**",
|
|
".venv/**",
|
|
"*.pyi",
|
|
"sentry_sdk",
|
|
]
|
|
ignore = [
|
|
"E501", # Line too long
|
|
]
|
|
|
|
[tool.ruff.format]
|
|
line-ending = "auto"
|
|
|
|
[tool.ruff.lint]
|
|
select = ["F", "E", "W", "C90", "I", "N", "D", "UP", "S1", "S2", "S3", "S5", "BLE", "FBT",
|
|
"B", "A", "C4", "COM", "DTZ", "T10", "FA", "ISC", "ICN", "LOG", "G", "INP", "PIE", "T20", "Q", "RSE", "RET", "SLF",
|
|
"SLOT", "SIM", "TID",
|
|
"TC001", "TC004", "TC005", "TC010",
|
|
"INT", "ARG", "FIX", "ERA", "PL", "TRY", "FLY", "PERF", "RUF"
|
|
]
|
|
|
|
ignore = [
|
|
"D105", # https://docs.astral.sh/ruff/rules/undocumented-magic-method/
|
|
"D107", # https://docs.astral.sh/ruff/rules/undocumented-public-init/
|
|
"PLC0415", # https://docs.astral.sh/ruff/rules/import-outside-top-level/
|
|
"RET504", # https://docs.astral.sh/ruff/rules/unnecessary-assign/
|
|
]
|
|
|
|
[tool.ruff.lint.pydocstyle]
|
|
convention = "google"
|
|
|
|
|
|
[tool.mypy]
|
|
exclude = ['test_*', 'out', 'lib']
|
|
disallow_untyped_globals = false # remove this in the future
|
|
|
|
[[tool.mypy.overrides]]
|
|
module = [
|
|
"bpy",
|
|
"bpy.*",
|
|
"bpy_extras",
|
|
"mathutils",
|
|
"addonutils",
|
|
"blf",
|
|
"gpu",
|
|
"gpu_extras.*"
|
|
]
|
|
ignore_missing_imports = true # Ignore missing type hints for bpy
|
|
|
|
[tool.pydoclint]
|
|
style = "google"
|
|
arg-type-hints-in-docstring = false
|
|
check-return-types = false
|
|
ignore-private-args = true
|
|
ignore-underscore-args = true
|
|
exclude = "\\.venv|\\sentry_sdk"
|