newsgrep - 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 ]


Back to the top

Powered by Savane 3.14-79a4.
Corresponding source code