GNU grep searches one or more input files for lines containing a
match to a specified pattern. By default, grep outputs the matching lines.
The GNU implementation includes several useful extensions over POSIX.

For more information see the project home pages:

        https://www.gnu.org/software/grep/
        https://sv.gnu.org/projects/grep/

The previous release made PCRE patterns like [\d] work again, at the
expense of reverting to the behavior of grep 3.8, in that patterns like
\w and \b go back to using ASCII rather than Unicode interpretations.

Previous releases stated that egrep and fgrep are deprecated obsolescent
commands, will be dropped in future, and from this release until then,
every use will show a stderr warning message, reminding you how to
change your commands and scripts:

        $ egrep ...
        egrep: warning: egrep is obsolescent; using grep -E
        ...
        $ fgrep ...
        fgrep: warning: fgrep is obsolescent; using grep -F
        ...

Other invalid usages documented previously also now generate warning or
error messages on stderr e.g.

        grep: warning: * at start of expression
        grep: warning: ? at start of expression
        grep: warning: + at start of expression
        grep: warning: {...} at start of expression
        grep: warning: stray \ before <CHAR>
        grep: warning: stray \ before unprintable character
        grep: warning: stray \ before white space

Cygwin releases will suppress the egrep and fgrep warning messages, but
developers and maintainers should rigorously remove all such usages from
their practices and scripts, as those commands could be dropped, or any
warning messages could be treated as fatal errors, in future.

The following package has been upgraded in the Cygwin distribution:

- grep  3.12

For changes since the previous Cygwin release, see below,
or after installation, read /usr/share/doc/grep/NEWS:

        https://lists.gnu.org/archive/html/info-gnu/2025-04/msg00008.html
        https://git.sv.gnu.org/cgit/grep.git/tree/NEWS
        https://sv.gnu.org/news/?id=10753

for complete details, after installation, read
/usr/share/doc/grep/ChangeLog, or see:

        https://git.sv.gnu.org/gitweb/?p=grep.git;a=log;h=v3.12


2025-04-10      3.12

Bug fixes

- Searching a directory with at least 100,000 entries no longer fails
  with "Operation not supported" and exit status 2. Now, this prints 1
  and no diagnostic, as expected:
    $ mkdir t && cd t && seq 100000|xargs touch && grep -r x .; echo $?
    1
  [bug introduced in grep 3.11]

- -mN where 1 < N no longer mistakenly lseeks to end of input merely
  because standard output is /dev/null.

Changes in behavior

- The --unix-byte-offsets (-u) option is gone. In grep-3.7 (2021-08-14)
  it became a warning-only no-op. Before then, it was a Windows-only no-op.

- On Windows platforms and on AIX in 32-bit mode, grep in some cases
  now supports Unicode characters outside the Basic Multilingual Plane.

-- 
              *** CYGWIN-ANNOUNCE UNSUBSCRIBE INFO ***

The easiest way to unsubscribe is to visit 
<https://cygwin.com/mailman/options/cygwin-announce>, and click 'Unsubscribe'.

If you need more information on unsubscribing, start reading here: 
<https://sourceware.org/lists.html#unsubscribe>.

Reply via email to