GREP-3.5发布

2020-09-29 05:14:24

这是为了宣布GREP-3.5,一个稳定的版本。特别感谢Paul Eggert,Norihiro Tanaka和Bruno Haible在GREP本身和GNOLIB方面的改变。自3.4以来的38周内,已经有3个人提交了56份申请。有关摘要,请参阅下面的新闻。感谢每一位做出贡献的人!以下人员对此版本做出了更改:Jim Meyering(22)、Norihiro Tanaka(1)、Paul Eggert(33)Jim[代表grep维护者]=这里是GNU grep主页:有关更改和贡献者的摘要,请参见:http://git.sv.gnu.org/gitweb/?p=grep.git;a=shortlog;H=v3.5或从git克隆的grep目录运行此命令:.git Shortlog v3.4-几乎..v3.5要总结806个gnulib相关的更改,从git克隆的grep目录运行以下命令:git checkout v3.5*git子模块摘要v3.4-几乎=这里是压缩源代码:*https://ftp.gnu.org/gnu/grep/grep-3.5.tar.gz https://ftp.gnu.org/gnu/grep/grep-3.5.tar.xz(2.6MB)和gpg(1.6MB)这里是gpg分离签名[*]:*https://ftp.gnu.org/gnu/grep。/grep-3.5.tar.gz.sig-https://ftp.gnu.org/gnu/grep/grep-3.5.tar.xz.sig使用镜像以获得更高的下载带宽:*https://www.gnu.org/order/ftp.html[*]使用.sig文件验证相应的文件(不带.sig后缀)是否完整。首先,请确保下载.sig文件和相应的tarball。然后,如果该命令因没有下载';而失败,请运行如下命令:*gpg--Verify grep-3.5.tar.gz.sig。如果没有所需的公钥,则运行以下命令将其导入:*gpg--keyserver keys.gnupg.net--recv-key7FD9FCCB000BEEEE,然后重新运行';gpg--Verify';命令。此版本使用以下工具进行引导:*Autoconf 2.69c;Automake 1.16b;Gnulib v0.1-3927-g02b29b878=News*Release 3.5(2020年9月27日)[稳定]**二进制文件匹配的消息现在发送到标准错误的行为更改,并且该消息已从";二进制文件foo匹配";重写为&";grep:foo:二进制文件匹配";,以避免与普通消息输出混淆或当文件名包含空格等时,并与其他诊断更加一致。例如,像';grep pattern file|wc&39;这样的命令不再因消息的存在而使匹配的文本行计数增加1。与其他标准错误消息一样,如果提供了--no-messages(-s)选项,则现在将省略该消息。另外两个stderr消息现在也使用典型格式。它们现在是";grep:foo:Warning:递归目录循环";和";grep:foo:输入文件也是输出";。在grep 3.1和更早版本中,--files-less-match(-L)选项已恢复为其行为。也就是说,当选择一行而不是列出文件时,grep-L再次成功。但grep(3.2至3.4)中的行为会导致兼容性问题。**错误修复了grep-i不再发出虚假二进制文件foo matches&34;行。[在grep2.23中引入的错误#33552]在Utf-8区域设置中,grep-w不再忽略多字节字的构成部分,否则将是字匹配。*[在grep2.28中引入的错误#43225]grep-i不再错误处理匹配多字节字符的ASCII码字符。例如,忽略大小写时,';LC_ALL=TR_TR.utf8grep-i';不再仅因为';i';匹配';İ';(U+0130拉丁文大写字母I,上面带点)而转储核心。*[错误#43577部分在grep2.28中引入,部分在grep3.4中引入]-E和许多模式的性能回归已基本修复。主要是因为在Bug#22357和Bug#40634之间存在性能权衡。[在grep2.28中引入的错误#40634]修复了具有许多重复模式的性能回归。[在grep3.4中引入的错误#43040]:在常见情况下(没有反向引用,也没有使用-o或--color),修复了具有许多模式的N^2RSS性能回归。*只有80,000行/usr/share/dict/linux.word,下面的代码将使用100 GB的RSS,并需要3分钟。通过修复,它使用了不到400MB的空间,花费了不到1秒的时间:创建head-80000/usr/share/dict/linux.words>;w;grep-vf w[grep 3.4中引入的错误#43527]**生成dist";make dist";再次构建.tar.gz文件,因为它们仍在一些基本构建中使用。