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 underavoid-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; }
andsource -p
Removed
- SC3013: removed since the operators
-ot/-nt/-ef
are specified in POSIX.1-2024