RIPGREP 13.0.

2021-06-15 02:40:16

RIPGREP 13是RIPGREP的一个新的主要版本,主要包含错误修复,一些性能改进以及一些小的破坏变化。 Windows上的安全漏洞还有修复程序(CVE-2021-3013)。

如果您以前听说过它,则RIPGREP是一种面向线路的搜索工具,可递归搜索当前目录以获得正则表达式模式。默认情况下,RIPGREP将介绍Gitignore规则,并自动跳过隐藏的文件/目录和二进制文件。

新的短旗, - 。,已添加。它是-Hidden标志的别名,它指示RipGREP搜索隐藏的文件和目录。

RIPGREP现在正在使用Memmem的新的矢量化实现,从而加速了许多常见的搜索。如果您发现任何性能回归(或重大改进),我' D通过问题报告来了解它们!

此外,对于针对MSVC的Windows用户,Cargo现在将构建RipGrep的完全静态可执行文件。使用此配置编译了RIPGREP 13的释放二进制文件。

在此版本中,在检测到二进制文件时,已经对输出格式进行了小调整。以前,它看起来像这样:

请参阅问题1866以获取更多讨论。以前,匹配中的每一行都是复制的,即使它跨越多行。禁用多行模式时,vimgrep输出没有更改。

这似乎是匹配PCRE2GREP的实现方式--Count。 此前,RIPGREP会产生彻头彻尾的错误计数。 另一种替代方案是简单地计算行数 - 即使它'比匹配数量超过匹配 - 但似乎高度不良。 CVE-2021-3013:修复了Windows上的安全孔,其中包含-z / - 搜索 - zip或-pre标志的运行ripgrep可能导致从当前目录运行任意可执行文件。 奢华#1773:这是公众面临的问题跟踪CVE-2021-3013。 RIPGREP' S README现在包含一个描述如何报告漏洞的部分。 添加或改进的文件类型过滤asp,bazel,dvc,flobuffers,futhark,缩小文件,薄荷,pofiles(来自gnu gettext)拍,红色,红宝石,vcl,yang。 bug#1311:修复搜索&amp的多线bug; 替换为\ n didn'如预期工作。 BUG#1642:修复使用-m和-a打印更多匹配的错误而不是限制。