Skip to content

Releases: benhoyt/goawk

Version 1.3.0

13 Jan 23:10

Choose a tag to compare

Add support for delete array (with no index). Fix bug with handling of (s)printf format string with three %'s in a row.

Version 1.2.1

11 Jan 16:16

Choose a tag to compare

Make a[x] array access set the element if not present (per POSIX spec). This seems unintuitive to me, but it's very clear in the spec, and awk/gawk/mawk all do this.

Version 1.2.0

11 Jan 02:03

Choose a tag to compare

Fix a number of issues found by running (most of) the gawk test suite.

There are still a number of skipped GAWK tests (work to do), and some of GoAWK's behavior doesn't and won't ever match GAWK's 100%. I've gone for the POSIX behavior in most cases.

The full list of changes to GoAWK is:

  • Support additional POSIX escape sequences in string literals:
    \a \b \f \v \xhh (hex) \ooo (octal)
  • Fix close() to allow reopening a file after it's been closed
  • Make sub/gsub backslash handling per POSIX
  • Fix bug in RS="" handling:
    • when input is just newlines
    • when there are newlines at the start of the last record
  • Add support for ' ' (space) printf flag
  • Add parser/resolver errors for:
    • can't use function name as a parameter
    • global var %q can't also be a function
    • can't call local variable %q as function
    • duplicate parameter name %q
  • Treat FS of a single backslash as regex \\ (as other AWKs do)

Version 1.1.5

27 Dec 00:58

Choose a tag to compare

Fix scope issue when calling user function with global var

Version 1.1.4

23 Dec 01:44

Choose a tag to compare

Only split into fields when fields or NF are accessed. This speeds up scripts that only access the line ($0) and not individual fields.

Version 1.1.3

19 Dec 12:52

Choose a tag to compare

Fix resolving unknown var types when calling a native function. Thanks @Jeffail for reporting. Fixes #17.

Version 1.1.2

11 Dec 01:51

Choose a tag to compare

Eliminate numChecked and a couple of other speedups / simplifications.

Version 1.1.1

07 Dec 02:23

Choose a tag to compare

A couple of performance improvements related to value handling and numeric strings.

Version 1.1.0

01 Dec 19:01

Choose a tag to compare

Added support for calling native Go functions from AWK. See documentation of the Funcs field here: https://godoc.org/github.com/benhoyt/goawk/interp#Config

Version 1.0.1

22 Nov 01:49

Choose a tag to compare

Ensure printf has one or more args at parse time. Add some unit tests to get more coverage.