Vidar Holen
81388cefd2
Warn when calling functions before defining them.
2017-07-10 22:53:26 -07:00
Vidar Holen
43bb6a20ad
Improve message for SC1052-54 about 'then;'
2017-07-08 17:25:54 -07:00
Vidar Holen
8f99d2b008
Don't warn about missing path for find -O3 . ( #942 )
2017-07-08 15:46:02 -07:00
Vidar Holen
79ae89076a
Swap SC1041 and SC1042 for better sort order.
2017-07-08 15:21:58 -07:00
Vidar Holen
aa33280cb0
Improve here doc diagnosis
2017-07-08 14:00:02 -07:00
Vidar Holen
bd13224907
Use standard Haskell 'void' instead of custom
2017-07-08 10:23:51 -07:00
Vidar Holen
b064cf3038
Fix parsing here docs like << '#foo' ( #947 )
2017-07-07 22:26:12 -07:00
Vidar Holen
1463cf773a
Suggest explicit escape "\\n" for "\n"
2017-07-04 11:06:52 -07:00
Vidar Holen
31bb02d6b7
Ignore leading \ for commands ( #927 )
2017-07-03 16:40:11 -07:00
Vidar Holen
5bd33dbf92
Warn when piping/redirecting to mv/cp/echo/etc ( #921 )
2017-07-03 16:02:58 -07:00
Vidar Holen
a3c6aff0fb
Improve parsing of line breaks in for statements ( #926 )
2017-07-03 13:58:10 -07:00
Vidar Holen
8184ef1e8b
Don't complain about missing space in {( ( #937 )
2017-07-03 12:22:19 -07:00
Vidar Holen
a839a6657b
Warn when commands start with dashes ( #938 )
2017-07-03 12:06:59 -07:00
Vidar Holen
a10b924570
Mention correct operator when warning about spaces around += ( #944 )
2017-07-03 10:44:09 -07:00
Vidar Holen
8f31ae913b
Skip command argument when checking trap signal specs ( #946 )
2017-07-03 10:36:51 -07:00
mr.Shu
954aa99b11
Analytics.hs: Refactor cd, popd and pushd checks
...
* Refactor the check of unchecked `cd`, `pushd` and `popd` into one
function.
Signed-off-by: mr.Shu <mr@shu.io>
2017-06-12 12:16:01 +02:00
mr.Shu
79872f92f8
Merge branch 'master' of https://github.com/koalaman/shellcheck into mrshu/pushd-popd-like-cd
...
Signed-off-by: mr.Shu <mr@shu.io>
2017-06-12 11:29:19 +02:00
Vidar Holen
50c8172de4
Allow escaping ( with quotes in [ .. ] ( #925 )
2017-06-03 11:45:25 -07:00
Vidar Holen
ce950edbfd
Don't trigger SC2026 when followed by empty literals ( #923 )
2017-06-03 09:38:47 -07:00
Vidar Holen
6f4e06d83c
Avoid rescanning tree for lastpipe on every node.
2017-05-28 16:04:42 -07:00
Vladimir Panteleev
505ff7832f
Recognize bash's `shopt -s lastpipe`
...
Fixes #732 .
2017-05-28 14:56:49 -07:00
Vidar Holen
ac3f0b3360
SC2114 about rm -rf /usr is no longer silenced by --
2017-05-28 14:44:58 -07:00
Vidar Holen
070a465b64
Recognize missing and superfluous cases in getopts loops.
2017-05-28 13:38:04 -07:00
Vidar Holen
4243c6a0bf
Treat + like :+ to squash SC2068
2017-05-24 19:20:28 -07:00
Vidar Holen
5099ebf9b9
Allow comments after shellcheck directives.
2017-05-21 13:56:22 -07:00
mr.Shu
5e4c288cf4
SC2174: Do not warn at `mkdir -pm 0700 ../foo`
...
* Do not warn when `mkdir -pm 0700` is used with combination of paths
like `..` and `.`
* Fixes #854
Signed-off-by: mr.Shu <mr@shu.io>
2017-05-16 11:45:04 -07:00
mr.Shu
9e35aa7ce8
SC2164: Make SC2164 apply to `pushd` and `popd`
...
* Since `pushd` and `popd` have the same failure cases, make the check
for SC2164 apply to them as well.
* This commit also refactors the code a bit as `hasSetE` is now used in
multiple places.
* Fixes #863 .
Signed-off-by: mr.Shu <mr@shu.io>
2017-05-14 14:00:10 +02:00
Vidar Holen
324aa3cc88
Improve and deduplicate string comparison warnings.
2017-04-22 21:09:42 -07:00
Vidar Holen
3cf8b9ceab
Parse ksh nested arrays and warn about var=((
2017-04-17 21:01:16 -07:00
Vidar Holen
5c01b6c7f5
Parse empty [ ] conditionals
2017-04-16 18:11:00 -07:00
Vidar Holen
7604e5eb58
Warn when using a glob as a command name.
2017-04-15 19:53:09 -07:00
Vidar Holen
4fb1080809
Warn when redirecting to a literal integer.
2017-04-15 17:20:33 -07:00
Vidar Holen
4f9a80db15
Remove leftover debug trace
2017-04-15 13:44:01 -07:00
Vidar Holen
fd79e80e78
Fix SC2120 triggering on sourced files and ${!var*}
2017-04-15 11:26:47 -07:00
Vidar Holen
1fd9b474ba
Don't warn about quoting variables in [ -v 'bar[$foo]' ]
2017-04-15 10:57:10 -07:00
Vidar Holen
faafc99704
Don't trigger SC2037 when quoting (PAGER="cat" foo)
2017-04-15 10:33:56 -07:00
Vidar Holen
bc882fd85a
Recognize more invalid shebangs
2017-04-08 16:34:00 -07:00
Vidar Holen
41b6e3d5eb
Don't warn about [ -v foo ] being unassigned.
2017-04-08 15:19:47 -07:00
Vidar Holen
da1691912b
Replace _otherwise with _ in cases
2017-04-08 14:00:52 -07:00
Vaibhav Sagar
0feb95b337
Implement fixes suggested by HLint
2017-04-08 11:07:32 -07:00
Vidar Holen
f0e0d9ffdb
Don't suggest \[\] in PS1 for non-bash
2017-04-02 14:50:15 -07:00
Vidar Holen
3c75674b50
Warn about unquoted expansions in arrays.
2017-04-02 14:28:12 -07:00
Vidar Holen
8e5e77ad76
Don't suggest removing $ for (( $! + ${!var} ))
2017-04-02 09:49:47 -07:00
Vidar Holen
66c7cf19e2
Fix missing backslash in SC1003 about '\''
2017-04-01 22:01:05 -07:00
Vidar Holen
e28e90133d
Add missing import
2017-03-18 16:42:17 -07:00
Vidar Holen
2688a81526
Don't suggest indirection for 'declare var$n=foo'
2017-03-18 14:54:52 -07:00
Vidar Holen
82c3084438
Add HandBrakeCLI to list of stdin swallowing apps
2017-03-18 13:10:54 -07:00
Vidar Holen
750212af39
Add less common actions to find -o check.
2017-03-03 20:43:00 -08:00
Vidar Holen
2154583fd3
Don't parse unicode quotes as real quotes.
2017-02-25 15:14:52 -08:00
Vidar Holen
35c74e4747
Getting command name from busybox now gets applet name
2017-02-12 10:56:29 -08:00