diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index f210292c..9829b945 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -7,7 +7,7 @@ ci: autoupdate_commit_msg: ':arrow_up: auto update by pre-commit hooks' repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.7.3 + rev: v0.8.1 hooks: - id: ruff args: [--fix, --exit-non-zero-on-fix] diff --git a/nonebot_plugin_tetris_stats/games/__init__.py b/nonebot_plugin_tetris_stats/games/__init__.py index f64cfadc..7f5ed9bd 100644 --- a/nonebot_plugin_tetris_stats/games/__init__.py +++ b/nonebot_plugin_tetris_stats/games/__init__.py @@ -44,7 +44,7 @@ async def _(matcher: Matcher, account: MessageFormatError): @alc.handle() async def _(matcher: Matcher, matches: AlcMatches): - if matches.head_matched and matches.options != {} or matches.main_args == {}: + if (matches.head_matched and matches.options != {}) or matches.main_args == {}: await matcher.finish( (f'{matches.error_info!r}\n' if matches.error_info is not None else '') + f'输入"{matches.header_result} --help"查看帮助' diff --git a/nonebot_plugin_tetris_stats/games/tetrio/__init__.py b/nonebot_plugin_tetris_stats/games/tetrio/__init__.py index 079b81e9..16e23fa9 100644 --- a/nonebot_plugin_tetris_stats/games/tetrio/__init__.py +++ b/nonebot_plugin_tetris_stats/games/tetrio/__init__.py @@ -23,7 +23,7 @@ def get_player(user_id_or_name: str) -> Player | MessageFormatError: ) -from . import bind, config, list, query, rank, record # noqa: E402 +from . import bind, config, list, query, rank, record # noqa: A004, E402 main_command.add(command) diff --git a/nonebot_plugin_tetris_stats/games/tetrio/api/schemas/summaries/__init__.py b/nonebot_plugin_tetris_stats/games/tetrio/api/schemas/summaries/__init__.py index 8a8f1002..0f608df1 100644 --- a/nonebot_plugin_tetris_stats/games/tetrio/api/schemas/summaries/__init__.py +++ b/nonebot_plugin_tetris_stats/games/tetrio/api/schemas/summaries/__init__.py @@ -14,8 +14,8 @@ 'SoloSuccessModel', 'SummariesModel', 'Zen', + 'ZenSuccessModel', 'Zenith', 'ZenithEx', 'ZenithSuccessModel', - 'ZenSuccessModel', ] diff --git a/nonebot_plugin_tetris_stats/games/tetrio/constant.py b/nonebot_plugin_tetris_stats/games/tetrio/constant.py index beb48c74..e7b0297a 100644 --- a/nonebot_plugin_tetris_stats/games/tetrio/constant.py +++ b/nonebot_plugin_tetris_stats/games/tetrio/constant.py @@ -1,4 +1,4 @@ -from re import compile +from re import compile # noqa: A004 from typing import Literal from yarl import URL diff --git a/nonebot_plugin_tetris_stats/games/tetrio/rank/__init__.py b/nonebot_plugin_tetris_stats/games/tetrio/rank/__init__.py index 57fa95ed..5cd5fb9f 100644 --- a/nonebot_plugin_tetris_stats/games/tetrio/rank/__init__.py +++ b/nonebot_plugin_tetris_stats/games/tetrio/rank/__init__.py @@ -146,7 +146,7 @@ async def _() -> None: await get_tetra_league_data() -from . import all, detail # noqa: E402 +from . import all, detail # noqa: A004, E402 base_command.add(command) diff --git a/nonebot_plugin_tetris_stats/games/top/constant.py b/nonebot_plugin_tetris_stats/games/top/constant.py index baa1a009..cec463d1 100644 --- a/nonebot_plugin_tetris_stats/games/top/constant.py +++ b/nonebot_plugin_tetris_stats/games/top/constant.py @@ -1,4 +1,4 @@ -from re import compile +from re import compile # noqa: A004 from typing import Literal from yarl import URL diff --git a/nonebot_plugin_tetris_stats/games/tos/constant.py b/nonebot_plugin_tetris_stats/games/tos/constant.py index 47830a65..3ecdaba1 100644 --- a/nonebot_plugin_tetris_stats/games/tos/constant.py +++ b/nonebot_plugin_tetris_stats/games/tos/constant.py @@ -1,4 +1,4 @@ -from re import compile +from re import compile # noqa: A004 from typing import Literal from yarl import URL diff --git a/nonebot_plugin_tetris_stats/utils/host.py b/nonebot_plugin_tetris_stats/utils/host.py index 1af1097a..572edbcf 100644 --- a/nonebot_plugin_tetris_stats/utils/host.py +++ b/nonebot_plugin_tetris_stats/utils/host.py @@ -4,7 +4,7 @@ from pathlib import Path as FilePath from typing import TYPE_CHECKING, ClassVar, Literal -from aiofiles import open +from aiofiles import open as aopen from fastapi import BackgroundTasks, FastAPI, Path, status from fastapi.responses import FileResponse, HTMLResponse, Response from fastapi.staticfiles import StaticFiles @@ -87,7 +87,7 @@ async def _( async def write_cache(path: FilePath, data: bytes) -> None: path.parent.mkdir(parents=True, exist_ok=True) - async with open(path, 'wb') as file: + async with aopen(path, 'wb') as file: await file.write(data) diff --git a/nonebot_plugin_tetris_stats/utils/screenshot.py b/nonebot_plugin_tetris_stats/utils/screenshot.py index ee7a672d..52029d55 100644 --- a/nonebot_plugin_tetris_stats/utils/screenshot.py +++ b/nonebot_plugin_tetris_stats/utils/screenshot.py @@ -1,4 +1,4 @@ -from playwright.async_api import BrowserContext, TimeoutError, ViewportSize +from playwright.async_api import BrowserContext, TimeoutError, ViewportSize # noqa: A004 from ..config.config import config from .browser import BrowserManager diff --git a/nonebot_plugin_tetris_stats/utils/templates.py b/nonebot_plugin_tetris_stats/utils/templates.py index ce1ab061..d1694054 100644 --- a/nonebot_plugin_tetris_stats/utils/templates.py +++ b/nonebot_plugin_tetris_stats/utils/templates.py @@ -5,7 +5,7 @@ from time import time_ns from zipfile import ZipFile -from aiofiles import open +from aiofiles import open as aopen from httpx import AsyncClient from nonebot import get_driver from nonebot.log import logger @@ -46,7 +46,7 @@ async def download_templates(tag: str) -> Path: f'https://github.com/A-Minos/tetris-stats-templates/releases/download/{tag}/dist.zip', follow_redirects=True, ) as response, - open(path, 'wb') as file, + aopen(path, 'wb') as file, ): response.raise_for_status() progress.update(task_id, total=int(response.headers.get('content-length', 0)) or None) @@ -76,7 +76,7 @@ async def check_hash(hash_file_path: Path) -> bool: if not file_path.is_file(): logger.error(f'{file_path.name} 不存在或不是文件') return False - async with open(file_path, 'rb') as file: + async with aopen(file_path, 'rb') as file: while True: chunk = await file.read(65535) if not chunk: diff --git a/pyproject.toml b/pyproject.toml index d4b4a864..e3632417 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -132,8 +132,6 @@ select = [ ] ignore = [ "E501", # 过长的行由 ruff format 处理, 剩余的都是字符串 - "ANN101", # 由 type checker 自动推断 - "ANN102", # 由 type checker 自动推断 "ANN202", # 向 NoneBot 注册的函数 "TRY003", "COM812", # 强制尾随逗号