Skip to content
  • Philip Withnall's avatar
    build: Add a shell script linter to the .arcconfig · 07481691
    Philip Withnall authored
    This will use ShellCheck to check for common shell scripting errors in
    the project. If any errors or oddness is detected, it will give a
    warning (which may be ignored).
    
    http://www.shellcheck.net/
    
    Shell scripting problems may be permanently ignored by adding a comment
    line above the offending line, like:
       # shellcheck disable=SC2016
       PKG_NAME=$(autoconf --trace 'AC_INIT:$1' configure.ac)
    
    The linter is currently implemented using Arcanist’s script-and-regex
    linter, which means it is quite limited. All messages are outputted as
    warnings, and it has to invoke file beforehand to work out whether a
    file is actually a shell script. The return value of the command should
    always be 0 otherwise script-and-regex will abort; hence the `|| true`.
    
    https://secure.phabricator.com/book/phabricator/article/arcanist_lint_script_and_regex/
    
    In particular, the script-and-regex configuration needs to use a hack in
    the regex to set the ‘warning’ regex capture grou...
    07481691