Vidar Holen
47d358c1d4
Tighten SC2333/SC2334 to only trigger against literals.
2025-05-17 00:55:50 +00:00
Vidar Holen
ad58768563
Merge branch 'tautologically-false' of github.com:e-kwsm/shellcheck into e-kwsm-tautologically-false
2025-05-12 17:04:34 +00:00
Vidar Holen
62a8ecf9bf
Merge branch 'e-kwsm-SC3013'
2025-04-27 16:16:49 -07:00
Ian Ehrenwald
b381658dbc
Add python3 to the list of badShells
2025-04-25 14:11:07 -04:00
Vidar Holen
f78714e0f6
Add ":" alongside "true" for SC2015
2025-04-11 19:14:53 -07:00
Vidar Holen
de07ec1c56
Merge branch 'ignore-sc2015-true' of github.com:Flu/shellcheck into Flu-ignore-sc2015-true
2025-04-11 19:14:15 -07:00
Vidar Holen
dc41f0cc5b
Refactor checks for POSIX test flags
2025-04-11 14:14:09 -07:00
Eisuke Kawashima
efb5a5a274
fix(SC3013): check POSIX-compliant unary operators for test and [
...
fix #2125
2025-04-09 19:21:53 +09:00
Vidar Holen
553a80f77a
Also ignore SC2119 for :? and :+.
2025-04-08 21:21:50 -07:00
Vidar Holen
7fc992d0dc
Suppress SC2119/SC2120 for ${1:-default} ( fixes #2023 )
2025-04-08 20:52:52 -07:00
Vidar Holen
c553288085
Merge pull request #3106 from larryv/updatevars-bash-5.3
...
Recognize internal variables new in bash 5.3
2025-04-08 20:09:29 -07:00
Vidar Holen
1be41dd652
Merge pull request #3082 from silby/oksh
...
Recognize "oksh" executable name as ksh
2025-04-08 20:08:53 -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
Vidar Holen
72af76f443
Supress SC2093 when execfail is set ( fixes #3178 )
2025-04-06 19:58:13 -07:00
Vidar Holen
8ff0c5be7a
Suppress SC2216 when piping to cp/mv/rm -i ( fixes #3141 ).
2025-04-06 19:27:29 -07:00
Eisuke Kawashima
4f628cbe2a
feat: check tautologically-false conditionals
...
- fix #3179 — negation of SC2055, `[ x = y -a x = z]`
- fix #3181 — negation of SC2056, `(( x == y && x == z ))`
- fix #3180 — negation of SC2252, `[ x = y ] && [ x = z ]`
2025-04-04 18:21:35 +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
Adrian Fluturel
cbf0b33463
Skip SC2015 when the last command is true
2025-01-07 03:24:29 +01:00
Lawrence Velázquez
fe315a25c4
Recognize internal variables new in bash 5.3
...
From the bug-bash@gnu.org announcement "Bash-5.3-beta available":
q. GLOBSORT: new variable to specify how to sort the results of
pathname expansion (name, size, blocks, mtime, atime, ctime,
none) in ascending or descending order.
w. BASH_MONOSECONDS: new dynamic variable that returns the value of
the system's monotonic clock, if one is available.
x. BASH_TRAPSIG: new variable, set to the numeric signal number of
the trap being executed while it's running.
https://lists.gnu.org/archive/html/bug-bash/2024-12/msg00120.html
2024-12-28 03:20:19 -05:00
Joseph C. Sible
d3001f337a
Simplify getParseOutput
2024-12-13 23:57:50 -05:00
Joseph C. Sible
7deb7e853b
Use mapM_ instead of sequence_ and <$>
2024-12-13 23:47:55 -05:00
Joseph C. Sible
26b949b9b0
Use mapM_ instead of isJust and fromJust
2024-12-13 23:45:32 -05:00
Joseph C. Sible
5adfea21ee
Use the result of the comparison directly instead of an if/else
2024-12-13 23:20:48 -05:00
Joseph C. Sible
0ecaf2b5f1
Use foldr instead of explicit recursion
2024-12-13 23:19:36 -05:00
Joseph C. Sible
195b70db8c
Use unless instead of when and not
2024-12-13 23:06:49 -05:00
Evan Silberman
944d87915a
Recognize "oksh" executable name as ksh
...
A portable version of OpenBSD's ksh is distributed with the executable
name oksh [1]. It's a descendant of pdksh and can be shellchecked as
ksh.
[1]: https://github.com/ibara/oksh
2024-11-11 11:24:21 -08:00
Vidar Holen
5e3e98bcb0
Use CFG to determine use-before-define for SC2218 ( fixes #3070 )
2024-10-27 15:43:30 -07:00
Vidar Holen
79e43c4550
Allow parsing arbitrary coproc names ( fixes #3048 )
2024-09-07 17:14:52 -07:00
Vidar Holen
88e441453b
Make SC2002 optional (useless-use-of-cat)
2024-08-31 18:31:47 -07:00
Vidar Holen
1487e57a46
Suppress unused warnings about stderr and stderr_lines from bats tests, fixing tests.
2024-08-31 18:27:18 -07:00
Vidar Holen
68e6f02267
Expand list of recognized unicode spaces (and rewrite for performance)
2024-08-31 18:00:49 -07:00
Vidar Holen
17ebc3dda0
Merge pull request #2973 from jandubois/bats-stderr
...
Add new bats variables stderr and stderr_lines
2024-08-04 16:52:59 -07:00
Vidar Holen
4cd76283da
Merge pull request #3011 from sertonix/busybox-3003
...
Fix SC3003, SC3036 and SC3045 for busybox shell
2024-08-04 16:52:15 -07:00
Vidar Holen
cd6fdee99b
Merge pull request #3034 from dereckson/SC2016-oc
...
Whitelist oc to avoid SC2016 false positive
2024-08-04 16:50:30 -07:00
Emil Berg
38c5ba7c79
Fix typos and trailing whitespace
2024-08-03 08:49:40 +02:00
Sébastien Santoro
2696c6472d
Whitelist oc to avoid SC2016 false positive
...
Fixes #3033 .
2024-07-31 13:33:25 +00:00
Sertonix
6d2f3d8628
Allow 'echo -e' in busybox shell
2024-07-09 16:58:50 +02:00
Sertonix
4c85274921
Fix SC3045 for busybox shell
2024-07-09 16:57:44 +02:00
Sertonix
6593096ba0
Allow SC3003 on busybox shell
2024-07-09 16:56:59 +02:00
Joseph C. Sible
98b8dc0720
Use fromList instead of reimplementing it in terms of foldl
2024-07-07 01:28:06 -04:00
Joseph C. Sible
95c0cc2e4b
Simplify removeUnnecessaryStructuralNodes
2024-07-07 01:28:06 -04:00
Joseph C. Sible
e5fdec970a
Swap the order of the tuple returned by orderEdge
2024-07-07 01:28:06 -04:00
Joseph C. Sible
8746c6e7f2
Switch the order of the maps to avoid unnecessary unionWith instead of union
2024-07-07 01:28:06 -04:00
Joseph C. Sible
61b7e66f80
Use sets instead of maps that never use their values
2024-07-07 01:28:06 -04:00
Joseph C. Sible
b408f54620
Simplify invokedNodes
2024-07-07 01:28:00 -04:00
Vidar Holen
ac8fb00504
Account for BusyBox support of [[ ]] ( fixes #2967 )
2024-05-04 16:45:52 -07:00
Vidar Holen
a13cb85f49
Fixed broken test due to bad build cache
2024-05-04 16:34:21 -07:00
Vidar Holen
a7a906e2cb
Allow SC2154 to trigger in arrays ( fixes #2970 )
2024-05-04 16:29:51 -07:00
Vidar Holen
d705716dc4
Account for annotations in SC2215. Fixes #2975 .
2024-05-04 15:22:09 -07:00