github.com/benhoyt/goawk
v1.31.0
#1086 most downloaded on Go modules
benhoyt/goawk
What this package is like to depend on
Last release 3 days ago
21 Aug 2026
Release timing varies
gaps range from 9 days to 3 months
Rarely documented
notes for 9 of 51 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
176 releases · first in 2018
18 releases in the last 12 months
see the full history below
Release timeline
176 releases · Nov 2018 to Aug 2026Releases
latest 60 of 176-
v1.31.1-0.20260821052230-19dc026165e721 Aug 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260630202951-4c907fb2838a30 Jun 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260615082653-4390cf51dc9815 Jun 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260528210850-5a0878cb66af28 May 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260519072930-b067c24e3c2719 May 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260411214736-c13fced1a09b11 Apr 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260411051932-1001a46e565411 Apr 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260406045248-60a3bbdbe81606 Apr 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20260224185503-a1e074020e1d24 Feb 2026 pre-releaseNothing published for this version
-
v1.31.1-0.20251223192652-51baa3e09e1723 Dec 2025 pre-releaseNothing published for this version
-
v1.31.023 Dec 2025Release notes
Open source →This release includes three minor fixes, and also updates the minimum Go version required (in
go.mod) from 1.18 to 1.20. The fixes are:- Generalise handling of /dev/stderr and /dev/stdout in #268
- Save FS when record is read so we use that value when lazily splitting in #269
- Use WaitDelay to ensure system() exits quickly when context is cancelled in #270
Full Changelog: v1.30.1...v1.31.0
Release notes
Open source →v1.31.0: minor fixes, min Go 1.20 Latest
Latest
Compare
Choose a tag to compare
-
v1.30.2-0.20251212195010-be7e702e601a12 Dec 2025 pre-releaseNothing published for this version
-
v1.30.115 Nov 2025Release notes
Open source →This is a bugfix release that includes a fix for empty actions like
{}. See #262 -
v1.30.1-0.20251115043258-fa6df5c3ff1e15 Nov 2025 pre-releaseNothing published for this version
-
v1.30.002 Nov 2025Release notes
Open source →This release adds one small new feature and fixes a subtle but long-standing bug:
- The new feature is the
-N modecommand-line option (and correspondinginterp.ConfigfieldNewlineOutput) to control newline translation on output. Currently the default is "smart", meaning no translation (-N raw) on Unix/Linux and translate LF to CR LF (-N crlf) on Windows, but you can override the OS-based default with the-Noption. Thanks @hymkor for the contribution. - The bug fix is that previously GoAWK used the Go default of "leftmost-first matching", whereas other AWKs use "leftmost-longest matching". So switch to that using the
Regexp.Longestmethod.
This release also includes a small performance improvement to the postincr/postdecr bytecode by @triallax in #253.
Full Changelog: v1.29.1...v1.30.0
Release notes
Open source →v1.30.0: -N crlf mode, leftmost-longest regexes
Compare
Choose a tag to compare
- The new feature is the
-
v1.29.2-0.20250728200925-3aa39f02319028 Jul 2025 pre-releaseNothing published for this version
-
v1.29.124 Nov 2024Release notes
Open source →This release only exists to add FreeBSD binaries -- no changes since v1.29.0.
-
v1.29.1-0.20241124191813-4b6c79a6da0624 Nov 2024 pre-releaseNothing published for this version
-
v1.29.018 Sep 2024Release notes
Open source →This release adds Unicode chars mode with
goawk -c(or by settingConfig.Charsto true when using the Go API). The default is bytes mode as it was before (except thatprintf %cused chars mode by default as of v1.28.0 -- now it only does if chars mode is enabled). Note that this is the same default as mawk, but the opposite of Gawk (which usesgawk -bto switch to bytes mode).Chars mode applies to
index(),length(),match()(includingRSTARTandRLENGTH),substr(), andprintf's%cverb.For example, as of version v1.29.0, you can do this:
$ goawk 'BEGIN { print length("a"), length("絵") }' 1 3 $ goawk -c 'BEGIN { print length("a"), length("絵") }' 1 1Full Changelog: v1.28.1...v1.29.0
-
v1.28.2-0.20240918204726-b0f1c00410e618 Sep 2024 pre-releaseNothing published for this version
-
v1.28.115 Sep 2024Release notes
Open source →I forgot to bump up the version number for the v1.28.0 release, so this is a patch release with a single commit to do just that.
See also the release notes for the v1.28.0 release.
-
v1.28.1-0.20240915215438-e957268e38e815 Sep 2024 pre-releaseNothing published for this version
-
v1.28.014 Sep 2024Release notes
Open source →NOTE: The original binaries were for the v1.28.0 tag, but had the old v1.27.0 version number in the file names (and in the
goawk -versionoutput). I've uploaded corrected v1.28.0 binaries here, but there's also a new v1.28.1 patch release with this fixed.What's Changed
- Fix evaluation of empty {} and END{} by @benhoyt in #230
- fix: close file in Cover.WriteProfile by @testwill in #232
- Fix number formatting on non-64bit architectures by @guilherme-puida in #235
- Make printf %c work on Unicode codepoints by @oliverkwebb in #236
- Improve error message when missing -H or in BEGIN by @benhoyt in #239
- Add printf %i, %a, %A; Fix %o, %x, %X (they should be unsigned) by @benhoyt in #240
- Make srand() use unix time in seconds, and set seed for next srand() by @benhoyt in #241
- Bump up minimum supported Go version to 1.18, and test on 1.23 by @benhoyt in 7f49055
New Contributors
Full Changelog: v1.27.0...v1.28.0
-
v1.27.1-0.20240914051952-7f4905588acb14 Sep 2024 pre-releaseNothing published for this version
-
v1.27.1-0.20240914042340-6e1b1b4296ed14 Sep 2024 pre-releaseNothing published for this version
-
v1.27.1-0.20240808204546-f39db9b8a29c08 Aug 2024 pre-releaseNothing published for this version
-
v1.27.1-0.20240611203010-63ba6482a37411 Jun 2024 pre-releaseNothing published for this version
-
v1.27.1-0.20240512193758-1de11b9a8da712 May 2024 pre-releaseNothing published for this version
-
v1.27.1-0.20240425001556-3f6ab111549225 Apr 2024 pre-releaseNothing published for this version
-
v1.27.020 Apr 2024Nothing published for this version
-
v1.26.1-0.20240420040449-f501425e306e20 Apr 2024 pre-releaseNothing published for this version
-
v1.26.1-0.20240413030600-158232a7685613 Apr 2024 pre-releaseNothing published for this version
-
v1.26.1-0.20240408005517-3e8ce707b62608 Apr 2024 pre-releaseNothing published for this version
-
v1.26.1-0.20240325073648-e7834f6661dd25 Mar 2024 pre-releaseNothing published for this version
-
v1.26.1-0.20240309030940-e206313ce4de09 Mar 2024 pre-releaseNothing published for this version
-
v1.26.028 Feb 2024Release notes
Open source →What's Changed
- Fix rare race in pipe-to-command close() result test by @juster in #213
- Fix #190: FS regex [^,]* fails on empty field by @fioriandrea in #214
- Fix issue #79: Incorrect parsing of complex ++ expressions by @fioriandrea in #215
- Allow optional newline between "do {}" and "while" by @benhoyt in #220
- Distinguish between /regexp/ and "regexp" in stringified output by @ypdn in #222
New Contributors
Full Changelog: v1.25.0...v1.26.0
-
v1.25.1-0.20240228191704-086ef16a64ff28 Feb 2024 pre-releaseNothing published for this version
-
v1.25.1-0.20240228022228-4ae6290d656628 Feb 2024 pre-releaseNothing published for this version
-
v1.25.1-0.20240101044035-0fd695b2601f01 Jan 2024 pre-releaseNothing published for this version
-
v1.25.1-0.20231019190320-9241da4cf81b19 Oct 2023 pre-releaseNothing published for this version
-
v1.25.1-0.20231016064337-d4cd0afb1b2416 Oct 2023 pre-releaseNothing published for this version
-
v1.25.026 Sep 2023Release notes
Open source →This release includes several minor changes:
- Build binaries with PGO on Go 1.21. GoAWK on Go 1.21 is about 10% faster than on Go 1.20, and PGO makes it another 5-6% faster.
- Bumps up the minimum supported Go version from 1.15 to 1.16.
- Makes the return value of
system()andclose()for pipes more closely match Gawk's. Internal refactoring of the input and output stream implementation to make this happen. See issues #203 #204 #205 and thanks @juster! - Support the
\uUnicode string escape that's been added to onetrueawk and Gawk recently. #212
Release notes
Open source →v1.25.0: PGO, better exit codes, \u escape
Compare
Choose a tag to compare
-
v1.24.1-0.20230924233126-17fbb8bf238024 Sep 2023 pre-releaseNothing published for this version
-
v1.24.1-0.20230910213605-a843ab1bb03910 Sep 2023 pre-releaseNothing published for this version
-
v1.24.1-0.20230830215015-f2d5f1f1f83130 Aug 2023 pre-releaseNothing published for this version
-
v1.24.014 Jul 2023Nothing published for this version
-
v1.23.4-0.20230714202356-97e74159be1414 Jul 2023 pre-releaseNothing published for this version
-
v1.23.4-0.20230620093203-d18c07ab8c6b20 Jun 2023 pre-releaseNothing published for this version
-
v1.23.4-0.20230619095519-05005d66b87219 Jun 2023 pre-releaseNothing published for this version
-
v1.23.311 Jun 2023Nothing published for this version
-
v1.23.3-0.20230611072644-c66943e27b7211 Jun 2023 pre-releaseNothing published for this version
-
v1.23.3-0.20230608083024-d1e11be8f0e308 Jun 2023 pre-releaseNothing published for this version
-
v1.23.205 Jun 2023Nothing published for this version
-
v1.23.118 May 2023Nothing published for this version
-
v1.23.1-0.20230516091534-6fc55b538c6516 May 2023 pre-releaseNothing published for this version
-
v1.23.012 May 2023Nothing published for this version
-
v1.22.007 Apr 2023Nothing published for this version
-
v1.21.1-0.20230228070302-bfabab4f4ce128 Feb 2023 pre-releaseNothing published for this version
-
v1.21.1-0.20230227091330-59441bef1fca27 Feb 2023 pre-releaseNothing published for this version
-
v1.21.1-0.20230217065421-01e7dd06556b17 Feb 2023 pre-releaseNothing published for this version