github koalaman/shellcheck v0.11.0
Stable version v0.11.0

28 days ago

This release is dedicated to Satisfactory, even though my giant
3D ball of rat's nest conveyor belt spaghetti is anything but.

CHANGELOG

v0.11.0 - 2025-08-03

Added

  • SC2327/SC2328: Warn about capturing the output of redirected commands.
  • SC2329: Warn when (non-escaping) functions are never invoked.
  • SC2330: Warn about unsupported glob matches with [[ .. ]] in BusyBox.
  • SC2331: Suggest using standard -e instead of unary -a in tests.
  • SC2332: Warn about [ ! -o opt ] being unconditionally true in Bash.
  • SC3062: Warn about bashism [ -o opt ].
  • Optional avoid-negated-conditions: suggest replacing [ ! a -eq b ]
    with [ a -ne b ], and similar for -ge/-lt/=/!=/etc (SC2335).
  • Precompiled binaries for Linux riscv64 (linux.riscv64)

Changed

  • SC2002 about Useless Use Of Cat is now disabled by default. It can be
    re-enabled with --enable=useless-use-of-cat or equivalent directive.
  • SC2236/SC2237 about replacing [ ! -n .. ] with [ -z ] and vice versa
    is now optional under avoid-negated-conditions.
  • SC2015 about A && B || C no longer triggers when B is a test command.
  • SC3012: Do not warn about \< and \> in test/[] as specified in POSIX.1-2024
  • Diff output now uses / as path separator on Windows

Fixed

  • SC2218 about function use-before-define is now more accurate.
  • SC2317 about unreachable commands is now less spammy for nested ones.
  • SC2292, optional suggestion for [[ ]], now triggers for Busybox.
  • Updates for Bash 5.3, including ${| cmd; } and source -p

Removed

  • SC3013: removed since the operators -ot/-nt/-ef are specified in POSIX.1-2024

Don't miss a new shellcheck release

NewReleases is sending notifications on new releases.