Files
team/memory/ci-cd-experience.md
2026-04-19 21:47:08 +08:00

1.1 KiB

name, description, type
name description type
CI/CD 经验 Python 版本固定、工具版本一致性、Ruff 忽略规则等 CI/CD 相关经验 reference

CI/CD 经验

Python 版本固定

  • 使用 .python-version 文件固定 Python 版本,确保 CI 和本地开发环境一致
  • uv 会自动读取 .python-version
  • 文件格式:单行版本号,如 3.12.13

工具版本一致性

  • Server 和 Desktop 的 pyproject.toml 必须保持工具版本一致
  • 当前统一版本:
    • mypy: >=1.19.1
    • ruff: >=0.15.7
    • pytest: >=9.0.2
  • 过于宽松的版本约束(如 ruff>=0.2.0)会导致 CI 检查结果与本地不一致

Ruff 忽略规则分析

风险级别 规则 建议
RUF012 (可变类属性) 应修复,使用 ClassVar 注解
ARG001-005 (未使用参数) Qt signal handler 场景可忽略
I001 (导入排序) 风格问题,可忽略
RUF001 (中文字符) 中文注释场景合理忽略
TC001-003 (TYPE_CHECKING) 仅影响导入优化,可忽略
UP042, UP046 (类型语法) Python 3.12 新语法,可忽略