{"full_name":"koalaman/shellcheck","owner":"koalaman","name":"shellcheck","url":"https://github.com/koalaman/shellcheck","description":"ShellCheck, a static analysis tool for shell scripts","homepage":"https://www.shellcheck.net","topics":[],"language":"Haskell","license":"GPL-3.0","avatar":"https://avatars.githubusercontent.com/u/2818758?u=40d36e49d938fda80abd46d6347b9bace1f73dd4&v=4","created_at":"2012-11-17T03:15:11Z","pushed_at":"2026-11-09T01:29:53Z","metrics":{"stars":40314,"forks":1973,"watchers":404,"issues":3038,"prs":512,"releases":30,"issues_open":null,"issues_closed":null,"prs_open":null,"prs_closed":null,"prs_merged":null,"discussions":0},"growth":{"day":{"stars":11,"forks":1,"base_day":"2026-11-09"}},"history":{"dates":["2026-11-09","2026-11-10"],"stars":[40303,40314],"forks":[1972,1973],"watchers":[404,404],"issues_open":[null,null],"prs_open":[null,null]},"boards":{},"same_owner":[],"issues":[{"number":809,"title":"Support zsh","comments":74,"created_at":"2016-12-25T16:42:38Z"},{"number":380,"title":"Sometimes too overzealous in regards to unquoted variables","comments":58,"created_at":"2015-05-20T12:36:59Z"},{"number":143,"title":"Check directories recursively","comments":40,"created_at":"2014-04-24T13:34:33Z"},{"number":356,"title":"Support for pre-declared \"external\" globals for sourced scripts to avoid SC2154 warnings.","comments":26,"created_at":"2015-04-23T20:14:25Z"},{"number":1602,"title":"Kernel requirement","comments":22,"created_at":"2019-06-07T09:51:39Z"},{"number":2011,"title":"Add exclude/include rules for files and directories (with glob patterns)","comments":20,"created_at":"2020-07-09T07:35:12Z"},{"number":1411,"title":"shellcheck doesn't warn against misspelled function names","comments":20,"created_at":"2018-12-11T05:28:41Z"},{"number":1210,"title":"Add support for #!/usr/bin/env nix-shell","comments":20,"created_at":"2018-05-09T13:32:57Z"}],"discussions":[],"latest_release":{"name":"Stable version v0.11.0","tag":"v0.11.0","published_at":"2025-08-04T00:27:19Z","body":"This release is dedicated to Satisfactory, even though my giant\r\n3D ball of rat's nest conveyor belt spaghetti is anything but.\r\n\r\n  CHANGELOG\r\n\r\n  ## v0.11.0 - 2025-08-03\r\n  ### Added\r\n  - SC2327/SC2328: Warn about capturing the output of redirected commands.\r\n  - SC2329: Warn when (non-escaping) functions are never invoked.\r\n  - SC2330: Warn about unsupported glob matches with [[ .. ]] in BusyBox.\r\n  - SC2331: Suggest using standard -e instead of unary -a in tests.\r\n  - SC2332: Warn about `[ ! -o opt ]` being unconditionally true in Bash.\r\n  - SC3062: Warn about bashism `[ -o opt ]`.\r\n  - Optional `avoid-negated-conditions`: suggest replacing `[ ! a -eq b ]`\r\n    with `[ a -ne b ]`, and similar for -ge/-lt/=/!=/etc (SC2335).\r\n  - Precompiled binaries for Linux riscv64 (linux.riscv64)\r\n\r\n  ### Changed\r\n  - SC2002 about Useless Use Of Cat is now disabled by default. It can be\r\n    re-enabled with `--enable=useless-use-of-cat` or equivalent directive.\r\n  - SC2236/SC2237 about replacing `[ ! -n .. ]` with `[ -z ]` and vice versa\r\n    is now optional under `avoid-negated-conditions`.\r\n  - SC2015 about `A && B || C` no longer triggers when B is a test command.\r\n  - SC3012: Do not warn about `\\<` and `\\>` in test/[] as specified in POSIX.1-2024\r\n  - Diff output now uses / as path separator on Windows\r\n\r\n  ### Fixed\r\n  - SC2218 about function use-before-define is now more accurate.\r\n  - SC2317 about unreachable commands is now less spammy for nested ones.\r\n  - SC2292, optional suggestion for [[ ]], now triggers for Busybox.\r\n  - Updates for Bash 5.3, including `${| cmd; }` and `source -p`\r\n\r\n  ### Removed\r\n  - SC3013: removed since the operators `-ot/-nt/-ef` are specified in POSIX.1-2024"},"readme":true,"readme_zh":false,"news":[],"stale":false,"snapshot_at":"2026-11-10T09:35:25Z","history_start":"2026-09-06"}