ShellCheck v0.5.0 Release Notes

Release Date: 2018-05-31 // almost 6 years ago
  • โž• Added

    • โœ… SC2233/SC2234/SC2235: Suggest removing or replacing (..) around tests
    • SC2232: Warn about invalid arguments to sudo
    • SC2231: Suggest quoting expansions in for loop globs
    • SC2229: Warn about 'read $var'
    • SC2227: Warn about redirections in the middle of 'find' commands
    • SC2224/SC2225/SC2226: Warn when using mv/cp/ln without a destination
    • โš  SC2223: Quote warning specific to : ${var=value}
    • SC1131: Warn when using elseif or elsif
    • SC1128: Warn about blanks/comments before shebang
    • ๐Ÿ’… SC1127: Warn about C-style comments

    ๐Ÿ›  Fixed

    • Annotations intended for a command's here documents now work
    • ๐Ÿ“œ Escaped characters inside groups in =~ regexes now parse
    • Associative arrays are now respected in arithmetic contexts
    • SC1087 about $var[@] now correctly triggers on any index
    • Bad expansions in here documents are no longer ignored
    • ๐Ÿšš FD move operations like {fd}>1- now parse correctly

    ๐Ÿ”„ Changed

    • ๐Ÿ“„ Here docs are now terminated as per spec, rather than by presumed intent
    • ๐Ÿ“œ SC1073: 'else if' is now parsed correctly and not like 'elif'
    • SC2163: 'export $name' can now be silenced with 'export ${name?}'
    • ๐Ÿ–จ SC2183: Now warns when printf arg count is not a multiple of format count