github mvdan/sh v3.7.0

latest releases: v3.10.0, v3.9.0, v3.8.0...
17 months ago

This release drops support for Go 1.18 and includes many features and fixes.

  • syntax
    • Correctly parse $foo#bar as a single word - [#1003]
    • Make &> redirect operators an error in POSIX mode - [#991]
    • Avoid producing invalid shell when minifying some heredocs - [#923]
    • Revert the simplification of ${foo:-} into ${foo-} - [#970]
  • interp
    • Add ExecHandlers to support layering multiple middlewares - [#964]
    • Add initial support for the select clause - [#969]
    • Support combining the errexit and pipefail options - [#870]
    • Set EUID just like UID - [#958]
    • Replace panics on unimplemented builtins with errors - [#999]
    • Tweak build tags to support building for js/wasm - [#983]
  • syntax/typedjson
    • Avoid reflect.Value.MethodByName to reduce binary sizes - [#961]

A special thanks to all the contributors to this release! @riacataquian @anderbubble @teefill @diamondburned

Consider becoming a sponsor if you benefit from the work that went into this release!

Binaries built on go version go1.20.5 linux/amd64 with:

CGO_ENABLED=0 go build -trimpath -ldflags="-w -s -X=main.version=v3.7.0"

Don't miss a new sh release

NewReleases is sending notifications on new releases.