Commit Graph

1211 Commits

Author SHA1 Message Date
Vidar Holen c6c615217b Allow specifying that flags should not be checked for support.
This was motivated by the fact that `-a` was missing from Dash's
long list.
2019-01-15 19:50:23 -08:00
Vidar Holen c1adc588fb
Merge pull request #1460 from contivero/umask-flags
Check umask flags under dash & POSIX sh (fixes #1459)
2019-01-15 19:18:21 -08:00
Cristian Adrián Ontivero 3107a1bae0
Check umask flags under dash & POSIX sh (fixes #1459) 2019-01-15 08:24:23 +01:00
Vidar Holen 73859039dd Merge branch 'cd-flags' of https://github.com/contivero/shellcheck 2019-01-14 17:47:25 -08:00
Cristian Adrián Ontivero c3a56659f4
Check cd flags under dash & POSIX sh (fixes #1457) 2019-01-14 08:18:17 +01:00
Vidar Holen e0a4241baa Warn if a shebang's interpreter ends in / (fixes #373) 2019-01-13 17:32:25 -08:00
Vidar Holen 1835ebd3a0 SC2245: Warn that Ksh [ -f * ] only applies to first (Fixes #1452) 2019-01-13 16:41:08 -08:00
Vidar Holen ec6f9e4d49
Merge pull request #1449 from contivero/readonly-flags
Check readonly flags in dash/POSIX sh (fixes #1448)
2019-01-10 18:56:40 -08:00
Cristian Adrián Ontivero 3760e7945f
Check readonly flags in dash/POSIX sh (fixes #1448) 2019-01-10 11:05:37 +01:00
Vidar Holen fcdd6055df Add new replacement format to the JSON 2019-01-09 18:35:36 -08:00
Vidar Holen fd2beaadfa Make Fixer responsible for realigning tab stops 2019-01-09 18:08:59 -08:00
Vidar Holen df7f00eaed Remove duplicate `pathTo` and unused `replaceMultiLines` 2019-01-09 17:51:43 -08:00
Vidar Holen e45b679d58
Merge pull request #1445 from Gandalf-/issue_1318_single_comma_array
Issue 1318 single comma array delimiter
2019-01-09 17:42:35 -08:00
Gandalf- 263401cfcb Issue 1318 single comma array delimiter
Issue https://github.com/koalaman/shellcheck/issues/1318

The case in which a single comma, with no spaces, used in an array
assignment is now caught for SC2054.
2019-01-08 19:56:34 -08:00
Vidar Holen 0e21f91c07
Merge pull request #1433 from contivero/fix-export-p
Fix 'export -p' being undefined under POSIX sh
2019-01-08 19:33:03 -08:00
Vidar Holen 4ecdc10599 Merge branch 'shellcheck_sed_herestring_130' of https://github.com/Gandalf-/shellcheck 2019-01-08 19:19:44 -08:00
Vidar Holen baa4d2e555 Let checkGrepRe only parse flags once 2019-01-08 19:06:00 -08:00
Vidar Holen 26c55750cf Merge branch 'issue_1404_grep_globs' of https://github.com/Gandalf-/shellcheck 2019-01-08 18:53:51 -08:00
Vidar Holen 9c42d43e90 Merge branch 'sc2093-exec-in-loops' of https://github.com/jabberabbe/shellcheck 2019-01-08 18:31:59 -08:00
Vidar Holen 434b904746 Process replacements according to AST depth (fixes #1431) 2019-01-08 18:25:37 -08:00
Tito Sacchi ab2b0e11a3 Fix #1340 (SC2093 about removing "exec" should trigger in loops) 2019-01-08 20:20:26 +01:00
Vidar Holen 394f4d6505 Make quicktest interpret test/shellcheck.hs directly 2019-01-08 01:01:31 -08:00
Gandalf- 4a2b2c7396 Issue 1404 grep glob false positives
https://github.com/koalaman/shellcheck/issues/1404

Some grep flags support globs; these are now all checked prevent false
positives.
2019-01-06 17:45:29 -08:00
Vidar Holen 97cb753d21 Recognize --help (fixes #1441) 2019-01-05 11:37:05 -08:00
Vidar Holen 98266a1878 Merge branch 'issue_1039_case_pattern_context' of https://github.com/Gandalf-/shellcheck 2019-01-01 16:50:59 -08:00
Vidar Holen 6138206ce5 Merge branch 'autofix-tab' of https://github.com/ngzhian/shellcheck 2019-01-01 13:06:20 -08:00
Gandalf- 6debd59f02 Add context to case pattern warnings
https://github.com/koalaman/shellcheck/issues/1039
2018-12-31 18:52:30 -08:00
Gandalf- 9425654a42 Expand echo + sed style warning to herestrings
https://github.com/koalaman/shellcheck/issues/130
2018-12-31 15:33:37 -08:00
Ng Zhi An 461be74976 Realign virtual tabs when applying fix
Fix an off-by-one error, in the case that is commented `should never happen`.
It happens when the end of a range is the at the end of a line.
In that case we should update the real column count (probably just by +1)
instead of returning it.

I modified makeNonVirtual to use a helper, realign, that works on
Ranged. That way we can share the code to realign a PositionedComment
and also a Replacement.

Fixes #1420
2018-12-29 17:16:29 +08:00
Vidar Holen 278ce56650 Merge branch 'ngzhian-1416-encourage-n' 2018-12-28 19:02:40 -08:00
Vidar Holen 73822c3588 Allow SC2243 and SC2244 to trigger with quotes, add fix 2018-12-28 19:02:06 -08:00
Cristian Adrián Ontivero 29dedbdc9c
Fix 'export -p' being undefined under POSIX sh
Fixes #1432
2018-12-28 21:23:49 -03:00
Vidar Holen f6bc009331 Merge branch '1416-encourage-n' of https://github.com/ngzhian/shellcheck into ngzhian-1416-encourage-n 2018-12-28 15:56:15 -08:00
Vidar Holen ef811995fa
Merge pull request #1430 from contivero/posix-sh-jobs-flags
Check jobs flags in dash/POSIX sh (fixes #1429)
2018-12-28 15:53:17 -08:00
Cristian Adrián Ontivero 73a41cdd2f
Check jobs flags in dash/POSIX sh (fixes #1429) 2018-12-28 10:04:19 -03:00
Vidar Holen 1b4c486748
Merge pull request #1426 from ngzhian/dash-1406
Update supported ulimit flags for dash
2018-12-27 12:19:30 -08:00
Ng Zhi An 95a8cf93c9 Add check for ambiguous nullary test
Given an input like `if [[ $(a) ]]; then ...`, this is a implicit `-n` test,
so it works like `if [[ -n $(a) ]]; then ...`. Users might confuse this for
a check for the exit code of the command a, which should be tested with:

    if a; then
        ...

We warn the user to be more explicity and specifity the `-n`.

Fixes #1416
2018-12-25 17:14:21 +08:00
Ng Zhi An bd04af0769 Update supported ulimit flags for dash
Values are retrieved from https://linux.die.net/man/1/dash, search for
ulimit.

Fixes #1406
2018-12-25 09:33:58 +08:00
Vidar Holen 9acc8fcb53 Fix semigroup incompatibility 2018-12-23 11:08:48 -08:00
Vidar Holen 897f019353 Move Ranged definition to Fixer to avoid overpromising 2018-12-22 10:04:00 -08:00
Ng Zhi An 0636e7023c Fix applying multiple fixes per line
Fixes #1421
2018-12-21 14:34:03 +08:00
Vidar Holen 08ca1ee6e9 Remove unnecessary Regex constraint 2018-12-17 20:15:39 -08:00
Vidar Holen eb3e6fe8e1 Add ShellCheck.Fixer to the cabal file 2018-12-17 20:14:49 -08:00
Vidar Holen ecd61bfc68
Merge pull request #1376 from ngzhian/autofix
Add method to apply a multi-line replacement
2018-12-17 17:24:59 -08:00
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