Skip to content

Update dependency shellcheck to v0.9.0

Erik Seliger requested to merge renovate/shellcheck-0.x into main

Created by: renovate[bot]

Mend Renovate

This PR contains the following updates:

Package Update New value References Sourcegraph
shellcheck minor 0.9.0 source code search for "shellcheck"

Test plan: CI should pass with updated dependencies. No review required: this is an automated dependency update PR.


Release Notes

koalaman/shellcheck (shellcheck)

v0.9.0

Compare Source

Added
  • SC2316: Warn about 'local readonly foo' and similar (thanks, patrickxia!)
  • SC2317: Warn about unreachable commands
  • SC2318: Warn about backreferences in 'declare x=1 y=$x'
  • SC2319/SC2320: Warn when $? refers to echo/printf/[ ]/[[ ]]/test
  • SC2321: Suggest removing ((..)) in array\[((idx))]=val
  • SC2322: Suggest collapsing double parentheses in arithmetic contexts
  • SC2323: Suggest removing wrapping parentheses in a[(x+1)]=val
Fixed
  • SC2086: Now uses DFA to make more accurate predictions about values
  • SC2086: No longer warns about values declared as integer with declare -i
Changed
  • ShellCheck now has a Data Flow Analysis engine to make smarter decisions based on control flow rather than just syntax. Existing checks will gradually start using it, which may cause them to trigger differently (but more accurately).
  • Values in directives/shellcheckrc can now be quoted with '' or ""

v0.8.0

Compare Source

Added
  • disable=all now conveniently disables all warnings
  • external-sources=true directive can be added to .shellcheckrc to make shellcheck behave as if -x was specified.
  • Optional check-extra-masked-returns for pointing out commands with suppressed exit codes (SC2312).
  • Optional require-double-brackets for recommending [[ ]] (SC2292).
  • SC2286-SC2288: Warn when command name ends in a symbol like /.)'"
  • SC2289: Warn when command name contains tabs or linefeeds
  • SC2291: Warn about repeated unquoted spaces between words in echo
  • SC2292: Suggest [[ over [ in Bash/Ksh scripts (optional)
  • SC2293/SC2294: Warn when calling eval with arrays
  • SC2295: Warn about "{x#y}" treating $y as a pattern when not quoted
  • SC2296-SC2301: Improved warnings for bad parameter expansions
  • SC2302/SC2303: Warn about loops over array values when using them as keys
  • SC2304-SC2306: Warn about unquoted globs in expr arguments
  • SC2307: Warn about insufficient number of arguments to expr
  • SC2308: Suggest other approaches for non-standard expr extensions
  • SC2313: Warn about read with unquoted, array indexed variable
Fixed
  • SC2102 about repetitions in ranges no longer triggers on [[ -v arr[xx] ]]
  • SC2155 now recognizes typeset and local read-only declare statements
  • SC2181 now tries to avoid triggering for error handling functions
  • SC2290: Warn about misused = in declare & co, which were not caught by SC2270+
  • The flag --color=auto no longer outputs color when TERM is "dumb" or unset
Changed
  • SC2048: Warning about $* now also applies to ${array[*]}
  • SC2181 now only triggers on single condition tests like [ $? = 0 ].
  • Quote warnings are now emitted for declaration utilities in sh
  • Leading _ can now be used to suppress warnings about unused variables
  • TTY output now includes warning level in text as well as color
Removed
  • SC1004: Literal backslash+linefeed in '' was found to be usually correct

v0.7.2

Compare Source

Added
  • disable directives can now be a range, e.g. disable=SC3000-SC4000
  • SC1143: Warn about line continuations in comments
  • SC2259/SC2260: Warn when redirections override pipes
  • SC2261: Warn about multiple competing redirections
  • SC2262/SC2263: Warn about aliases declared and used in the same parsing unit
  • SC2264: Warn about wrapper functions that blatantly recurse
  • SC2265/SC2266: Warn when using & or | with test statements
  • SC2267: Warn when using xargs -i instead of -I
  • SC2268: Warn about unnecessary x-comparisons like [ x$var = xval ]
Fixed
  • SC1072/SC1073 now respond to disable annotations, though ignoring parse errors is still purely cosmetic and does not allow ShellCheck to continue.
  • Improved error reporting for trailing tokens after ]/]] and compound commands
  • #!/usr/bin/env -S shell is now handled correctly
  • Here docs with \r are now parsed correctly and give better warnings
Changed
  • Assignments are now parsed to spec, without leniency for leading $ or spaces
  • POSIX/dash unsupported feature warnings now have individual SC3xxx codes
  • SC1090: A leading $x/ or $(x)/ is now treated as ./ when locating files
  • SC2154: Variables appearing in -z/-n tests are no longer considered unassigned
  • SC2270-SC2285: Improved warnings about misused =, e.g. ${var}=42

Configuration

📅 Schedule: Branch creation - "on the 1st through 7th day of the month" in timezone America/Los_Angeles, 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 has been generated by Mend Renovate. View repository job log here.

Merge request reports

Loading