fix(tooling): 修复 pyright 解释器配置与类型守卫,补齐 ruff 门禁与两处历史 bug
- pyrightconfig.json 钉死 Python 3.12 虚拟环境,消除由于查找系统 Python 3.9 带来的假性报错 - 修复 huya/login.py 引用不存在函数的问题并补充单元测试 - 修复 browser_harvest.py 对 set 下标访问的错误并提升报错信息质量 - 虎牙 6 个子路由显式导入依赖,消除 import * 带来的未定义变量报警 - 规范化 Pydantic Field(default=...) 默认值声明 - 完善 solver.py / app_login.py 等核心路径类型守卫与 @overload 重载 - 在 pyproject.toml 中显式锁定 ruff lint 规则集 (E4, E7, E9, F, B, I, BLE) - 门禁脚本同步增加 ruff check 检查并在 AGENTS.md 补齐实践经验总结
This commit is contained in:
@@ -145,6 +145,7 @@ uv run --group dev pytest # 或 ./dev.sh test
|
||||
uv run --group dev pytest tests/test_cookie_operations.py
|
||||
./dev.sh format tests conftest.py
|
||||
./dev.sh format-check tests conftest.py
|
||||
./dev.sh lint-check tests conftest.py
|
||||
./dev.sh type-check # 渐进式 Pyright
|
||||
docker compose --profile test run --rm test
|
||||
```
|
||||
@@ -168,9 +169,12 @@ docker compose --profile test run --rm test
|
||||
./dev.sh frontend-check # 单独跑前端 TypeScript
|
||||
```
|
||||
|
||||
- **pre-commit**:暂存的 Python 文件做 Ruff 格式检查;改了 `web/frontend/` 则跑 `tsc -b`
|
||||
- **pre-commit**:暂存的 Python 文件做 Ruff 格式检查 **+ `ruff check` lint**;改了 `web/frontend/` 则跑 `tsc -b`
|
||||
- **pre-push**:上述检查 + 全量 pytest
|
||||
- Pyright 默认不开(噪音大):`TYPECHECK=1 git push`
|
||||
—— 注意 `pyrightconfig.json` 已钉死 `.venv`/Python 3.12;**没有这段配置时 pyright 会去
|
||||
摸 macOS 自带的 Python 3.9**,读成 SQLAlchemy 1.4 并凭空多报约 2600 条假错(2926 vs 273)。
|
||||
若在 IDE 里看到成片「Mapped 不是泛型 / 联合类型需要 3.10+」,先查解释器有没有选对。
|
||||
- 紧急绕过:`git push --no-verify` 或 `SKIP_TESTS=1 git push`
|
||||
|
||||
## 技术栈
|
||||
|
||||
Reference in New Issue
Block a user