Skip to content

chore: Bump mvdan.cc/sh/v3 from 3.13.1 to 3.14.1 - #461

Merged
jahvon merged 1 commit into
mainfrom
dependabot/go_modules/mvdan.cc/sh/v3-3.14.0
Sep 22, 2026
Merged

jahvon merged 1 commit into
mainfrom
dependabot/go_modules/mvdan.cc/sh/v3-3.14.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 1, 2026

Copy link
Copy Markdown
Contributor

Bumps mvdan.cc/sh/v3 from 3.13.1 to 3.14.1.

Release notes

Sourced from mvdan.cc/sh/v3's releases.

v3.14.1

  • syntax
    • Fix the indentation of heredocs nested inside command substitutions - #1403
    • Keep literal tabs in <<- heredoc bodies rather than replacing them with spaces
    • Don't indent heredocs without dashes nested in <<- ones, whose output no longer parsed
    • Zsh: don't drop the prefix in short forms like $#"$foo" and $+"$foo" - #1405
  • interp
    • Fix the build on 32-bit FreeBSD and NetBSD
  • expand
    • Don't let escaped characters such as \* act as glob metacharacters
  • pattern
    • Treat unclosed extended operator groups like @(a as literals, avoiding a panic

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

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

CGO_ENABLED=0 go build -trimpath -ldflags="-w -s"

v3.14.0

This release drops support for Go 1.25 and includes many enhancements, particularly in the interpreter, which implements more shell features and fixes many divergences from Bash.

  • cmd/shfmt
    • Add --detect to find shell files by executable bit or shebang - #944
  • syntax
    • Add Preorder, an iterator over all nodes, complementing Walk
    • Add encoding.TextUnmarshaler implementations for each operator type
    • Support ${ foo;} and ${|foo;} inside double quotes - #1368
    • Support array elements in {varname} redirects, like exec {fds[3]}>&- - #719
    • Backslashes inside backquotes within double quotes escape double quotes - #1083
    • Allow pound signs in associative array keys like ${args[cmd,#]} - #1285
    • Don't treat # as the start of a comment inside [[ ]] tests - #1326
    • Don't join then or do with a semicolon when heredocs are pending - #1047
    • Print a space after ! in arithmetic expressions, avoiding history expansion - #987
    • Space nested closing parentheses like the opening ones - #876
    • Make SplitBraces reject malformed sequences and skip backslash escapes - #1330
    • Zsh: support the ${=name}, ${~name}, and ${^name} prefixes - #1238
    • Zsh: support the ;| case terminator and leading parentheses for globs - #1293, #1279
    • Zsh: parse subscript flag arguments as patterns, and allow [ globs in arrays - #1278, #1322
  • syntax/typedjson
    • Encode operators as their syntax form, such as ">>", rather than integers - #1321
    • Return errors rather than panicking on malformed input
  • interp
    • Add BashOpts to set Bash options like shopt - #962
    • Add AccessHandler to control file access checks, used by -r and cd - #1318
    • Add HandlerContext.LastExitStatus, and provide a HandlerContext to stat handlers
    • Implement the help and times builtins, as well as $- - #1398
    • Implement the ;& and ;;& case terminators - #1391
    • Implement the -N test operator, and make -nt and -ot follow POSIX - #1340
    • Support sparse indexed arrays such as a=([5]=x) - #1373

... (truncated)

Changelog

Sourced from mvdan.cc/sh/v3's changelog.

[3.14.1] - 2026-09-06

  • syntax
    • Fix the indentation of heredocs nested inside command substitutions - #1403
    • Keep literal tabs in <<- heredoc bodies rather than replacing them with spaces
    • Don't indent heredocs without dashes nested in <<- ones, whose output no longer parsed
    • Zsh: don't drop the prefix in short forms like $#"$foo" and $+"$foo" - #1405
  • interp
    • Fix the build on 32-bit FreeBSD and NetBSD
  • expand
    • Don't let escaped characters such as \* act as glob metacharacters
  • pattern
    • Treat unclosed extended operator groups like @(a as literals, avoiding a panic

[3.14.0] - 2026-08-28

This release drops support for Go 1.25 and includes many enhancements, particularly in the interpreter, which implements more shell features and fixes many divergences from Bash.

  • cmd/shfmt
    • Add --detect to find shell files by executable bit or shebang - #944
  • syntax
    • Add Preorder, an iterator over all nodes, complementing Walk
    • Add encoding.TextUnmarshaler implementations for each operator type
    • Support ${ foo;} and ${|foo;} inside double quotes - #1368
    • Support array elements in {varname} redirects, like exec {fds[3]}>&- - #719
    • Backslashes inside backquotes within double quotes escape double quotes - #1083
    • Allow pound signs in associative array keys like ${args[cmd,#]} - #1285
    • Don't treat # as the start of a comment inside [[ ]] tests - #1326
    • Don't join then or do with a semicolon when heredocs are pending - #1047
    • Print a space after ! in arithmetic expressions, avoiding history expansion - #987
    • Space nested closing parentheses like the opening ones - #876
    • Make SplitBraces reject malformed sequences and skip backslash escapes - #1330
    • Zsh: support the ${=name}, ${~name}, and ${^name} prefixes - #1238
    • Zsh: support the ;| case terminator and leading parentheses for globs - #1293, #1279
    • Zsh: parse subscript flag arguments as patterns, and allow [ globs in arrays - #1278, #1322
  • syntax/typedjson
    • Encode operators as their syntax form, such as ">>", rather than integers - #1321
    • Return errors rather than panicking on malformed input
  • interp
    • Add BashOpts to set Bash options like shopt - #962
    • Add AccessHandler to control file access checks, used by -r and cd - #1318
    • Add HandlerContext.LastExitStatus, and provide a HandlerContext to stat handlers
    • Implement the help and times builtins, as well as $- - #1398
    • Implement the ;& and ;;& case terminators - #1391
    • Implement the -N test operator, and make -nt and -ot follow POSIX - #1340
    • Support sparse indexed arrays such as a=([5]=x) - #1373
    • Run files as shell scripts when exec fails with ENOEXEC - #1065
    • Support empty here-documents, and don't expand quoted ones - #1390

... (truncated)

Commits
  • a3f0c75 CHANGELOG: add entry for v3.14.1
  • 29855f3 interp: stop confirming a huge brace sequence against bash
  • 39a9394 expand: keep escaped characters from acting as glob metacharacters
  • a89e798 expand: add test cases for globbing with escaped metacharacters
  • 755b3e5 pattern: treat unclosed extended operator groups as literals
  • 63af908 fix: gitAtime build fail on 32-bit FreeBSD and NetBSD
  • 671a5e2 syntax: count columns for bytes written via colCounter.Write
  • 7c82969 syntax: don't indent heredocs without dashes nested in <<- ones
  • 075feed syntax: keep literal tabs in <<- heredoc bodies intact
  • 466c5e8 syntax: add test cases for literal tabs in <<- heredoc bodies
  • Additional commits viewable in compare view

@dependabot dependabot Bot added the dependencies Automated dependency updates label Sep 1, 2026
@dependabot
dependabot Bot requested a review from jahvon as a code owner September 1, 2026 08:04
@dependabot dependabot Bot added the dependencies Automated dependency updates label Sep 1, 2026
@jahvon

jahvon commented Sep 22, 2026

Copy link
Copy Markdown
Member

@dependabot rebase

@dependabot dependabot Bot changed the title chore: Bump mvdan.cc/sh/v3 from 3.13.1 to 3.14.0 chore: Bump mvdan.cc/sh/v3 from 3.13.1 to 3.14.1 Sep 22, 2026
@dependabot
dependabot Bot force-pushed the dependabot/go_modules/mvdan.cc/sh/v3-3.14.0 branch from 1ff1374 to 2b6e867 Compare September 22, 2026 17:36
@jahvon

jahvon commented Sep 22, 2026

Copy link
Copy Markdown
Member

https://github.com/dependabot rebase

Bumps [mvdan.cc/sh/v3](https://github.com/mvdan/sh) from 3.13.1 to 3.14.1.
- [Release notes](https://github.com/mvdan/sh/releases)
- [Changelog](https://github.com/mvdan/sh/blob/master/CHANGELOG.md)
- [Commits](mvdan/sh@v3.13.1...v3.14.1)

---
updated-dependencies:
- dependency-name: mvdan.cc/sh/v3
  dependency-version: 3.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/go_modules/mvdan.cc/sh/v3-3.14.0 branch from 2b6e867 to 934a101 Compare September 22, 2026 18:02
@jahvon
jahvon merged commit 5d1f31b into main Sep 22, 2026
22 checks passed
@jahvon
jahvon deleted the dependabot/go_modules/mvdan.cc/sh/v3-3.14.0 branch September 22, 2026 18:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Automated dependency updates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant