grep - News
grep-2.22 released [stable]
Item posted by Jim Meyering <meyering> on Mon 02 Nov 2015 02:28:48 AM UTC.
This is to announce grep-2.22, a stable release.
Special thanks to Norihiro Tanaka and Paul Eggert
for making so many fine changes.
There have been 86 commits by 6 people in the 49 weeks since 2.21.
See the NEWS below for a brief summary.
Thanks to everyone who has contributed!
The following people contributed changes to this release:
Jim Meyering (34)
Norihiro Tanaka (17)
Paul Eggert (32)
Santiago Ruano Rincón (1)
Yuliy Pisetsky (1)
Zev Weiss (1)
Jim [on behalf of the grep maintainers]
==================================================================
Here is the GNU grep home page:
http://gnu.org/s/grep/
For a summary of changes and contributors, see:
http://git.sv.gnu.org/gitweb/?p=grep.git;a=shortlog;h=v2.22
or run this command from a git-cloned grep directory:
git shortlog v2.21..v2.22
To summarize the 344 gnulib-related changes, run these commands
from a git-cloned grep directory:
git checkout v2.22
git submodule summary v2.21
Here are the compressed sources and a GPG detached signature[*]:
http://ftp.gnu.org/gnu/grep/grep-2.22.tar.xz
http://ftp.gnu.org/gnu/grep/grep-2.22.tar.xz.sig
Use a mirror for higher download bandwidth:
http://ftpmirror.gnu.org/grep/grep-2.22.tar.xz
http://ftpmirror.gnu.org/grep/grep-2.22.tar.xz.sig
[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact. First, be sure to download both the .sig file
and the corresponding tarball. Then, run a command like this:
gpg --verify grep-2.22.tar.xz.sig
If that command fails because you don't have the required public key,
then run this command to import it:
gpg --keyserver keys.gnupg.net --recv-keys 7FD9FCCB000BEEEE
and rerun the 'gpg --verify' command.
This release was bootstrapped with the following tools:
Autoconf 2.69.147-5ad35
Automake 1.99a
Gnulib v0.1-606-g956fa54
==================================================================
NEWS
* Noteworthy changes in release 2.22 (2015-11-01) [stable]
** Improvements
Performance has improved for patterns containing very long strings,
reducing preprocessing time for an N-byte regexp from O(N^2) to
only slightly superlinear for most patterns. Before, a command like
the following would take over a minute, but now, it takes less than
a second:
: | grep -f <(seq -s '' 99999)
When building grep, 'configure' now uses PCRE's pkg-config module for
configuration information, rather than attempting to guess it by hand.
** Bug fixes
A DFA matcher bug made this command mistakenly print its input line:
echo axb | grep -E '^x|x$'
Likewise for this equivalent command:
echo axb | grep -e '^x' -e 'x$'
[bug introduced in grep-2.19 ]
grep no longer reads from uninitialized memory or from beyond the end
of the heap-allocated input buffer. This fix addressed CVE-2015-1345.
[bug introduced in grep-2.19 ]
With -z, '.' and '[^x]' in a pattern now consistently match newline.
Previously, they sometimes matched newline, and sometimes did not.
[bug introduced in grep-2.4]
When the JIT stack is exhausted, grep -P now grows the stack rather
than reporting an internal PCRE error.
'grep -D skip PATTERN FILE' no longer hangs if FILE is a fifo.
[bug introduced in grep-2.12]
--exclude and related options are now matched against entire
command-line arguments, not against command-line components.
[bug introduced in grep-2.6]
Fix performance degradation of grep -Fw in unibyte locales.
[bug introduced in grep-2.19 ]
Powered by Savane 3.14-79a4.
Corresponding source code