Files
qqbotsdk/pyproject.toml
T
snowy-yang febeb95d7c build: Python 基线降至 3.12,CI 改 3.12/3.13 双版本矩阵
PEP 695 type 语句、typing.override 等既有写法本就 3.12 可用,代码零
改动;pyproject/ruff/pyright 目标版本同步 py312,README 与 GUIDE 的
版本要求更新,uv.lock 随 requires-python 重新解析。
2026-10-01 23:05:13 +08:00

82 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.12"
dependencies = [
"aiohttp>=3.14.3",
"cryptography>=50.0.1",
"loguru>=0.7.3",
"python-dotenv>=1.2.3",
"ujson>=6.0.0",
]
[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 = "py312"
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.12"
include = ["src"]
exclude = ["**/__pycache__", "**/.*", "**/node_modules", ".venv"]
reportMissingImports = true
reportMissingTypeStubs = false
reportUnknownParameterType = false
reportUnknownVariableType = false
reportUnknownMemberType = false