Commit Graph

103 Commits

Author SHA1 Message Date
Vidar Holen 76c5af2973 Parser support for $[..], plus deprecation warning. 2013-07-05 09:42:08 -07:00
Vidar Holen a20a3499ed Improved bad indirection detection 2013-07-05 09:15:08 -07:00
Vidar Holen 73c6202842 Fixed misplaced uuoc for 'cat foo' outside pipe. 2013-07-04 14:27:03 -07:00
Vidar Holen 66cebe7c7b Don't warn about quoting when $var is the command name. 2013-07-04 13:49:00 -07:00
Vidar Holen af4d24c6f6 Check for 'echo "\n"'. 2013-07-04 13:42:31 -07:00
Vidar Holen fc3045232f Don't warn about f=/dev/null in 'foo $f > $f' 2013-07-04 13:18:46 -07:00
Vidar Holen d2c5802a9d Fixed UUOC warning for 'cat * | ..'. 2013-07-04 12:26:59 -07:00
Vidar Holen ab20747ef2 Removed warning for ~ in the middle of strings. Too common. 2013-07-04 12:01:34 -07:00
Vidar Holen 9e84ff66f7 Warn about $() but not quotes in 'if $(cmd); ..' 2013-07-04 11:44:36 -07:00
Vidar Holen f557ac3324 Added check for 'exec foo; cmd' 2013-07-02 22:37:33 -07:00
Vidar Holen 5d46c8a53f Added check for functions used with sudo/xargs/etc 2013-07-02 21:35:17 -07:00
Vidar Holen 99be2736a1 Doubled speed by applying all checks in one iteration. 2013-07-02 20:29:07 -07:00
Vidar Holen 6aafc86a67 Added check for './ file'. Apparently people do that. 2013-07-02 20:09:01 -07:00
Vidar Holen 9cfa25cb56 Added check for ~ in quotes 2013-07-02 19:52:09 -07:00
Vidar Holen 499f7c8733 Warn for possible bad quote nesting like 'echo 'foo'' 2013-07-01 10:01:58 -07:00
Vidar Holen 652f8a24fa Added most checks from 'checkbashisms'. Thanks to Braakman, Rodin and Gilbey! 2013-06-30 12:13:18 -07:00
Vidar Holen f820298b6e Added recursive parsing support for `..` 2013-06-26 21:04:39 -07:00
Vidar Holen 25ee7e20f4 Added awkward check for PS1 escapes outside \[..\] 2013-06-25 20:59:54 -07:00
Vidar Holen 51cd951baa Added warnings for sudo cmd > file 2013-06-18 20:08:56 -07:00
Vidar Holen 1b8b3b84d0 Fixed broken test for for f in "*.mp3"; do .. 2013-05-29 21:05:15 -07:00
Vidar Holen 1dbbc51f86 Improved regex parsing. To think [[ f =~ f( ]] )* ]] is valid.. 2013-05-28 21:32:15 -07:00
Vidar Holen 6b89f33d0c Warn about arg='--foo="bar"'; cmd $arg 2013-05-28 20:06:20 -07:00
Vidar Holen b279411d70 Rewrote variable tracking code for future expansion 2013-05-27 20:54:03 -07:00
Vidar Holen fc1af1b918 Also check for overridden time parameters for /bin/sh 2013-05-25 22:43:17 -07:00
Vidar Holen 17cf796486 Different checks per shell, and increased bashism detection. 2013-05-25 22:33:21 -07:00
Vidar Holen cf67bf2294 Added check for 'time --format' and such, which Bash swallows. 2013-05-23 22:28:12 -07:00
Vidar Holen e8a0fe09bf Added error for ${foo$n} 2013-05-23 21:47:25 -07:00
Vidar Holen 13d4ea6540 Don't complaing about lack of quotes for 'local' and 'declare' 2013-05-20 11:58:08 -07:00
Vidar Holen 92d0ae8b6b Allow [ foo \> bar ], while warning for [[ .. \> .. ]] and [ 1 \< 2 ] 2013-05-14 15:59:58 -07:00
Vidar Holen 10d4abf235 Warn for test n > 4 2013-05-14 15:23:28 -07:00
Vidar Holen 2f21ced552 Warn for subshell modifications using 'let' 2013-05-02 12:38:47 -07:00
Vidar Holen 82b16b4076 Warn for [[ $foo > 3.14 ]] 2013-03-22 17:10:30 -07:00
Vidar Holen 9f244edae3 Warn on "grep foo*.jpg" and "grep *foo*" 2013-03-01 17:28:41 -08:00
Vidar Holen d2e2d06978 Add check for [[ "foo" ]] 2013-02-14 19:43:43 -08:00
Vidar Holen 585529a636 Return list of notes rather than a Map -> Map 2013-02-11 19:26:40 -08:00
Vidar Holen 05cb806642 Also warn for '$((foo)) $(cmd) ${foo}', not just '$foo' 2013-02-07 17:53:47 -08:00
Vidar Holen 795af72cf7 Fixed warning for ${#@} 2013-02-06 22:35:24 -08:00
Vidar Holen 84f87002b7 Split up numerical and legal binary op function 2013-02-05 20:15:13 -08:00
Vidar Holen dd115a6d35 Warn on trap "echo $num" USR1 2013-01-25 20:32:25 -08:00
Vidar Holen f6f05234bf Warn on for f in 1,2,3 and for f in ls; 2013-01-25 20:15:42 -08:00
Vidar Holen 0d3dded238 Check if =~ is applied to something that looks like a glob 2013-01-25 20:06:18 -08:00
Vidar Holen 389d5588d8 Make [[ foo=bar ]] check say 'operator' instead of '=', because != 2013-01-22 14:50:30 -08:00
Vidar Holen b517ad9e19 select loops and bases in arithmetic contexts 2012-12-31 18:48:57 -08:00
Vidar Holen 059ef63b44 Don't warn for awk '$1' 2012-12-12 18:27:57 -08:00
Vidar Holen 1d7c6f68b4 Fixed bad for f in $(ls *.mp3) after T_Glob 2012-12-06 23:43:19 -08:00
Vidar Holen bb6c155341 {1..$n} is only a problem in Bash 2012-12-05 09:53:16 -08:00
Vidar Holen 1fb3380e68 Added warning for find . -execdir rm *.jpg \; 2012-12-02 18:10:00 -08:00
Vidar Holen 6402f7f4a3 Fixed space warning for foo=$(echo $foo) 2012-12-02 17:19:44 -08:00
Vidar Holen d3a4c9852f Read any -* as binary/unary op, and warn on unknown. 2012-12-02 14:50:31 -08:00
Vidar Holen 55a4c3c44f Added check for bashisms with #!/bin/sh 2012-12-02 14:08:50 -08:00