scripts/ 目录下 3 个 Python 脚本中共有 18 处使用内置 exit() 而非 sys.exit(),违反 ruff PLR1722 规则。
scripts/
exit()
sys.exit()
exit() 是交互式解释器的内置函数,不适合在脚本中使用(CPython 文档也建议用 sys.exit()),可能导致测试框架或 IDE 无法正确捕获退出状态。
涉及文件与行号:
scripts/build_util.py(13 处):行 38, 41, 44, 48, 128, 133, 144, 175, 191, 208, 213, 220, 223
scripts/build_util.py
scripts/compile_ascendc.py(2 处):行 320, 338
scripts/compile_ascendc.py
scripts/update_tbe_tactic_json.py(3 处):行 275, 310, 314
scripts/update_tbe_tactic_json.py
不涉及特定环境
将所有 exit(1) 替换为 sys.exit(1),并在使用 sys.exit() 的文件中确保已 import sys。
exit(1)
sys.exit(1)
import sys
改动为纯文本替换,不影响功能逻辑。注意 scripts/build_util.py 当前未 import sys,需同步添加。
已安排开发人员处理
Describe the current behavior / 问题描述 (Mandatory / 必填)
scripts/目录下 3 个 Python 脚本中共有 18 处使用内置exit()而非sys.exit(),违反 ruff PLR1722 规则。exit()是交互式解释器的内置函数,不适合在脚本中使用(CPython 文档也建议用sys.exit()),可能导致测试框架或 IDE 无法正确捕获退出状态。涉及文件与行号:
scripts/build_util.py(13 处):行 38, 41, 44, 48, 128, 133, 144, 175, 191, 208, 213, 220, 223scripts/compile_ascendc.py(2 处):行 320, 338scripts/update_tbe_tactic_json.py(3 处):行 275, 310, 314Environment / 环境信息 (Mandatory / 必填)
不涉及特定环境
Describe the expected behavior / 预期结果 (Mandatory / 必填)
将所有
exit(1)替换为sys.exit(1),并在使用sys.exit()的文件中确保已import sys。Special notes for this issue/备注 (Optional / 选填)
改动为纯文本替换,不影响功能逻辑。注意
scripts/build_util.py当前未import sys,需同步添加。