118 lines
3.3 KiB
TOML
118 lines
3.3 KiB
TOML
[project]
|
||
name = "QQAwesomeBot"
|
||
version = "0.1.0"
|
||
description = "QQAwesomeBot"
|
||
readme = "README.md"
|
||
requires-python = ">=3.10, <4.0"
|
||
dependencies = [
|
||
"nonebot2[fastapi]>=2.5.0",
|
||
"nonebot-adapter-onebot>=2.4.6",
|
||
"nonebot-plugin-status>=0.9.0",
|
||
"nonebot-plugin-apscheduler>=0.5.0",
|
||
"nonebot-plugin-localstore>=0.7.4",
|
||
"nonebot-plugin-orm>=0.8.3",
|
||
"httpx>=0.28.1",
|
||
]
|
||
|
||
[project.optional-dependencies]
|
||
dev = [
|
||
"pyright[nodejs]",
|
||
"ruff"
|
||
]
|
||
|
||
[tool.nonebot]
|
||
plugin_dirs = ["src/plugins"]
|
||
builtin_plugins = ["echo"]
|
||
|
||
[tool.nonebot.adapters]
|
||
nonebot-adapter-onebot = [
|
||
{ name = "OneBot V11", module_name = "nonebot.adapters.onebot.v11" }
|
||
]
|
||
"@local" = []
|
||
|
||
[tool.nonebot.plugins]
|
||
"@local" = []
|
||
nonebot-plugin-status = ["nonebot_plugin_status"]
|
||
nonebot-plugin-apscheduler = ["nonebot_plugin_apscheduler"]
|
||
nonebot-plugin-localstore = ["nonebot_plugin_localstore"]
|
||
nonebot-plugin-orm = ["nonebot_plugin_orm"]
|
||
[tool.ruff]
|
||
line-length = 88
|
||
target-version = "py39"
|
||
|
||
[tool.ruff.format]
|
||
line-ending = "lf"
|
||
|
||
[tool.ruff.lint]
|
||
# For more rules, see https://docs.astral.sh/ruff/rules/.
|
||
select = [
|
||
"F", # Pyflakes
|
||
"W", # pycodestyle warnings
|
||
"E", # pycodestyle errors
|
||
"I", # isort
|
||
"C90", # mccabe
|
||
"N", # pep8-naming
|
||
"PL", # pylint
|
||
"UP", # pyupgrade
|
||
"YTT", # flake8-2020
|
||
"ANN", # flake8-annotations
|
||
"ASYNC", # flake8-async
|
||
"BLE", # flake8-blind-except
|
||
"FBT", # flake8-boolean-trap
|
||
"B", # flake8-bugbear
|
||
"A", # flake8-builtins
|
||
"COM", # flake8-commas
|
||
"C4", # flake8-comprehensions
|
||
"DTZ", # flake8-datetimez
|
||
"T10", # flake8-debugger
|
||
"ICN", # flake8-import-conventions
|
||
"PIE", # flake8-pie
|
||
"T20", # flake8-print
|
||
"PYI", # flake8-pyi
|
||
"Q", # flake8-quotes
|
||
"RSE", # flake8-raise
|
||
"RET", # flake8-return
|
||
"SIM", # flake8-simplify
|
||
"SLOT", # flake8-slots
|
||
"TID", # flake8-tidy-imports
|
||
"TC", # flake8-type-checking
|
||
"ARG", # flake8-unused-arguments
|
||
"PTH", # flake8-use-pathlib
|
||
# "ERA", # eradicate
|
||
"FAST", # FastAPI
|
||
"PERF", # Perflint
|
||
"PGH", # pygrep-hooks
|
||
"FURB", # refurb
|
||
"TRY", # tryceratops
|
||
"RUF", # Ruff-specific rules
|
||
]
|
||
ignore = [
|
||
"E402", # module-import-not-at-top-of-file # nonebot2 require() violates this
|
||
"B008", # function-call-in-default-argument # nonebot2 Depends() without Annotated violates this
|
||
"UP037", # quoted-annotation
|
||
# "RUF001", # ambiguous-unicode-character-string
|
||
# "RUF002", # ambiguous-unicode-character-docstring
|
||
# "RUF003", # ambiguous-unicode-character-comment
|
||
# "ANN201", # missing-return-type-undocumented-public-function
|
||
"ANN202", # missing-return-type-private-function
|
||
"ANN401", # any-type
|
||
"COM812", # missing-trailing-comma
|
||
"PLC0415", # import-outside-top-level
|
||
]
|
||
allowed-confusables = [",", "。", "“", "”", ":", ";", "?", "!", "【", "】", "《", "》", "…", "—", "(", ")", "、"]
|
||
|
||
[tool.ruff.lint.pyupgrade]
|
||
keep-runtime-typing = true
|
||
|
||
[tool.pyright]
|
||
# For Pylance/Pyright configurations, see https://microsoft.github.io/pyright/#/configuration.
|
||
pythonVersion = "3.9"
|
||
pythonPlatform = "All"
|
||
typeCheckingMode = "standard"
|
||
|
||
[dependency-groups]
|
||
dev = [
|
||
"pyright>=1.1.411",
|
||
"ruff>=0.16.6",
|
||
]
|