Subject: CVS commit: pkgsrc/textproc/grep
From: Wen Heping
Date: 2017-01-30 05:46:13
Message id: 20170130044613.4717BFBA6@cvs.NetBSD.org

Log Message:
Update to 2.27

Upstream changes:
* Noteworthy changes in release 2.27 (2016-12-06) [stable]

** Bug fixes

  grep no longer reports a false match in a multibyte, non-UTF8 locale
  like zh_CN.gb18030, with a regular expression like ".*7" that just
  happens to match the 4-byte representation of gb18030's \uC9, the
  final byte of which is the digit "7".
  [bug introduced in grep-2.19]

  grep by default now reads all of standard input if it is a pipe,
  even if this cannot affect grep's output or exit status.  This works
  better with nonportable scripts that run "PROGRAM | grep PATTERN
  >/dev/null" where PROGRAM dies when writing into a broken pipe.
  [bug introduced in grep-2.26]

  grep no longer mishandles ranges in nontrivial unibyte locales.
  [bug introduced in grep-2.26]

  grep -P no longer attempts multiline matches.  This works more
  intuitively with unusual patterns, and means that grep -Pz no longer
  rejects patterns containing ^ and $ and works when combined with -x.
  [bugs introduced in grep-2.23] A downside is that grep -P is now
  significantly slower, albeit typically still faster than pcregrep.

  grep -m0 -L PAT FILE now outputs "FILE".  [bug introduced in grep-2.5]

  To output ':' and tab-align the following character C, grep -T no
  longer outputs tab-backspace-':'-C, an approach that has problems if
  run inside an Emacs shell window.  [bug introduced in grep-2.5.2]

  grep -T now uses worst-case widths of line numbers and byte offsets
  instead of guessing widths that might not work with larger files.
  [bug introduced in grep-2.5.2]

  grep's use of getprogname no longer causes a build failure on HP-UX.

** Improvements

  grep no longer reads the input in a few more cases when it is easy
  to see that matching cannot succeed, e.g., 'grep -f /dev/null'.

* Noteworthy changes in release 2.26 (2016-10-02) [stable]

** Bug fixes

  Grep no longer omits output merely because it follows an output line
  suppressed due to encoding errors.  [bug introduced in grep-2.21]

  In the Shift_JIS locale, grep no longer mistakenly matches in the
  middle of a multibyte character. [bug present since "the beginning"]

** Improvements

  grep can be much faster now when standard output is /dev/null.

  grep -F is now typically much faster when many patterns are given,
  as it now uses the Aho-Corasick algorithm instead of the
  Commentz-Walter algorithm in that case.

  grep -iF is typically much faster in a multibyte locale, if the
  pattern and its case counterparts contain only single byte characters.

  grep with complicated expressions (e.g., back-references) and without
  -i now uses the regex fastmap for better performance.

  In multibyte locales, grep now handles leading "." in patterns more
  efficiently.

  grep now prints a "FILENAME:LINENO: " prefix when diagnosing an
  invalid regular expression that was read from an '-f'-specified file.

* Noteworthy changes in release 2.25 (2016-04-21) [stable]

** Bug fixes

  In the C or POSIX locale, grep now treats all bytes as valid
  characters even if the C runtime library says otherwise.  The
  revised behavior is more compatible with the original intent of
  POSIX, and the next release of POSIX will likely make this official.
  [bug introduced in grep-2.23]

  grep -Pz no longer mistakenly diagnoses patterns like [^a] that use
  negated character classes. [bug introduced in grep-2.24]

  grep -oz now uses null bytes, not newlines, to terminate output lines.
  [bug introduced in grep-2.5]

** Improvements

  grep now outputs details more consistently when reporting a write error.
  E.g., "grep: write error: No space left on device" rather than just
  "grep: write error".

Files:
RevisionActionfile
1.48modifypkgsrc/textproc/grep/Makefile
1.21modifypkgsrc/textproc/grep/distinfo