Vidar Holen
d09551a4e6
Update CHANGELOG post-release
2025-08-03 20:50:07 -07:00
Vidar Holen
aac0823e6b
Stable version v0.11.0
...
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
2025-08-03 16:19:11 -07:00
Vidar Holen
5e6383578d
Make SC2335 and friends optional (avoid-negated-conditions)
2025-07-28 15:16:22 -07:00
Eisuke Kawashima
34cdbaa5e0
feat: avoid double negative of a binary operator in test
...
suggest `[ a != b ]` over `[ ! a = b ]` and `! [ a = b ]`, and so forth.
c.f. SC2236 and SC2237 (unary operations)
close #3164
2025-07-20 03:18:38 +09:00
Vidar Holen
7dc4214149
Normalize \ to / in diff output on Windows ( fixes #3240 )
2025-07-17 13:40:33 -07:00
Vidar Holen
c3a597e6dd
Update changelog with Bash 5.3 features
2025-07-17 12:32:55 -07:00
Vidar Holen
62a8ecf9bf
Merge branch 'e-kwsm-SC3013'
2025-04-27 16:16:49 -07:00
Vidar Holen
fbb8386797
Merge pull request #3170 from e-kwsm/SC3012
...
fix(SC3012)!: do not warn about `\<` and `\>` in test/[] as specified in POSIX.1-2024
2025-04-09 10:51:44 -07:00
Vidar Holen
c41f3a4b8a
Warn about [ ! -o opt ] (and -a) being unconditionally true ( fixes #3174 )
2025-04-08 10:53:52 -07:00
Vidar Holen
574c6d18fb
Suggest using test -e instead of -a ( fixes #3174 ).
2025-04-08 10:23:10 -07:00
Eisuke Kawashima
bc60607f9e
fix(SC3012)!: do not warn about \<
and \>
in test/[] as specified in POSIX.1-2024
...
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/test.html
fix #3168
2025-03-24 06:32:32 +09:00
Eisuke Kawashima
3a9ddae06b
fix(SC3013)!: remove SC3013 since the operators are specified by POSIX.1-2024
...
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/test.html
fix #3167
2025-03-24 06:24:12 +09:00
Vidar Holen
097018754b
Mention that SC2002 (UUOC) is now no longer enabled by default.
2024-10-27 18:10:00 -07:00
Vidar Holen
5e3e98bcb0
Use CFG to determine use-before-define for SC2218 ( fixes #3070 )
2024-10-27 15:43:30 -07:00
Meng Zhuo
15de97e33f
Add linux.riscv64 precompiled support
2024-05-30 19:20:21 +08:00
Vidar Holen
ac8fb00504
Account for BusyBox support of [[ ]] ( fixes #2967 )
2024-05-04 16:45:52 -07:00
Vidar Holen
76ff702e93
Supress SC2015 about A && B || C
when B is a test.
2024-05-04 15:12:13 -07:00
Vidar Holen
4f81dbe839
Add warning about uninvoked functions, reduce repeated triggering of SC2317 ( fixes #2966 )
2024-05-04 14:35:26 -07:00
Vidar Holen
2c5155e43d
Warn about capturing the output of redirected commands.
2024-04-14 18:47:19 -07:00
Vidar Holen
94214ee725
Post-release CHANGELOG
2024-03-07 19:11:12 -08:00
Vidar Holen
37dfb67768
Stable version v0.10.0
...
This release is dedicated to LLMs, for finally fulfilling the promise of
1960s scifi: systems you can hack using logic games and creative lies.
2024-03-07 17:54:39 -08:00
Vidar Holen
d80fdfa9e8
Add extended-analysis directive to toggle DFA
2024-02-03 16:11:39 -08:00
Grische
be8e4b2b8a
add basic busybox sh support
2023-11-27 13:00:10 +01:00
Max Ulidtko
9605396bef
Docs: describe fixes of PR #2837 in changelog
2023-10-01 21:23:25 +02:00
Vidar Holen
dd747b2a98
SC2325/SC2326: Warn about ! ! foo and foo | ! bar ( fixes #2810 )
2023-07-30 19:18:27 -07:00
Vidar Holen
9490b94886
Save and restore pending here docs when sourcing files ( fixes #2803 )
2023-07-30 16:52:40 -07:00
Vidar Holen
372c0b667e
SC2324: Warn when x+=1 appends.
2023-07-30 15:00:43 -07:00
Vidar Holen
78dea1d4f9
Update changelog from release
2023-02-04 10:27:59 -08:00
Vidar Holen
a526ee0829
Stable version 0.9.0
...
This release is dedicated to Mindustry: the most fun you can
have with open source (outside of shell scripting of course).
2022-12-12 21:49:19 -08:00
Vidar Holen
d0dd81e1fa
Allow quoting values in directives ( fixes #2517 )
2022-07-28 08:56:44 -07:00
Vidar Holen
52dac51cd4
SC2323: Warn about redundant parens in a[(x+1)] and $(( ((x)) )) (ref: #1666 )
2022-07-24 14:18:38 -07:00
Vidar Holen
30bb0e0093
SC2321: Warn about redundant $(()) in arr[$((i))]=x (ref: #1666 )
2022-07-24 14:18:38 -07:00
Vidar Holen
5cf6e01ce9
Warn when $? refers to echo or condition (ref #2541 )
2022-07-23 09:39:26 -07:00
Vidar Holen
9caeec104b
SC2318: Warn about backreferencing in declare x=1 y=$x
( fixes #1653 )
2022-07-22 12:40:59 -07:00
Vidar Holen
3ee4419ef4
Suppress SC2086 for variables declared -i (ref #2541 )
2022-07-22 08:53:27 -07:00
Vidar Holen
da4885a71d
Use DFA for SC2086
2022-07-20 08:08:44 -07:00
Vidar Holen
642ad86125
Add SC2317 warning about unreachable commands
2022-07-20 08:08:41 -07:00
Vidar Holen
f77a545282
Control Flow Graph / Data Flow Analysis support
2022-07-20 08:08:24 -07:00
Vidar Holen
399c04cc17
Mention SC2316 in changelog
2022-05-06 10:11:52 -07:00
Vidar Holen
4c186c20b9
Post-release CHANGELOG update
2021-11-06 23:18:19 -07:00
Vidar Holen
e5ad4cf420
Stable version 0.8.0
...
This release is dedicated to dibblego, who pushed me down the Haskell
rabbit hole. In 2006 I thought you were crazy. Today I *know* you are.
2021-11-06 22:12:39 -07:00
Vidar Holen
205ba429b3
Warn about read foo[i]
expanding as glob ( fixes #2345 )
2021-10-07 18:50:44 -07:00
Vidar Holen
05bdeae3ab
Mention require-double-brackets in CHANGELOG
2021-10-07 17:26:08 -07:00
Vidar Holen
38251abe26
Add suggestion level in text for TTY output ( fixes #2339 )
2021-10-07 17:14:41 -07:00
Vidar Holen
6f7eee4a27
Mention check-extra-masked-returns in changelog
2021-10-02 12:59:55 -07:00
Vidar Holen
3a296cd788
The removed check was SC1004, not SC1003
2021-09-19 12:27:16 -07:00
Vidar Holen
2536507060
Remove SC1004 ( fixes #2326 )
2021-09-18 17:43:55 -07:00
Vidar Holen
09aa15c9b7
Allow disable=all
to disable all warnings ( fixes #2323 )
2021-09-18 12:50:01 -07:00
Vidar Holen
4e703e5c61
Allow specifying external-sources=true in shellcheckrc ( fixes #1818 )
2021-09-15 18:02:37 -07:00
Vidar Holen
ecacc2e9bb
Merge pull request #2307 from a1346054/fixes
...
Fix redirect in license file and remove trailing whitespace elsewhere
2021-08-26 19:46:16 -07:00