Ng Zhi An
a8d88dfe98
Fix calculation of changed lines
2018-12-17 00:20:50 -08:00
Ng Zhi An
7d2c519d64
Remove spurious new line in fix message
2018-12-17 00:20:50 -08:00
Ng Zhi An
3403f8d75b
Fix bug in overlap check
2018-12-17 00:20:50 -08:00
Ng Zhi An
408a3b99d8
Remove overlaps before applying replacements
2018-12-17 00:20:50 -08:00
Ng Zhi An
bc111141f8
Move fix application logic to separate module
2018-12-17 00:20:50 -08:00
Ng Zhi An
3471ad45b1
Smarter sorting and application of fix to handle multiple replacements
2018-12-17 00:20:50 -08:00
Ng Zhi An
d5ba41035b
Add method to apply a multi-line replacement
2018-12-16 21:53:48 -08:00
Vidar Holen
eb588f62f6
Enable autofix support. It's still preliminary.
2018-12-09 15:01:08 -08:00
Vidar Holen
bcd13614eb
Improve Fix memory usage
2018-12-09 15:01:08 -08:00
Vidar Holen
a8376a09a9
Minor renaming and output fixes
2018-12-09 15:01:08 -08:00
Ng Zhi An
5ed89d2241
Change definition of Replacement, add ToJSON instance for it
2018-12-09 15:01:08 -08:00
Ng Zhi An
4a87d2a3de
Expose token positions in params, use that to construct fixes
2018-12-09 15:01:08 -08:00
Ng Zhi An
41613babd9
Prototype fix
2018-12-09 15:01:08 -08:00
Vidar Holen
66b5f13c6f
Make wiki links fit in 80 columns
2018-12-02 19:08:06 -08:00
Vidar Holen
1b207b3d43
Preemptively fix possible '-- |' breakage
2018-11-26 20:43:15 -08:00
Vidar Holen
cb76951ad2
Add warnings for 'exit' similar to 'return' ( fixes #1388 )
2018-11-24 23:05:40 -08:00
Vidar Holen
2827b35696
SC2240: Warn about `. script args..` in sh/dash ( fixes #1373 )
2018-11-07 18:04:18 -08:00
Vidar Holen
620c9c2023
Also warn about glob matching with [ a != b* ] ( fixes #1374 )
2018-11-01 04:47:44 -07:00
Vidar Holen
df0a0d41fa
Add SC1133: Warn when a line starts with |/||/&& ( fixes #1359 )
2018-10-21 17:46:46 -07:00
Vidar Holen
b815242506
Improve regex parsing ( fixes #1367 )
2018-10-21 15:25:35 -07:00
Vidar Holen
07b5aa2971
Add SC2239: shebang is not absolute path.
2018-10-17 20:38:21 -07:00
Vidar Holen
f7b82658f4
Add $# to list of variables not containing spaces ( fixes #1362 )
2018-10-17 09:00:52 -07:00
Vidar Holen
e0e46e979a
Add wiki links to output, and a -W controlling it. ( Fixes #920 )
2018-10-10 21:53:43 -07:00
Peter Simons
5f1c969546
getParentTree: avoid pattern matching in do notation
...
Pattern matching in "do" requires a MonadFail context, which we don't have in
pure code. Instead, we'll use "case-of" to bind the part of the state that
we're interested in.
2018-09-27 17:30:41 +02:00
Vidar Holen
dadfdfde97
Don't suggest subshells for cd ..; foo; cd..
2018-09-21 21:08:41 -07:00
Vidar Holen
3e2cb26119
Add SC2238 about redirections to command names
2018-09-17 17:46:49 -07:00
Vidar Holen
a06d7c1841
Merge pull request #1324 from ngzhian/679
...
Understand array variable declaration in read (fixes #679 )
2018-09-15 12:33:58 -07:00
Michael Diamond
6db392511b
Expand "rhs"; this abbreviation seems needlessly obfuscating.
2018-09-12 14:22:40 -07:00
Ng Zhi An
07f04e13ce
Understand array variable declaration in read ( fixes #679 fixes #1272 )
...
It used to only treat all trailing variables in read as varaible
declarings, but an array variable can be declared in other positions:
read -a foo -r
foo is a declared variable, and multiple such variables can be declared.
2018-09-08 09:19:02 -07:00
Vidar Holen
f0a2e688c4
Don't warn about LINENO since it's now POSIX. Fixes #644
2018-09-03 12:36:25 -07:00
Vidar Holen
3d03b0ab3b
Suggest -z/-n instead of ! -n/-z ( fixes #1326 ).
2018-08-28 20:15:54 -07:00
Vidar Holen
488d6dcb41
Improve find leading flag detection ( fixes #1312 )
2018-08-26 18:18:57 -07:00
Vidar Holen
d02a9bbcce
Account for &&/||/{}/() in SC2233&co ( fixes #1320 ).
2018-08-26 17:36:10 -07:00
Vidar Holen
932e2b3538
Merge branch 'opqaque-interface' of https://github.com/ngzhian/shellcheck into ngzhian-opqaque-interface
2018-08-18 20:32:27 -07:00
Martin Schwenke
3fe11927bb
SQUASH: --severity specifies *minimum* severity to be handled
...
Signed-off-by: Martin Schwenke <martin@meltin.net>
2018-08-18 20:05:56 -07:00
Martin Schwenke
b16da4b242
Add command-line option -S/--severity
...
Specifies the maximum severity of errors to handle. For example,
specifying "-S warning" means that errors of severity "info" and
"style" are ignored.
Signed-off-by: Martin Schwenke <martin@meltin.net>
2018-08-18 20:05:56 -07:00
Ng Zhi An
c8e0797350
Make data in Interface more opaque
2018-08-17 22:10:18 -07:00
Vidar Holen
15aaacf715
Add test for parsing bitwise not
2018-08-15 18:30:10 -07:00
Vidar Holen
5ef4229f61
Modernize SC2028 echo escape test
2018-08-07 19:31:28 -07:00
Ng Zhi An
8be76b13b9
Use regex to match special flags for printf
...
Fixes #1310
2018-08-05 22:45:24 -07:00
Vidar Holen
581be5878b
Suggest 'cat' when piping/redirecting to echo ( fixes #1292 )
2018-07-28 17:38:53 -07:00
Vidar Holen
0f835a5a2c
Don't trigger SC2222 for fallthrough case branches ( fixes #1044 )
2018-07-28 12:30:06 -07:00
Vidar Holen
4b0a35d4c9
Merge pull request #1302 from pjeby/fix949
...
Fix #949 (failing on @ in function names)
2018-07-26 21:07:48 -07:00
Vidar Holen
51e0c1be62
Use three instead of two dots in 2006 message
2018-07-26 19:59:42 -07:00
Vidar Holen
d8a32da07f
Retire SC1117 (unknown quoted escapes) due to noise
2018-07-26 19:23:53 -07:00
PJ Eby
0d1a34a291
Fix #949 (failing on @ in function names)
...
'@' was previously mentioned in 5005dc0fa1
as a
character needed to fix #909 , but was not included
in the actual change at that time.
2018-07-23 16:18:35 -04:00
Vidar Holen
5005dc0fa1
Allow directive/-s to override shebang blacklist ( fixes #974 )
2018-07-22 12:43:51 -07:00
Vidar Holen
b8ee7436e5
Add a test for 03ce3b15
2018-07-21 13:51:21 -07:00
Vidar Holen
da8e450386
Realign =s
2018-07-21 13:51:08 -07:00
Ng Zhi An
03ce3b15b6
Fix false positive when indexing into array in cond
...
Fixes #1268
2018-07-18 22:31:58 -07:00