Greetings all.

This note announces the next major release of GNU Awk: version 5.0.0.

The following files may be retrieved from,
or via HTTPS from

-rw-rw-r-- 1 arnold arnold 5763496 Apr 12 12:32 gawk-5.0.0.tar.gz
-rw-rw-r-- 1 arnold arnold 2868796 Apr 12 12:32 gawk-5.0.0.tar.lz
-rw-rw-r-- 1 arnold arnold 3000432 Apr 12 12:32 gawk-5.0.0.tar.xz

This is a major new release, with new or improved features, including
namespaces.  The relevant part of the NEWS file is appended below.

This release represents a lot of very hard work by a number of people.
I thank them all for their contributions, I could not have done it
by myself.

Differences from gawk 4.2.1 are not available; they would be too large.

The usual GNU build incantation should be used:

        tar -xpvzf gawk-5.0.0.tar.gz
        cd gawk-5.0.0
        ./configure && make && make check

Bug reports should be sent to


Arnold Robbins (on behalf of all the gawk developers)
   Copyright (C) 2019, Free Software Foundation, Inc.
   Copying and distribution of this file, with or without modification,
   are permitted in any medium without royalty provided the copyright
   notice and this notice are preserved.

Changes from 4.2.1 to 5.0.0

1. Support for the POSIX standard %a and %A printf formats has been added.

2. The test infrastructure has been greatly improved, simplifying the
   contents of test/ and making it possible to generate
   pc/Makefile.tst from test/

3. The regex routines have been replaced with those from GNULIB, allowing
   me to stop carrying forward decades of changes against the original
   ones from GLIBC.

4. Infrastructure upgrades: Bison 3.3, Automake 1.16.1, Gettext,
   makeinfo 6.5.

5. The undocumented configure option and code that enabled the use of
   non-English "letters" in identifiers is now gone.

6. The `--with-whiny-user-strftime' configuration option is now gone.

7. The code now makes some stronger assumptions about a C99 environment.

8. PROCINFO["platform"] yields a string indicating the platform for
   which gawk was compiled.

9. Writing to elements of SYMTAB that are not variable names now
   causes a fatal error. THIS CHANGES BEHAVIOR.

10. Comment handling in the pretty-printer has been reworked almost completely
    from scratch. As a result, comments in many corner cases that were
    previously lost are now included in the formatted output.

11. Namespaces have been implemented! See the manual.  One consequence of this
    is that files included with -i, read with -f, and command line program
    segments must all be self-contained syntactic units. E.g., you can no
    longer do something like this:

        gawk -e 'BEGIN {' -e 'print "hello" }'

12. Gawk now uses the locale settings for ignoring case in single byte
    locales, instead of hardwiring in Latin-1.

13. A number of bugs, some of them quite significant, have been fixed.
    See the ChangeLog for details.

If you have a working or partly working program that you'd like
to offer to the GNU project as a GNU package,

Reply via email to