Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency shfmt to v3.8.0 #3

Merged
merged 1 commit into from
Aug 8, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 8, 2024

Mend Renovate

This PR contains the following updates:

Package Update Change
shfmt minor 3.3.0 -> 3.8.0

Release Notes

mvdan/sh (shfmt)

v3.8.0

Compare Source

This release drops support for Go 1.19 and 1.20 and includes many
features and bugfixes, such as improving EditorConfig support in shfmt.

  • cmd/shfmt
    • Support EditorConfig language sections such as [[shell]] - #​664
    • Add --apply-ignore for tools and editors - #​1037
  • syntax
    • Allow formatting redirects before all command argumetnts - #​942
    • Support brace expansions with uppercase letters - #​1042
    • Unescape backquotes in single quotes within backquotes - #​1041
    • Better error when using function in POSIX mode - #​993
    • Better column numbers for escapes inside backquotes - #​1028
  • interp
    • Support parentheses in classic test commands - #​1036
    • Determine access to a directory via unix.Access - #​1033
    • Support subshells with FuncEnviron as Env - #​1043
    • Add support for fs.DirEntry via ReadDirHandler2
  • expand
    • Add support for fs.DirEntry via ReadDir2
    • Support zero-padding in brace expansions - #​1042

v3.7.0

Compare Source

  • 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

v3.6.0

Compare Source

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

  • cmd/shfmt
    • Implement --from-json as the reverse of --to-json - [#​900]
    • Improve the quality of the --to-json output - [#​900]
    • Provide detected language when erroring with -ln=auto - [#​803]
  • syntax
    • Don't require peeking two bytes after echo * - [#​835]
    • Simplify ${name:-} to the equivalent ${name-} - [#​849]
    • Don't print trailing whitespaces on nested subshells - [#​814]
    • Don't print extra newlines in some case clauses - [#​779]
    • Don't indent comments preceding case clause items - [#​917]
    • Allow escaped newlines before unquoted words again - [#​873]
    • Parse a redirections edge case without spaces - [#​879]
    • Give a helpful error when <<< is used in POSIX mode - [#​881]
    • Forbid ${!foo*} and ${!foo@} in mksh mode - [#​929]
    • Batch allocations less aggressively in the parser
  • syntax/typedjson
    • Expose --from-json and --to-json as Go APIs - [#​885]
  • expand
    • Improve support for expanding array keys and values - [#​884]
    • Don't panic on unsupported syntax nodes - [#​841]
    • Don't panic on division by zero - [#​892]
    • Properly expand unquoted parameters with spaces - [#​886]
    • Trim spaces when converting strings to integers - [#​928]
  • interp
    • Add initial implementation for mapfile and readarray - [#​863]
    • Improve matching patterns against multiple lines - [#​866]
    • Support %b in the printf builtin - [#​955]
    • Display all Bash options in shopt - [#​877]
  • pattern
    • Add EntireString to match the entire string using ^$ - [#​866]

v3.5.1

Compare Source

  • cmd/shfmt
    • Fix the Docker publishing script bug which broke 3.5.0 - [#​860]
  • interp
    • Support multi-line strings when pattern matching in [[ - [#​861]
    • Invalid glob words are no longer removed with nullglob - [#​862]
  • pattern
    • Regexp now returns the typed error SyntaxError - [#​862]

v3.5.0

Compare Source

This release drops support for Go 1.16 and includes many new features.

  • cmd/shfmt
    • Switch to -ln=auto by default to detect the shell language
    • Add support for long flags, like --indent for -i
  • syntax
    • Allow extglob wildcards as function names like @() { ... }
    • Add support for heredocs surrounded by backquotes
    • Add support for backquoted inline comments
    • Add NewPos to create Pos values externally
    • Support escaped newlines with CRLF line endings
    • Minify no longer omits a leading shebang comment
    • Avoid printing escaped newlines in non-quoted words
    • Fix some printer edge cases where comments weren't properly spaced
  • fileutil
    • Add Shebang to extract the shell language from a #! line
  • expand
    • Reimplement globstar ** globbing for correctness
    • Replace os.Stat as the last direct use of the filesystem
  • interp
    • Add CallHandler to intercept all interpreted CallExpr nodes
    • Add ReadDirHandler to intercept glob expansion filesystem reads
    • Add StatHandler to intercept os.Stat and os.Lstat calls
    • Always surface exit codes from command substitutions
    • Add initial and incomplete support for set -x
    • Add support for cd - as cd "$OLDPWD"
    • Avoid panic on set - args

v3.4.3

Compare Source

  • cmd/shfmt
    • New Docker v3 tag to track the latest stable version
    • Don't duplicate errors when walking directories
  • interp
    • Properly handle empty paths in the test builtin
    • Allow unsetting global vars from inside a function again
    • Use %w to wrap errors in Dir

v3.4.2

Compare Source

  • The tests no longer assume what locales are installed
  • interp
    • Keep PATH list separators OS-specific to fix a recent regression
    • Avoid negative elapsed durations in the time builtin

v3.4.1

Compare Source

  • syntax
    • Don't return an empty string on empty input to Quote
  • expand
    • Properly sort in ListEnviron to avoid common prefix issues
  • interp
    • export used in functions now affects the global scope
    • Support looking for scripts in $PATH in source
    • Properly slice arrays in parameter expansions

v3.4.0

Compare Source

This release drops support for Go 1.15,
which allows the code to start benefitting from io/fs.

  • cmd/shfmt
    • Walks directories ~10% faster thanks to filepath.WalkDir
  • syntax
    • Add Quote to mirror strconv.Quote for shell syntax
    • Skip null characters when parsing, just like Bash
    • Rewrite fuzzers with Go 1.18's native fuzzing
  • fileutil
    • Add CouldBeScript2 using io/fs.DirEntry
  • expand
    • Skip or stop at null characters, just like Bash
  • interp
    • Set GID just like UID
    • Add support for read -p
    • Add support for pwd flags
    • Create random FIFOs for process substitutions more robustly
    • Avoid leaking an open file when interpreting $(<file)

v3.3.1

Compare Source

  • syntax
    • Don't convert & in a separate line into ;
    • Fix a BinaryNextLine edge case idempotency bug
    • Never start printing a command with an escaped newline
  • interp
    • Support calling Runner.Reset before Runner.Run
    • Obey set -e for failed redirections

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@CrouchingMuppet CrouchingMuppet merged commit 9caf490 into main Aug 8, 2024
4 checks passed
@CrouchingMuppet CrouchingMuppet deleted the renovate/shfmt-3.x branch August 8, 2024 00:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant