0.5.7 版本更新说明:
预览功能
- flake8-comprehensions: 在
unnecessary-literal-within-tuple-call
(C409) 中考虑列表和集合推导式。 - flake8-pyi: 为
future-annotations-in-stub
(PYI044) 添加自动修复功能。 - flake8-return: 在使用混合缩进(空格和制表符)时自动修复 RET505 时避免语法错误。
- pydoclint: 添加
docstring-missing-yields
(DOC402) 和docstring-extraneous-yields
(DOC403)。 - pydoclint: 如果文档字符串以 "Return", "Returns", "Yield", 或 "Yields" 开始,则避免触发 DOC201。
- pydoclint: 在遍历函数体后去重收集的异常 (DOC501)。
- pydoclint: 对存根函数忽略 DOC 错误。
- pydoclint: 教导规则理解重新抛出的异常被视为显式抛出 (DOC501, DOC502)。
- ruff: 实现
incorrectly-parenthesized-tuple-in-subscript
(RUF031)。 - ruff: 如果
__slots__
不是集合且绑定在别处使用,则将 RUF023 修复标记为不安全。
规则变更
- refurb: 为
implicit-cwd
(FURB177) 添加自动修复功能。 - ruff: 为
zip-instead-of-pairwise
(RUF007) 添加自动修复功能。 - tryceratops: 将
BaseException
添加到raise-vanilla-class
规则 (TRY002)。
服务器
- 忽略非文件的工作空间 URL;在这种情况下,Ruff 将显示警告通知。
CLI
- 修复嵌套的
pyproject.toml
文件的缓存失效问题。
Bug 修复
- flake8-async: 修复多个
async with
项时的误报 (ASYNC100)。 - flake8-bandit: 在 SQL 构造中避免对列表连接的误报 (S608)。
- flake8-bugbear: 将
return
视为等同于break
(B909)。 - flake8-comprehensions: 在
unnecessary-comprehension-in-call
(C419) 中,集合推导式不是违规。 - flake8-simplify: 根据先决条件对合并的 if 分支中的条件进行括号化 (SIM114)。
- pydoclint: 当约定未指定时,尝试两种 'Raises' 部分样式 (DOC501)。