Files
qqbotsdk/pyproject.toml
T
snowy-yang cff0c142c2 refactor!: 移除 dishka,改为内置裸标注参数注入
- handler 形参直接标注组件类型(api: BotApi)即注入,解析为 emitter 内同步查表(payload dataclass / Event / services 登记类型 / 回退原始 dict)
2026-09-16 19:18:06 +08:00

83 lines
1.8 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[project]
name = "qqbotsdk"
version = "0.1.0"
description = "QQ 官方机器人 Python SDK(WebSocket / Webhook)"
license = "MIT"
license-files = ["LICENSE"]
readme = "README.md"
authors = [
{ name = "snowy-yang", email = "102860110+snowy-yang@users.noreply.github.com" },
]
requires-python = ">=3.13"
dependencies = [
"aiohttp>=3.14.3",
"apscheduler>=3.11.3",
"cryptography>=50.0.1",
"loguru>=0.7.3",
"pyee>=14.0.0",
"python-dotenv>=1.2.3",
]
[project.scripts]
qqbotsdk = "qqbotsdk:main"
[build-system]
requires = ["uv_build>=0.12.7,<0.13.0"]
build-backend = "uv_build"
[dependency-groups]
dev = ["pyright>=1.1.411", "pytest>=8.3.0", "pytest-asyncio>=0.24.0", "ruff>=0.16.5"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
[tool.ruff]
target-version = "py313"
line-length = 88
indent-width = 4
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"F", # Pyflakes
"I", # isort
"N", # pep8-naming
"W", # pycodestyle warnings
"UP", # pyupgrade
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"SIM", # flake8-simplify
]
ignore = [
"E501", # line too long
"B008", # do not perform function calls in argument defaults
]
[tool.ruff.lint.pydocstyle]
convention = "google"
[tool.ruff.lint.isort]
known-first-party = ["qqbotsdk"]
[tool.ruff.lint.per-file-ignores]
"tests/**/*.py" = ["S"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[tool.pyright]
typeCheckingMode = "standard"
pythonVersion = "3.13"
include = ["src"]
exclude = ["**/__pycache__", "**/.*", "**/node_modules", ".venv"]
reportMissingImports = true
reportMissingTypeStubs = false
reportUnknownParameterType = false
reportUnknownVariableType = false
reportUnknownMemberType = false