-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 This is to announce grep-2.19, a stable release. While there is only one NEWS item below that mentions performance, GNU grep has never before seen so many performance improvements in a single release. Special thanks to Norihiro Tanaka and Paul Eggert for all of that work, as well as for numerous bug fixes.
There have been 152 commits by 4 people in the 13 weeks since 2.18. See the NEWS below for a brief summary. Thanks to everyone who has contributed! The following people contributed changes to this release: Jim Meyering (22) Norihiro Tanaka (35) Paul Eggert (93) Stephane Chazelas (2) 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.19 or run this command from a git-cloned grep directory: git shortlog v2.18..v2.19 To summarize the 49 gnulib-related changes, run these commands from a git-cloned grep directory: git checkout v2.19 git submodule summary v2.18 ================================================================== Here are the compressed sources and a GPG detached signature[*]: http://ftp.gnu.org/gnu/grep/grep-2.19.tar.xz http://ftp.gnu.org/gnu/grep/grep-2.19.tar.xz.sig Use a mirror for higher download bandwidth: http://ftpmirror.gnu.org/grep/grep-2.19.tar.xz http://ftpmirror.gnu.org/grep/grep-2.19.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.19.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.117-1717 Automake 1.99a Gnulib v0.1-125-gc2e80b7 ================================================================== NEWS * Noteworthy changes in release 2.19 (2014-05-22) [stable] ** Improvements Performance has improved, typically by 10% and in some cases by a factor of 200. However, performance of grep -P in UTF-8 locales has gotten worse as part of the fix for the crashes mentioned below. ** Bug fixes grep no longer mishandles patterns like [a-[.z.]], and no longer mishandles patterns like [^a] in locales that have multicharacter collating sequences so that [^a] can match a string of two characters. grep no longer mishandles an empty pattern at the end of a pattern list. [bug introduced in grep-2.5] grep -C NUM now outputs separators consistently even when NUM is zero, and similarly for grep -A NUM and grep -B NUM. [bug present since "the beginning"] grep -f no longer mishandles patterns containing NUL bytes. [bug introduced in grep-2.11] Plain grep, grep -E, and grep -F now treat encoding errors in patterns the same way the GNU regular expression matcher treats them, with respect to whether the errors can match parts of multibyte characters in data. [bug present since "the beginning"] grep -w no longer mishandles a potential match adjacent to a letter that takes up two or more bytes in a multibyte encoding. Similarly, the patterns '\<', '\>', '\b', and '\B' no longer mishandle word-boundary matches in multibyte locales. [bug present since "the beginning"] grep -P now reports an error and exits when given invalid UTF-8 data. Previously it was unreliable, and sometimes crashed or looped. [bug introduced in grep-2.16] grep -P now works with -w and -x and backreferences. Before, echo aa|grep -Pw '(.)\1' would fail to match, yet echo aa|grep -Pw '(.)\2' would match. grep -Pw now works like grep -w in that the matched string has to be preceded and followed by non-word components or the beginning and end of the line (as opposed to word boundaries before). Before, this echo a@@a| grep -Pw @@ would match, yet this echo a@@a| grep -w @@ would not. Now, they both fail to match, per the documentation on how grep's -w works. grep -i no longer mishandles patterns containing titlecase characters. For example, in a locale containing the titlecase character 'Lj' (U+01C8 LATIN CAPITAL LETTER L WITH SMALL LETTER J), 'grep -i Lj' now matches both 'LJ' (U+01C7 LATIN CAPITAL LETTER LJ) and 'lj' (U+01C9 LATIN SMALL LETTER LJ). ================================================================== also posted as: https://savannah.gnu.org/forum/forum.php?forum_id=7988 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQJ8BAEBCgBmBQJTft0GXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQxNTVEM0ZDNTAwQzgzNDQ4NkQxRUVBNjc3 RkQ5RkNDQjAwMEJFRUVFAAoJEH/Z/MsAC+7uFGcQAIs8J0Pckkr5Yp8uoQKcx1xZ /ND1mIoTTrGeLvt3E373eflP9F0Zn/sp/8rbwI2/2XGbFupyDk3zEkg4/laJ9kME aU9ekxJVsDellZ5sG+CM+BkX9mK5Ugs1MdBG0TcbcNW8F8jsVIV09EzfY8FzsC5c rFM7sM+iIZ4JfzBWyOFIMgyRfFPdbJfLddUeZFh6j4WJgsDfA3qdTF23GL/1r4u1 FrPiZvtcl1Njzy3o1PlE6zVvCGPBQrZ/XANd7waJYUTXRoqLm8LdT2KODvEes3Qj jzTH5PpqaJ5oNM38l+Hnywticnz4wAQLfE7xBqM/CFEKa7zOurjxOw484FUj1s+K XRq5DUnnE4//X8WcuTvoEdg6DbIfQNAdZlggGwmP4z/o55jLbkx8vuf7eh1XH/hO 3OJHxO4uXmzCTzecOu8C0PuOKHCaYn0/Atk3uykzjyJILaMvGx+jwG9DTPJTGI8j AZlOYZFJDx3Ru6R6XOd5wG16G9ja72yEfT2bAhOr2w0n2i+x3910JrteZBPETY0s hezjoNdf7W/Mz35ABi3IIb4/yM4zvVpj1YxTNIw07EBt0Ng+TxS5h3a0NuwMiw5F QyXMDTssux+S58Nxo135dvq7r6oo7oAzbbRR+ekoRYlYBQfphr6hsigaIWJvtas4 2pD2dLWfEzJUJ/lYrcSk =VXqR -----END PGP SIGNATURE----- _______________________________________________ GNU Announcement mailing list <info-gnu@gnu.org> https://lists.gnu.org/mailman/listinfo/info-gnu