Commit Graph

82 Commits

Author SHA1 Message Date
Vidar Holen 6a44a19f17 Only read --rcfile once, and skip search if unavailable 2024-02-03 13:34:49 -08:00
Georg Pfuetzenreuter 1bce426fcf
Implement rcfile option
This introduces the "--rcfile" argument which allows a specific
shellcheckrc file to be passed.
If specified and the given file exists, the default locations
will not be searched and the specified file will be used.

Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
2024-01-21 02:59:47 +01:00
Joseph C. Sible dab77b2c8d Implement parseEnum in terms of lookup 2023-12-21 13:48:47 -05:00
Vidar Holen 74282b0a93 Recognize 'busybox' in --shell and directives. Add to doc texts. 2023-12-10 17:05:29 -08:00
Vidar Holen 90d3172dfe Add a newSystemInterface to go with the rest of the new* constructors 2023-08-13 16:35:28 -07:00
Vidar Holen 2a16a4e8c1 Add missing imports for later GHC versions 2022-12-10 15:17:08 -08:00
Vidar Holen 3ce310e939 Plug space leaks when processing multiple files 2022-07-27 14:42:57 -07:00
Vidar Holen 4e703e5c61 Allow specifying external-sources=true in shellcheckrc (fixes #1818) 2021-09-15 18:02:37 -07:00
Joseph C. Sible 2cfd1f2714 Fuse maps 2020-12-28 18:13:34 -05:00
Joseph C. Sible bd116f252b Use findM instead of filterM
Using filterM makes us run the monadic predicate on every list element.
Use findM instead so that we can stop once we find a matching one.
2020-02-08 22:55:45 -05:00
Vidar Holen 4d56852b9f Allow SCRIPTDIR in source directives (fixes #1617) 2019-07-03 19:49:47 -07:00
Vidar Holen b1aeee564c Add a Diff output format 2019-06-23 20:02:01 -07:00
Vidar Holen 1297ef46d7 Add JSON1 as a separate format, wrap result in an object 2019-06-02 10:28:37 -07:00
Vidar Holen 52a9d90e1a
Merge pull request #1580 from virgilwashere/copyright
Update Copyright to year 2019; README linting
2019-05-19 12:03:15 -07:00
Virgil ea05271fa3 📝 Update Copyright to year 2019 and Markdown linting
- [x] 📝 Update Copyright to year 2019

- [x] 📝 MD009/no-trailing-spaces: Trailing spaces [Expected: 0 or 2; Actual: 1]
- [x] 📝 MD034/no-bare-urls: Bare URL used

- [ ] 📝 ~MD004/ul-style: Unordered list style [Expected: dash; Actual: asterisk]~
- [ ] ~add missing TOC entries~
2019-05-14 20:12:34 +10:00
Benjamin Gordon 50af8aba29 Add json1 format that ignores tabs
The new json1 format works just like json except that it treats tabs as
single characters instead of 8-character tabstops.

The main use case is to allow editors to pass -fjson1 so that they can
consume the json output in a character-oriented way without breaking
backwards compatibility.

Also addresses #1048.
2019-05-13 10:55:16 -06:00
Vidar Holen 5fb1da6814 Replace verbose checks with optional checks 2019-05-12 19:14:04 -07:00
Vidar Holen d9e419d60f Add support for source-path directives (fixes #1577) 2019-05-09 19:54:41 -07:00
Vidar Holen c6c12f52bd Expand root paths into source paths 2019-04-24 18:51:24 -07:00
Pontus Andersson af46758ff1 Add option to look for sources in alternate root paths
Add a new optional flag "-r|--root ROOTPATHS", where ROOTPATHS is a
colon separated list of paths, that will look for external sources in
alternate roots.

This is particular useful when the run-time environment does not fully
match the development environment. The #shellcheck source=file directive
is useful, but has its limitations in certain scenarios. Also, in many
cases the directive could be removed from scripts when the root flag is
used.

Script example.bash:
  #!/bin/bash
  source /etc/foo/config

Example usage where etc/foo/config exists in skel/foo:
  # shellcheck -x -r skel/foo:skel/core example.bash
2019-04-22 17:54:42 +02:00
Vidar Holen 9652ccfdbd Add a verbose mode: `-S verbose` 2019-04-13 13:16:41 -07:00
Vidar Holen ed92fe501f Fix internal error for --format (fixes #1507) 2019-03-06 17:44:15 -08:00
Vidar Holen bbe5155e63 Use less modern APIs to support more GHC versions 2019-03-04 18:18:58 -08:00
Vidar Holen 581bcc3907 Add support for `.shellcheckrc` files 2019-03-03 18:57:13 -08:00
Vidar Holen a404efab65 Merge branch 'issue_837_opposite_of_exclude_option' of https://github.com/Gandalf-/shellcheck 2019-01-22 19:39:55 -08:00
Gandalf- a89403f09b Issue 1393 quiet flag
Issue https://github.com/koalaman/shellcheck/issues/1393

Provide '-q' and '--quiet' flags that suppress all normal output, but keep the
return status, similar to 'grep -q'.
2019-01-21 18:25:41 -08:00
Gandalf- 59c47f2266 Issue 837 flag to include only certain warnings
Issue https://github.com/koalaman/shellcheck/issues/837

Add an --include option, which creates a whitelist of warnings to report
on, the opposite of --exclude.
2019-01-20 16:42:27 -08:00
Vidar Holen 97cb753d21 Recognize --help (fixes #1441) 2019-01-05 11:37:05 -08:00
Vidar Holen e0e46e979a Add wiki links to output, and a -W controlling it. (Fixes #920) 2018-10-10 21:53:43 -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
Vidar Holen 76b1482f64 Avoid using `error` for option parsing failure 2018-08-18 20:06:44 -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
Ng Zhi An 963b39b002 Allow trailing comma in exclude flag 2018-06-13 22:31:51 -07:00
Vanessa McHale cf39adff75 bump to latest ghc 2018-04-02 11:44:18 -05:00
Mike Frysinger 161801a86e convert http:// URIs to https://
Also update the ShellCheck homepage to the new dedicated domain.
2017-12-14 01:06:43 -05:00
Vidar Holen 8dd40efb44 Add support for -a: emit for sourced files. 2017-08-13 19:34:45 -07:00
Vidar Holen 73d06c4f47 Autogenerate list of formats for --help 2017-08-06 15:48:59 -07:00
Daniel Hahler 226bc4409c Use spaces with list of dialects in --help for consistency 2017-08-06 16:25:31 +02:00
Daniel Hahler 4a6acb6ff0 List available output formats in --help output 2017-08-06 16:24:43 +02:00
Vidar Holen 22c86256ac Decode UTF-8 sequences over 0x10FFFF as latin1 2017-03-10 10:11:05 -08:00
Vidar Holen 46fb91b44d Manually decode input files as lenient UTF-8. 2017-01-22 15:24:21 -08:00
Vidar Holen b4390414ef Fix remaining FIXME for tty error color output. 2015-12-06 12:48:53 -08:00
Vidar Holen 23496e93b0 Fix compiler warning about missing field 2015-12-05 13:08:02 -08:00
David Haguenauer 63ad3f99ad Shorten long help line 2015-12-04 11:40:52 -05:00
David Haguenauer 0044c3dd6e Make use of --color with no argument equivalent to --color=always 2015-12-04 10:57:54 -05:00
David Haguenauer a3d4101d6c Add initial support for --color 2015-12-03 17:55:56 -05:00
Vidar Holen f77821625c Add dash as a first class supported shell. 2015-10-13 11:37:50 -07:00
Vidar Holen 3b36c2c820 Document exit codes in man page. 2015-10-10 19:19:38 -07:00