ruwiki-test/pyproject.toml

83 lines
1.9 KiB
TOML
Raw Permalink Normal View History

2025-07-11 21:28:58 +02:00
[tool.poetry]
name = "ruwiki-schoolnotes"
version = "1.0.0"
description = "Конвейер для упрощения статей RuWiki с помощью LLM"
authors = ["Leon K. <leonkl32@gmail.com>"]
readme = "README.md"
packages = [{include = "src"}]
[tool.poetry.dependencies]
python = "^3.10"
anyio = "^4.2.0"
aiohttp = "^3.9.0"
aiosqlite = "^0.19.0"
sqlmodel = "^0.0.14"
openai = "^1.13.0"
tiktoken = "^0.5.2"
mwclient = "^0.10.1"
pydantic = "^2.5.0"
pydantic-settings = "^2.1.0"
structlog = "^23.2.0"
tenacity = "^8.2.3"
click = "^8.1.7"
[tool.poetry.group.dev.dependencies]
black = "^23.12.0"
ruff = "^0.1.8"
mypy = "^1.8.0"
pytest = "^7.4.3"
pytest-asyncio = "^0.21.1"
pytest-cov = "^4.1.0"
pytest-vcr = "^1.0.2"
bandit = "^1.7.5"
pip-audit = "^2.6.2"
[tool.poetry.scripts]
schoolnotes = "src.cli:main"
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
[tool.black]
line-length = 100
target-version = ['py310']
[tool.ruff]
target-version = "py310"
line-length = 100
select = ["ALL"]
ignore = [
"D100", "D101", "D102", "D103", "D104", "D105", "D106", "D107", # missing docstrings
"ANN101", "ANN102", # missing type annotation for self/cls
"COM812", "ISC001", # incompatible with black
]
[tool.ruff.per-file-ignores]
"tests/*" = ["S101", "PLR2004", "ANN"] # allow assert, magic values, no annotations
[tool.mypy]
python_version = "3.10"
strict = true
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
check_untyped_defs = true
disallow_untyped_decorators = true
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = "--cov=src --cov-report=html --cov-report=term-missing --cov-fail-under=80"
[tool.coverage.run]
source = ["src"]
omit = ["tests/*"]
[tool.bandit]
exclude_dirs = ["tests"]
skips = ["B101"]