操作系统
Windows 7
最近更新
2024年11月16日
使用许可
开源
语言
不支持中文
开发者
AStral
文件大小
8.20 MB

Ruff是一个基于Python的代码检查工具,由astral开发。它可以帮助开发人员在编写Python代码时发现潜在问题并提供修复建议。

Ruff具有多种功能,包括代码检查、自动纠错等。它使用Rust编写的Python AST解析器,实现了自己的AST遍历、visitor抽象和lint规则逻辑。与其他工具相比,Ruff具有更快的速度和更高的性能,可以比Python的Flake8和Black快10-100倍。

此外,Ruff还支持通过pip安装、内置700+规则、兼容Python 3.12等功能,可以很容易地集成到现有的开发工作流程中。它还提供了实时反馈和自动修复建议,帮助开发人员更快地发现和解决问题。

0.7.4 版本更新说明:

预览功能

  • flake8-datetimez:检测 datetime.maxdatetime.min 的使用(DTZ901)
  • flake8-logging:实现根日志调用检查(LOG015)
  • flake8-no-pep420:检测空的隐式命名空间包(INP001)
  • flake8-pyi:添加“替换为 Self”的修复建议(PYI019)
  • perflint:实现手动列表推导式的快速修复(PERF401)
  • pylint:实现浅拷贝环境变量检查(W1507)
  • ruff:实现联合类型中 None 不在末尾的检查(RUF036)
  • ruff:从 flake8-markupsafe 插件实现不安全的标记调用检查(RUF035)
  • ruff:为 attrs 数据类报告问题(RUF008, RUF009)


规则变更

  • flake8-boolean-trap:排除定义操作符的魔术方法(FBT001)
  • flake8-pyi:添加“替换为 Self”的修复建议(PYI034)
  • flake8-pyi:始终自动修复重复的联合成员(PYI016)
  • flake8-pyi:改进嵌套和混合类型联合的自动修复(PYI055)
  • flake8-pyi:当类型注释包含注释时,将重复字面量成员的修复标记为不安全(PYI062)


服务器

  • 使用当前工作目录解析 ruff.configuration 中的设置


Bug 修复

  • 避免 PLC014(无用的导入别名)和 I002(缺少必需的导入)之间的冲突,通过考虑 lint.isort.required-imports 对 PLC014 进行处理
  • flake8-type-checking:如果引用注释变为无效语法,则跳过引用注释(TCH001)
  • flake8-pyi:避免在 Python 3.11 之前的存根文件中使用 typing.Self(PYI034)
  • flake8-pytest-style:标记带有关键字参数 expected_exceptionpytest.raises 调用(PT011)
  • flake8-simplify:推断所有元素均为解包的字面量可迭代对象的真值性(SIM222)
  • flake8-type-checking:修复 typing.Annotated 的误报(TCH001)
  • pylint:允许在笔记本的顶级作用域中使用 await(PLE1142)
  • pylint:修复 await-outside-async 检测中的各种问题(PLE1142)
  • pyupgrade:避免在无效上下文中应用 PEP 646 重写(UP044)
  • pyupgrade:检测冗余打开模式中的排列组合(UP015)
  • refurb:避免在重新排序的集合中触发硬编码字符串字符集检查(FURB156)
  • refurb:为详细的小数构造函数添加更多特殊情况(FURB157)
  • refurb:使用 UserString 替换不存在的 UserStr(FURB189)
  • ruff:避免将小写字母视为 # noqa 代码(RUF100)
  • ruff:当 Optional 没有类型参数时不报告(RUF013)


文档

  • 为 F704 和 PLE1142 添加“笔记本行为”部分
  • 记录修复安全性相关的注释策略


其他版本
最近更新软件 - Windows 软件更新列表
Cursor [开发] Cursor 0.42.5 64位
昨天 21:23
WPS Office [应用软件] WPS Office 12.1.0.18912 32位/64位
昨天 21:21
WPS 365 [应用软件] WPS 365 12.1.0.18912 32位/64位
昨天 21:13
Estlcam [行业] Estlcam 12.110 64位
昨天 21:10
Geoserver [开发] Geoserver 2.26.1 32位/64位
昨天 21:09
NX Studio [设计] NX Studio 1.7.1 64位
昨天 13:41
FireAlpaca [设计] FireAlpaca 2.13.2 32位
昨天 07:26
FireAlpaca [设计] FireAlpaca 2.13.2 64位
昨天 07:25
妙笔 [应用软件] 妙笔 2.5.8.7566 32位
昨天 07:19
妙笔 [应用软件] 妙笔 2.5.8.7566 ARM64
昨天 07:18
新软件 - Windows 新软件列表
Cursor [开发] Cursor 0.42.5 64位
昨天 21:23
Ultraleap Gemini [系统工具] Ultraleap Gemini 5.20.0 64位
11-19
联想电脑管家 [安全] 联想电脑管家 5.1.80.9066 ARM64
11-15
AFFiNE [应用软件] AFFiNE 0.18.0 ARM64
11-15
星火编辑器 [开发] 星火编辑器 241023 64位
11-11
Another Redis Desktop Manager [开发] Another Redis Desktop Manager 1.7.0 ARM64
11-10
Python 3.13 [开发] Python 3.13 3.13.0 ARM64
11-07
Python 3.13 [开发] Python 3.13 3.13.0 64位
11-07
Python 3.13 [开发] Python 3.13 3.13.0 32位
11-07
Python 3.12 [开发] Python 3.12 3.12.7 ARM64
11-07