matrix-ops-bot/pyproject.toml

63 lines
No EOL
1.3 KiB
TOML

[tool.poetry]
name = "ops_bot"
version = "0.1.0"
description = ""
authors = ["Abel Luck <abel@guardianproject.info>"]
[tool.poetry.dependencies]
python = "^3.9"
matrix-nio = {extras = ["e2e"], version = "^0.19.0"}
fastapi = "^0.79.0"
uvicorn = "^0.18.2"
termcolor = "^1.1.0"
Markdown = "^3.4.1"
pydantic = {extras = ["dotenv"], version = "^1.9.1"}
[tool.poetry.dev-dependencies]
pytest = "^5.2"
black = "^22.6.0"
isort = "^5.10.1"
mypy = "^0.971"
bandit = "^1.7.4"
flake8 = "^4.0.1"
types-Markdown = "^3.4.0"
types-termcolor = "^1.1.5"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.scripts]
start = "ops_bot.main:start_dev"
[tool.black]
line-length = 88
target-version = ['py39']
[tool.mypy]
files = "ops_bot,tests"
mypy_path = "ops_bot"
ignore_missing_imports = true
follow_imports = "silent"
# Ensure full coverage
disallow_untyped_calls = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
disallow_untyped_decorators = true
check_untyped_defs = true
# Restrict dynamic typing
disallow_any_generics = true
disallow_subclassing_any = true
warn_return_any = true
# Know exactly what you're doing
warn_redundant_casts = true
warn_unused_ignores = true
warn_unused_configs = true
warn_unreachable = true
show_error_codes = true
# Explicit is better than implicit
no_implicit_optional = true