Vidar Holen
83adcba88e
Warn when nested loops have conflicting variable names.
2015-07-19 11:30:57 -07:00
Vidar Holen
35fb5073f4
Fixed cd foo; bar; cd -; check not trigger on top level
2015-07-18 19:58:09 -07:00
Vidar Holen
de59c3586b
Warn about 'cd' when not used as part of a conditional
2015-07-18 19:37:58 -07:00
Vidar Holen
8894333556
Warn about 'export $foo'
2015-07-18 13:23:36 -07:00
Vidar Holen
b1843c520f
Warn when using read without -r
2015-07-18 12:30:08 -07:00
Vidar Holen
d406ba9950
Special case messages for [ true ] and false/0/1
2015-07-18 11:47:28 -07:00
Vidar Holen
7929a9dbba
Makes literal check work for args to -z and -n
2015-07-18 11:08:42 -07:00
Vidar Holen
7e84ad031f
Warn about [ foo ] when "foo" is non-constant with constant parts.
2015-07-18 09:56:58 -07:00
Vidar Holen
7eef12102b
Make 2077 point to the = in [ foo=bar ]
2015-07-18 09:22:52 -07:00
Vidar Holen
3d83b87c9a
Added copyright notice to individual source files.
2015-06-30 19:21:12 -07:00
Vidar Holen
349dfdab35
Relicense from AGPL v3 to GPL v3.
2015-06-20 09:52:07 -07:00
Vidar Holen
1ab29ddb39
Made SC2082 indirection message more sh friendly.
2015-06-14 17:20:52 -07:00
Vidar Holen
09b7788412
Don't consider declare -Ffp assignments.
2015-06-14 16:51:18 -07:00
Vidar Holen
ef2135f3aa
Don't warn about unpassed parameters if used in child functions.
2015-06-14 16:14:05 -07:00
Vidar Holen
d10c3b2709
Don't warn about 2>&1 > foo if piping or capturing.
2015-06-14 15:39:44 -07:00
Vidar Holen
8b8b48ef55
Make quoted tilde message suggest $HOME instead.
2015-06-14 10:24:40 -07:00
Vidar Holen
65ab8c8ecb
Account for brace expansion in SC2115 (catastrophic rm).
2015-06-07 13:02:49 -07:00
Vidar Holen
3a041954d1
Don't warn about a&&b||c if c == printf
2015-05-24 12:41:54 -07:00
Vidar Holen
828378cdff
Warn about injecting filenames into sh -c strings with find.
2015-05-23 13:03:07 -07:00
Vidar Holen
509cda4dcf
Count mapfile/readarray as variable assignment
2015-05-10 13:13:42 -07:00
Vidar Holen
6076f0b1da
Parse variables and subexpressions in brace expansions
2015-05-10 12:49:50 -07:00
Vidar Holen
1d26c280d6
Warn when failing to quote here strings.
2015-05-09 12:12:11 -07:00
Vidar Holen
c785d43e34
Fixed unquoted $@ warning message.
2015-05-09 12:07:33 -07:00
Vidar Holen
4c3e731445
Don't warn about a/b*c for ksh or when b == c
2015-05-09 11:48:08 -07:00
Vidar Holen
3940462da3
Warn about glob matching in [[ ]] for != as well as ==.
2015-05-09 11:34:34 -07:00
Vidar Holen
bb7ef5834b
Warn on unindexed references for implicit arrays.
2015-04-21 19:19:15 -07:00
Vidar Holen
081751c1b5
Fixed case sensitivity in 'trap' bashism test
2015-04-05 10:33:54 -07:00
Vidar Holen
cc86aab3f1
Added multiple new checks from checkbashisms
2015-04-05 10:25:00 -07:00
Vidar Holen
9f1f00cdd1
Switch from regex-compat to regex-tdfa
2015-04-04 16:26:28 -07:00
Vidar Holen
47b971c582
Declared FlexibleContexts for GHC 7.10
2015-03-31 21:59:03 -07:00
Vidar Holen
ed56a837c3
Killed Zsh support
2015-03-20 10:03:56 -07:00
Vidar Holen
80cf5d9852
Include [] as glob chars to warn about quoting for
2015-03-19 18:29:47 -07:00
Vidar Holen
8e554ae3d4
Fix SC2143 to not warn about pgrep and other quasi-greps.
2015-03-12 08:31:49 -07:00
Vidar Holen
0e1a64b6ba
Warn about export/declare/local masking return values.
2015-03-08 14:17:43 -07:00
Vidar Holen
0a2cf208c8
Fixed quoted ~ warning to only trigger for ~/
2015-03-07 23:48:01 -08:00
Vidar Holen
dcc10bbdf6
Fixed accidentally ignored undef warning for ${#foo}
2015-03-07 23:01:34 -08:00
Vidar Holen
2c2e41952f
Improved missing shebang message.
2015-03-07 22:37:49 -08:00
Vidar Holen
0d74140650
Multiple wrong assignment warning fixes
2015-03-07 20:15:04 -08:00
Vidar Holen
955ad60823
Fixed parser errors not being excluded by -e
2015-03-01 13:44:57 -08:00
Vidar Holen
2573332d77
Fixed edge cases for braced reference extractor.
2015-03-01 13:44:18 -08:00
Vidar Holen
00c470f323
Improve SC2143 error message
2015-03-01 12:20:37 -08:00
Vidar Holen
63188282e9
Add warning for vars that are referenced but not assigned.
2015-02-28 18:43:22 -08:00
Vidar Holen
61b4b65184
Warn about obviously bad return values, like -1 or "foo"
2015-02-14 12:03:38 -08:00
Vidar Holen
39b2bf4378
Don't warn about modifying $@ or $IFS in a subshell
2015-02-14 10:43:49 -08:00
Vidar Holen
2fe117728d
Count [[ -v foo ]] (and -R) as a variable reference
2015-02-13 20:10:18 -08:00
Vidar Holen
33c78b7c95
Track variables created through coproc.
2015-01-27 10:11:17 -08:00
Vidar Holen
a485482979
Add support for coproc
2015-01-26 22:21:04 -08:00
Vidar Holen
895d83afc5
s/deprecated/legacy/ for backtick warnings.
2015-01-25 12:27:49 -08:00
Vidar Holen
39bc011757
Rewrote catastrophic rm detection, now simpler and more robust.
2015-01-25 12:18:06 -08:00
Vidar Holen
c9aa133282
Fix pattern matching error in z=$(echo)
2015-01-02 18:06:10 -08:00
Vidar Holen
7b70500d41
Suppress SC2140 if the user just prefers quoting single items at a time.
2014-12-23 19:47:55 -08:00
Vidar Holen
8bed447411
Warn when trying to find -exec "shell command" \;
2014-11-22 12:16:30 -08:00
Vidar Holen
22710bf4d8
Fixed $! counting as a positional parameter reference.
2014-11-22 11:21:54 -08:00
Vidar Holen
a354685ab1
Warn about redirecting to globs in sh
2014-11-22 10:50:38 -08:00
Veres Lajos
97f3834852
typo fixes - https://github.com/vlajos/misspell_fixer
2014-11-04 21:55:42 +00:00
Vidar Holen
0369f43bac
Fixed 2148 to not trigger if a shell is specified with `-s`.
2014-11-01 13:51:19 -07:00
Vidar Holen
eb2eae2888
Don't warn about ${args[@]} when nested in other ${}
2014-11-01 12:44:27 -07:00
Vidar Holen
30c0c1f27d
Allow export "foo"="bar" in 2140
2014-11-01 12:20:10 -07:00
Vidar Holen
bff5d11566
Warn about `` in ''
2014-11-01 12:17:12 -07:00
Vidar Holen
eccb9f3f71
Added -or and -print0 to SC2146
2014-11-01 12:07:09 -07:00
Vidar Holen
2814572116
cat "$@" is not UUOC
2014-10-18 19:59:13 -07:00
Vidar Holen
90bafb9aba
Fixed bug where (($b)) counted as a positional reference
2014-10-18 19:51:13 -07:00
Vidar Holen
39805ab200
Don't warn about unpassed parameters in functions using 'set ..'.
2014-10-12 17:10:46 -07:00
Vidar Holen
1a0e208cc3
Consider find -exec when warning about vars in single quotes.
2014-10-12 14:00:17 -07:00
Vidar Holen
b05c12223f
Don't trigger SC2004 for (( $$ ))
2014-09-23 10:27:26 -07:00
Vidar Holen
38ead0385b
Fixed quoting warnings for variables in $".."
2014-09-23 10:18:28 -07:00
Vidar Holen
40ce949a56
Only warn once per unused variable name.
2014-09-07 12:55:08 -07:00
Vidar Holen
9f3802138f
Prevent overlap of 2116 and 2005 in foo $(echo $(bar))
2014-09-04 08:41:09 -07:00
Vidar Holen
2f3533fff6
Improve warnings for $ in (()). Also improves array subscripts.
2014-08-16 17:08:57 -07:00
Vidar Holen
f9c346cfd7
Ignore SC2033 when passing quoted function names.
2014-08-16 10:45:46 -07:00
Vidar Holen
8494509150
Warn about missing shebangs.
2014-08-09 17:32:42 -07:00
Vidar Holen
dbadca9f61
Check PS1/PROMPT_COMMAND/trap for simple variable references
2014-07-27 09:51:48 -07:00
Vidar Holen
0347ce1b7a
Warn about quoted ~ in PATH
2014-07-26 13:14:28 -07:00
Vidar Holen
7fbe66e1c6
Warn about ineffectual quotes in a="/foo/'bar baz'"; $a
2014-07-26 12:15:54 -07:00
Vidar Holen
64cc7c691a
Warn about precedence in find -name -o -name -exec.
2014-06-22 14:16:24 -07:00
Vidar Holen
b9784cbcc0
Parse let arguments as arithmetic expressions.
2014-06-22 13:23:44 -07:00
Vidar Holen
1a3f6aadaf
Support indices in array declarations
2014-06-22 10:35:45 -07:00
Vidar Holen
b035331d4a
Fixed failing test
2014-06-10 00:33:54 -07:00
Vidar Holen
aac7d76047
Don't warn when using find -print0 | xargs --null
2014-06-07 22:41:37 -07:00
Vidar Holen
fc421adb45
Reworked arithmetics to allow composite terms
2014-06-07 22:09:34 -07:00
Vidar Holen
3a944de606
Warn when concatening strings and arrays.
2014-06-07 13:47:40 -07:00
Vidar Holen
3dd592a02a
Support ;& and ;;& in case statements
2014-06-07 12:23:42 -07:00
Rodrigo Setti
5dac723593
Collection of HLint fixes
...
http://community.haskell.org/~ndm/hlint/
2014-05-31 22:20:49 +00:00
Vidar Holen
726a4e5848
Merge branch 'cabal-version' of https://github.com/rodrigosetti/shellcheck into rodrigosetti-cabal-version
...
Conflicts:
ShellCheck/Analytics.hs
ShellCheck/Data.hs
2014-05-31 09:55:07 -07:00
Rodrigo Setti
0a9ed917e7
Test Suite in Cabal (cabal test)
...
Please run using "cabal test --show-details=streaming", there's a known
issue about this that was fixed in the latest version of cabal:
https://github.com/haskell/cabal/issues/1810
2014-05-31 01:30:23 +00:00
Vidar Holen
133c779701
Also check nested ifs for ssh/ffmpeg in read loops
2014-05-29 20:55:38 -07:00
Vidar Holen
d830a36bc8
Check for globs in test, e.g. [[ -e file* ]]
2014-05-25 12:04:18 -07:00
Vidar Holen
1af23fd131
Fix SC2051 to only warn about 1..$n and not 1,$n
2014-05-25 11:41:24 -07:00
Vidar Holen
d21b3362b2
Don't warn about splitting in select statements
2014-05-17 12:06:04 -07:00
Vidar Holen
6cd454e88b
Suggest grep -q instead of [ "$(.. | grep)" ]
2014-05-17 10:56:36 -07:00
Vidar Holen
0b5f6b9762
Warn about aliases referencing $1/$*/$@
2014-05-17 09:26:53 -07:00
Vidar Holen
3824e9cfc2
Fixed not recognizing --f=* as option in checkGrepRe
2014-05-15 09:14:57 -07:00
Vidar Holen
c4181d45d2
Warn about suspicious IFS, such as IFS="\n"
2014-05-10 15:37:02 -07:00
Vidar Holen
e6d81ca7b7
Warn about using numerical test operators with strings
2014-05-10 12:37:02 -07:00
Vidar Holen
deab146fab
Don't warn about &&+|| when used with return
2014-05-09 18:08:55 -07:00
Vidar Holen
f9aeabc245
Improved error messages for SC2044/SC2045
2014-05-08 19:38:40 -07:00
Vidar Holen
558d8ffc6c
Warn about suspiciously unquoted literal parts like "var="value""
2014-05-07 21:47:27 -07:00
Vidar Holen
e96c4c3ffa
Warn about aliases that expand at define time
2014-05-07 20:14:21 -07:00
Vidar Holen
033ce6d941
Allow zsh =(..) process substitution
2014-05-02 20:36:38 -07:00
Vidar Holen
6ad3f557fe
Don't warn about sed '$s/foo/bar/'
2014-04-19 12:29:49 -07:00