devel/shellcheck: update to 0.9.0
WANTLIB tweak and OK on slightly different version kn@ (in the diff I sent to ports@, I botched shellcheck.1.md's checksum)
This commit is contained in:
parent
5f201fed31
commit
8c24bdff9c
@ -1,9 +1,8 @@
|
||||
COMMENT = shell script analysis tool
|
||||
|
||||
MODCABAL_STEM = ShellCheck
|
||||
MODCABAL_VERSION = 0.8.0
|
||||
MODCABAL_VERSION = 0.9.0
|
||||
MODCABAL_EXECUTABLES = shellcheck
|
||||
REVISION = 1
|
||||
PKGNAME = ${DISTNAME:L}
|
||||
CATEGORIES = devel
|
||||
HOMEPAGE = https://www.shellcheck.net/
|
||||
@ -13,50 +12,53 @@ MAINTAINER = Caspar Schutijser <caspar@schutijser.com>
|
||||
# GPLv3
|
||||
PERMIT_PACKAGE = Yes
|
||||
|
||||
WANTLIB = c charset ffi gmp iconv m pthread util
|
||||
WANTLIB = c ffi gmp iconv m pthread util
|
||||
|
||||
# cabal-bundler --openbsd ShellCheck-0.8.0 --executable shellcheck
|
||||
# cabal-bundler --openbsd ShellCheck-0.9.0 --executable shellcheck
|
||||
MODULES = devel/cabal
|
||||
MODCABAL_MANIFEST = \
|
||||
Diff 0.4.1 0 \
|
||||
OneTuple 0.3.1 2 \
|
||||
OneTuple 0.3.1 3 \
|
||||
QuickCheck 2.14.2 0 \
|
||||
StateVar 1.2.2 0 \
|
||||
aeson 2.0.3.0 0 \
|
||||
assoc 1.0.2 2 \
|
||||
attoparsec 0.14.4 1 \
|
||||
base-compat 0.12.1 0 \
|
||||
base-compat-batteries 0.12.1 2 \
|
||||
base-orphans 0.8.6 0 \
|
||||
bifunctors 5.5.11 1 \
|
||||
aeson 2.1.1.0 0 \
|
||||
assoc 1.0.2 3 \
|
||||
attoparsec 0.14.4 2 \
|
||||
base-compat 0.12.2 0 \
|
||||
base-compat-batteries 0.12.2 0 \
|
||||
base-orphans 0.8.7 0 \
|
||||
bifunctors 5.5.14 0 \
|
||||
comonad 5.0.8 1 \
|
||||
contravariant 1.5.5 0 \
|
||||
data-fix 0.3.2 2 \
|
||||
data-fix 0.3.2 3 \
|
||||
distributive 0.6.2.1 1 \
|
||||
dlist 1.0 0 \
|
||||
hashable 1.4.0.2 0 \
|
||||
indexed-traversable 0.1.2 1 \
|
||||
indexed-traversable-instances 0.1.1 0 \
|
||||
integer-logarithms 1.0.3.1 2 \
|
||||
primitive 0.7.3.0 0 \
|
||||
random 1.2.1 0 \
|
||||
regex-base 0.94.0.2 0 \
|
||||
regex-tdfa 1.3.1.2 0 \
|
||||
scientific 0.3.7.0 2 \
|
||||
semialign 1.2.0.1 1 \
|
||||
fgl 5.8.0.0 0 \
|
||||
generically 0.1 0 \
|
||||
hashable 1.4.1.0 0 \
|
||||
indexed-traversable 0.1.2 2 \
|
||||
indexed-traversable-instances 0.1.1.1 0 \
|
||||
integer-logarithms 1.0.3.1 3 \
|
||||
primitive 0.7.4.0 0 \
|
||||
random 1.2.1.1 0 \
|
||||
regex-base 0.94.0.2 1 \
|
||||
regex-tdfa 1.3.2 0 \
|
||||
scientific 0.3.7.0 3 \
|
||||
semialign 1.2.0.1 3 \
|
||||
semigroupoids 5.3.7 0 \
|
||||
splitmix 0.1.0.4 0 \
|
||||
splitmix 0.1.0.4 1 \
|
||||
strict 0.4.0.1 4 \
|
||||
tagged 0.8.6.1 2 \
|
||||
text-short 0.1.5 0 \
|
||||
th-abstraction 0.4.3.0 0 \
|
||||
these 1.1.1.1 5 \
|
||||
time-compat 1.9.6.1 3 \
|
||||
transformers-compat 0.7.1 1 \
|
||||
unordered-containers 0.2.17.0 0 \
|
||||
uuid-types 1.0.5 2 \
|
||||
vector 0.12.3.1 1 \
|
||||
witherable 0.4.2 2
|
||||
tagged 0.8.6.1 3 \
|
||||
text-short 0.1.5 1 \
|
||||
th-abstraction 0.4.5.0 0 \
|
||||
these 1.1.1.1 6 \
|
||||
time-compat 1.9.6.1 4 \
|
||||
transformers-compat 0.7.2 0 \
|
||||
unordered-containers 0.2.19.1 1 \
|
||||
uuid-types 1.0.5 3 \
|
||||
vector 0.13.0.0 1 \
|
||||
vector-stream 0.1.0.0 1 \
|
||||
witherable 0.4.2 3
|
||||
|
||||
LIB_DEPENDS = converters/libiconv \
|
||||
devel/gmp \
|
||||
@ -68,7 +70,7 @@ NO_TEST = Yes
|
||||
# pkg_add pandoc; cd ${WRKSRC}; ./manpage; cp shellcheck.1 ${FILESDIR}/
|
||||
# (and update md5)
|
||||
post-patch:
|
||||
@[ `md5 < ${WRKSRC}/shellcheck.1.md` == bf7695ee3925f581ef0badd67b23d2f5 ] || \
|
||||
@[ `md5 < ${WRKSRC}/shellcheck.1.md` == f06c4a4f31f71dee0aa6b1890e469d5d ] || \
|
||||
(echo "*** manpage changed; regenerate ${FILESDIR}/shellcheck.1"; sleep 3)
|
||||
|
||||
post-install:
|
||||
|
@ -1,120 +1,130 @@
|
||||
SHA256 (hackage/Diff-0.4.1.tar.gz) = /V5Kqschm8uxSDT7hYDr4KrpBZWNCtdPUzjqKQs3JnA=
|
||||
SHA256 (hackage/OneTuple-0.3.1.tar.gz) = mIU2gtUvtMw3pFzRhvvXfPJWXT31FxrMTPAmQn4QPu8=
|
||||
SHA256 (hackage/OneTuple-0.3.1_2.cabal) = qEjAlsnSnoL/3TCpmYqikxy8yzobwTdTnYD2F00xYD4=
|
||||
SHA256 (hackage/OneTuple-0.3.1_3.cabal) = /DLLdER3vvpFClOOpJdcxSPwovFYXLWjbpk2o9GOmjw=
|
||||
SHA256 (hackage/QuickCheck-2.14.2.tar.gz) = 2HtshWlrYBF1J0Nh+mIheJRAHkAeFQw8XUATrFPNNvM=
|
||||
SHA256 (hackage/ShellCheck-0.8.0.tar.gz) = YggOilkXSxLs0tdTrz5rn+2Xfm9fcwHN4CelSu5VVBY=
|
||||
SHA256 (hackage/ShellCheck-0.9.0.tar.gz) = q77jtynVJalZsGQjpx/joX7Qe2IgvIQ5Te/+jNgTMxw=
|
||||
SHA256 (hackage/StateVar-1.2.2.tar.gz) = Xks52jlWVqWYJ7AoBQiq/ccDNXmLUOXW/VJZYCYlGCU=
|
||||
SHA256 (hackage/aeson-2.0.3.0.tar.gz) = GXYKK4R2T6PO5lxj3wyA1FSX4vDDuV1ObcIIO4YEsyU=
|
||||
SHA256 (hackage/aeson-2.1.1.0.tar.gz) = o66XjWfNhVSm3BHR5aTEYoDckLvFDzqHh/3SJ4Uktq0=
|
||||
SHA256 (hackage/assoc-1.0.2.tar.gz) = 2JiNxuhxjHo0VlFbdpyTNq7uxzDPhvxRdSR5af+PFE8=
|
||||
SHA256 (hackage/assoc-1.0.2_2.cabal) = 4NnR/rwXLiobIqrNJd9/kL5Vfc8S/4c1n0MSj4wZTZ4=
|
||||
SHA256 (hackage/assoc-1.0.2_3.cabal) = k7jUOqCB5CBRFqE5989pD2CJaBYdGev7I9iE0ZsIK1c=
|
||||
SHA256 (hackage/attoparsec-0.14.4.tar.gz) = PzN/5YYkVl3hJCb2B8I+YMewnIa04638gnyhiMmXnmw=
|
||||
SHA256 (hackage/attoparsec-0.14.4_1.cabal) = eVhL2tqLcwy1E4/KjDXHb773X8HR4B5rHYFaXumEMZE=
|
||||
SHA256 (hackage/base-compat-0.12.1.tar.gz) = +2g8tAQbiMqx0ISfcOvSazQsc0qe9vdSM8FgLVOgFf0=
|
||||
SHA256 (hackage/base-compat-batteries-0.12.1.tar.gz) = +Y883YIx7bSCZ0SQTWH3ZyubYoxwcsRWhNP38fVdg4s=
|
||||
SHA256 (hackage/base-compat-batteries-0.12.1_2.cabal) = 7oGddXCy/aEBLSnblFoXeMOI74wMKC5FyP5OrnYWolw=
|
||||
SHA256 (hackage/base-orphans-0.8.6.tar.gz) = IKIcS3rbD9hEsl4ZYkFGdAaigoawIfm3oIKrA/qAFes=
|
||||
SHA256 (hackage/bifunctors-5.5.11.tar.gz) = K2uWcvqrZJmVz0yIXzU7Zji22u5GeprOQKf8dzgxCRw=
|
||||
SHA256 (hackage/bifunctors-5.5.11_1.cabal) = zEJe6FquVtuhEjuvb7P6erzZB4Lya7kE7vFMczLuhfY=
|
||||
SHA256 (hackage/attoparsec-0.14.4_2.cabal) = wFadhsAsrdQDAX6kFNy15PfeU4DeDYqSuTN8rYTNXgI=
|
||||
SHA256 (hackage/base-compat-0.12.2.tar.gz) = pirciDpaxDb4DkrgLDxWERzxAHSS8mfCkROaZo0hUL0=
|
||||
SHA256 (hackage/base-compat-batteries-0.12.2.tar.gz) = 7ekJLgf5BOB1kWC/Hs0/t+sEO65tyJo3w9yUgp7F65k=
|
||||
SHA256 (hackage/base-orphans-0.8.7.tar.gz) = iI/Wfw2+kyd49bFwkizoDQ3KsWgO6Y8db8w2LyDZ5Ec=
|
||||
SHA256 (hackage/bifunctors-5.5.14.tar.gz) = UwEW0MR83jt2w7m30R8FmRlnOQM/lzMX6HZ3YzRpkmQ=
|
||||
SHA256 (hackage/comonad-5.0.8.tar.gz) = 72zfLMKSzEPuaqlsWBsjX96oq0Sgv/sk3HmuKy7zPRM=
|
||||
SHA256 (hackage/comonad-5.0.8_1.cabal) = Hxqr1z7H+A8gzweKdIpgzUjY5XJ3gC/fapqzYBqbj34=
|
||||
SHA256 (hackage/contravariant-1.5.5.tar.gz) = Bi/WZYDXqtC1upPmRP+n/u5pJ271DyDU7Z8d63ZC3/o=
|
||||
SHA256 (hackage/data-fix-0.3.2.tar.gz) = OhctO8BjnDJzRell+dkCPgmUJYFLKNzbe2D/ZtZiGcw=
|
||||
SHA256 (hackage/data-fix-0.3.2_2.cabal) = 6Ql3Y4FkinXoJDikDfM8BTl7VxGbgLuD44GJNwMZtno=
|
||||
SHA256 (hackage/data-fix-0.3.2_3.cabal) = veoX9rF8HTJ/U65oBuG8PKeBO0Z0KpPGCIxyg3yK53w=
|
||||
SHA256 (hackage/distributive-0.6.2.1.tar.gz) = 1zUTkuB49YyqRmMKS5xkPh4und3uRYSMXINY57Exa5E=
|
||||
SHA256 (hackage/distributive-0.6.2.1_1.cabal) = D5n1VBzKBKz4m2RDKwNCK2QI6DCo3/MObEM07xpIaAw=
|
||||
SHA256 (hackage/dlist-1.0.tar.gz) = Fz1jcyi7Fz/MNl8w0p/0qUKSoeDlVYrrPfwR3oFRARU=
|
||||
SHA256 (hackage/hashable-1.4.0.2.tar.gz) = g2Bu3TVtkUwHXs1E9tX+kaOxhqoGg8jdjJp+jiKkdgA=
|
||||
SHA256 (hackage/fgl-5.8.0.0.tar.gz) = 1g7AlHL5usDlSjtVonS1hyrSigSNUjDgBqKMWtyLjQk=
|
||||
SHA256 (hackage/generically-0.1.tar.gz) = 1bcogOHQCyS2wiGXjQYL6mIKzEEs3LYlIfMBbL0/K3E=
|
||||
SHA256 (hackage/hashable-1.4.1.0.tar.gz) = 4bMFwoDmatgn7ert1pM7n8QXT2Jogod+qyoINE5mXoc=
|
||||
SHA256 (hackage/indexed-traversable-0.1.2.tar.gz) = UWhY7nGYsf7RuTxmUVf5hV/ZRzedt/EV1IwbDWcOaY0=
|
||||
SHA256 (hackage/indexed-traversable-0.1.2_1.cabal) = 1mIoiHJC+TzLT8cQGh4lplYMjkcI9unuHT3SGQF1bGU=
|
||||
SHA256 (hackage/indexed-traversable-instances-0.1.1.tar.gz) = EA7RAjtUEyiwS87AlkufnV/JMoX8I6KsaHO/hZdDmkQ=
|
||||
SHA256 (hackage/indexed-traversable-0.1.2_2.cabal) = UqG3CKvZIfkaWXf2rlPEqisz98ML4P/xcXP2WLNMU1A=
|
||||
SHA256 (hackage/indexed-traversable-instances-0.1.1.1.tar.gz) = iV7lBj1Z4rWJMMpvpUiFuxHxnIt8e6bHsBT5QxzcwLA=
|
||||
SHA256 (hackage/integer-logarithms-1.0.3.1.tar.gz) = mwqfn6tgmxXNAVhlch+wX3RKG8d66S/RM4ct5Si76n8=
|
||||
SHA256 (hackage/integer-logarithms-1.0.3.1_2.cabal) = tl4R7G9LKcUnhxbaBUS5UaSatTEGCN8PxB7sKfFWkdk=
|
||||
SHA256 (hackage/primitive-0.7.3.0.tar.gz) = PAz9pn8e5vf2UQitb5c7W7s13bo0s8h3RqdEj3h1Adw=
|
||||
SHA256 (hackage/random-1.2.1.tar.gz) = Jlx2j8XyylPN5qh+cGtESMrUdMPe7OkzwQPyRFNmFFc=
|
||||
SHA256 (hackage/integer-logarithms-1.0.3.1_3.cabal) = 1Zv9HTmAghevK2h4nTwOV8txmdR0BaJ2Bg2I/vT0AX0=
|
||||
SHA256 (hackage/primitive-0.7.4.0.tar.gz) = Wy1twoEusvahFfBfy+PnI9Ou/3iUsBLGF+B1EwWBrdU=
|
||||
SHA256 (hackage/random-1.2.1.1.tar.gz) = PhJy9+1qTXvRcSuQFD7DJv7psiV4kiI3n+ogqckMm3Y=
|
||||
SHA256 (hackage/regex-base-0.94.0.2.tar.gz) = e5lAj1gPW7Z6HEE+C8c1iGYIJRMxrTYyICDyFprqLvE=
|
||||
SHA256 (hackage/regex-tdfa-1.3.1.2.tar.gz) = xHp4ydpTK6CIOGih40QnMYy6PMzI5C+ZWDTHTuooamI=
|
||||
SHA256 (hackage/regex-base-0.94.0.2_1.cabal) = T/RCXHEM3fRA37rGzVIxC7ayPheQI5D/ccn8fqr8T8w=
|
||||
SHA256 (hackage/regex-tdfa-1.3.2.tar.gz) = JmDX3F8AcYw5RUyETTVN6ibWBduYZPgJUe+tX3KE39E=
|
||||
SHA256 (hackage/scientific-0.3.7.0.tar.gz) = o6EhxLPWj7i5+McJqwEuSPCQ7VU2CSR6gFrQcNazQ6k=
|
||||
SHA256 (hackage/scientific-0.3.7.0_2.cabal) = dkZagr6yr26oPr0AaErMD/5lnn2nBmMpkx3I8C/JdQc=
|
||||
SHA256 (hackage/scientific-0.3.7.0_3.cabal) = UXREyUTa2duCNdezEde5oIOaUZ7jF4KItalgYlbgx9g=
|
||||
SHA256 (hackage/semialign-1.2.0.1.tar.gz) = 2QBpcEGuSwzKMkMnOis+gLz3TZN0Bdal/zTcM+6VITI=
|
||||
SHA256 (hackage/semialign-1.2.0.1_1.cabal) = DhebTTqO/3kAHTdNbJGRfGIhaWuWIPCk2GhS/GqblQE=
|
||||
SHA256 (hackage/semialign-1.2.0.1_3.cabal) = 7jRo40nnLsCmBK4FVzpN5xgdl9EDZiVCRKDMqKdtbDU=
|
||||
SHA256 (hackage/semigroupoids-5.3.7.tar.gz) = bUXNtsWMdcpYiFm4CyyStvSFkKA+Blwkzl12emqWN5k=
|
||||
SHA256 (hackage/splitmix-0.1.0.4.tar.gz) = bQZUAjlOepEXCT27RTCiE0LJseLsUJUWyKjQ/+2Y7Ko=
|
||||
SHA256 (hackage/splitmix-0.1.0.4_1.cabal) = gE4ldLx+MtCMurkeR+5ih7TffVCFHXP553j5Spp4FMc=
|
||||
SHA256 (hackage/strict-0.4.0.1.tar.gz) = 3/arwIrWN+UYkbuLR1d4xAkmxRIZ7aYP1k8NloAiYkE=
|
||||
SHA256 (hackage/strict-0.4.0.1_4.cabal) = 1iBadI6420zRenF5vpcMlFmICXCSlMz6QxWcfzzEv10=
|
||||
SHA256 (hackage/tagged-0.8.6.1.tar.gz) = 9eD8+V8LtKpj9CjywBlVpB6hpCz885FF7WMfWalhbAI=
|
||||
SHA256 (hackage/tagged-0.8.6.1_2.cabal) = KcZ9mKRARgfwJHUKucchDa3LvvThlExIxSkC8gcbJmI=
|
||||
SHA256 (hackage/tagged-0.8.6.1_3.cabal) = iiSu8puONUR8zFZljqB8Kt7TC/qBMOoFfjgpNuF8dKY=
|
||||
SHA256 (hackage/text-short-0.1.5.tar.gz) = o17GzeKtoITBoFDcWIW+WrAfhRuT10TPD6y8HBgALdo=
|
||||
SHA256 (hackage/th-abstraction-0.4.3.0.tar.gz) = yLsT4x0dIqmRaFNqNcZuEJGm5CdLmEGgI+rFLCvT3gY=
|
||||
SHA256 (hackage/text-short-0.1.5_1.cabal) = 67dzg3Q+IUE4z5OHh1vH0mZcVYSy5In+FGEkDxnntT4=
|
||||
SHA256 (hackage/th-abstraction-0.4.5.0.tar.gz) = ANXiTyR+MovZiY1a9ZFcHoaxNLTUC6poAlhjX5UDFSY=
|
||||
SHA256 (hackage/these-1.1.1.1.tar.gz) = 15jJ9W4X3vRB6PUeVMwRr9s+dsap0enuFU6aeNoL9Qg=
|
||||
SHA256 (hackage/these-1.1.1.1_5.cabal) = 8GnnZrj+1z1Ff8ogzBl/XFObzdA9djbkeN3xTbtnaEo=
|
||||
SHA256 (hackage/these-1.1.1.1_6.cabal) = KZHBPiZLDDXGlsj1+FxCjFO8Quk7HfvRmlggUhEtlIo=
|
||||
SHA256 (hackage/time-compat-1.9.6.1.tar.gz) = rQe7AOuWeMITbTaAdSsArMTLxSJlS7MZm/McYe8ea4A=
|
||||
SHA256 (hackage/time-compat-1.9.6.1_3.cabal) = Qtjy4I6WXhcYkX1UrWnh0GvUuH1mxB3HQQ9ZMT26TtE=
|
||||
SHA256 (hackage/transformers-compat-0.7.1.tar.gz) = rAuGFTTBTTz9YVNPR0Z047Y0uN7OoHL/1NIfi1nzUIA=
|
||||
SHA256 (hackage/transformers-compat-0.7.1_1.cabal) = hz71AHkMrhNtFLLokNof5N+WPjcvIbFnH6PGzfsjsQ8=
|
||||
SHA256 (hackage/unordered-containers-0.2.17.0.tar.gz) = xJ46bgtqrmjANbFj5U81IdHWXQo1Q/pG6u3cl7Q3Whc=
|
||||
SHA256 (hackage/time-compat-1.9.6.1_4.cabal) = XPX6GdMnQoFvoUIwhcv9YmrvQzEBwLl78Oj3IKbzadg=
|
||||
SHA256 (hackage/transformers-compat-0.7.2.tar.gz) = tixzBMnzy8lGPQc5qoXLlInyF+oJK51iXUF1FPvMnWo=
|
||||
SHA256 (hackage/unordered-containers-0.2.19.1.tar.gz) = Gye+xeDVIrJ6YCnr9MSm1ArLwIPHhwCOMvtVxLHRKNI=
|
||||
SHA256 (hackage/unordered-containers-0.2.19.1_1.cabal) = 2xEEK7A1bAreonfQeUdDgpEltMmUVa9q8r1fe9Xoijk=
|
||||
SHA256 (hackage/uuid-types-1.0.5.tar.gz) = rWi4m3pkwH3VwlChG+IDPukpMY/1Hse05LVOG03rp90=
|
||||
SHA256 (hackage/uuid-types-1.0.5_2.cabal) = hEe4oIcjh3QA2hO2Mps/sZ6p5MIPq+YoiIQes3CNdHQ=
|
||||
SHA256 (hackage/vector-0.12.3.1.tar.gz) = +0pTwCvU1/3xVcBgTamluw87O/zl2ZYK6hHCriNbnzU=
|
||||
SHA256 (hackage/vector-0.12.3.1_1.cabal) = BAIQkZ5c5FTc7jMg93gD2j29pXnIQo3CX/AVVzIjSAg=
|
||||
SHA256 (hackage/uuid-types-1.0.5_3.cabal) = nKdphuOVCvXpCFAr4jc+IpLW3FfsEPWutB19w6GWF4I=
|
||||
SHA256 (hackage/vector-0.13.0.0.tar.gz) = xdMWfRXhL1LgCHnd8wSlkWcqdONpzEe8XH+h1ajRW08=
|
||||
SHA256 (hackage/vector-0.13.0.0_1.cabal) = VFKOlVAXQrmUYsxUOJHyEXfn2zTZYM6OPLslr7FqnIk=
|
||||
SHA256 (hackage/vector-stream-0.1.0.0.tar.gz) = qIghD2Rn8VUJBlNzS+XMkgQGoHIn4NOttZCWcW/bgGw=
|
||||
SHA256 (hackage/vector-stream-0.1.0.0_1.cabal) = CbD43E5Rk2udawR5HwqgP3yXWbX7cUDqyKlGHNoeVaM=
|
||||
SHA256 (hackage/witherable-0.4.2.tar.gz) = eQ0rsnQoNBkXO9iRBEOYYGdalBD3DyGRKXPs2QmLQQQ=
|
||||
SHA256 (hackage/witherable-0.4.2_2.cabal) = gf07Hlbm2MWxrNvtBtScchhpAvdAATkVKv1w43rZVtI=
|
||||
SHA256 (hackage/witherable-0.4.2_3.cabal) = zMs2F14IirtCke5QRLjATXGs1cNmNpAtJSD5FQjdS7g=
|
||||
SIZE (hackage/Diff-0.4.1.tar.gz) = 8759
|
||||
SIZE (hackage/OneTuple-0.3.1.tar.gz) = 5148
|
||||
SIZE (hackage/OneTuple-0.3.1_2.cabal) = 2262
|
||||
SIZE (hackage/OneTuple-0.3.1_3.cabal) = 2276
|
||||
SIZE (hackage/QuickCheck-2.14.2.tar.gz) = 75246
|
||||
SIZE (hackage/ShellCheck-0.8.0.tar.gz) = 194817
|
||||
SIZE (hackage/ShellCheck-0.9.0.tar.gz) = 231011
|
||||
SIZE (hackage/StateVar-1.2.2.tar.gz) = 5048
|
||||
SIZE (hackage/aeson-2.0.3.0.tar.gz) = 297283
|
||||
SIZE (hackage/aeson-2.1.1.0.tar.gz) = 301830
|
||||
SIZE (hackage/assoc-1.0.2.tar.gz) = 3047
|
||||
SIZE (hackage/assoc-1.0.2_2.cabal) = 1237
|
||||
SIZE (hackage/assoc-1.0.2_3.cabal) = 1253
|
||||
SIZE (hackage/attoparsec-0.14.4.tar.gz) = 160701
|
||||
SIZE (hackage/attoparsec-0.14.4_1.cabal) = 5810
|
||||
SIZE (hackage/base-compat-0.12.1.tar.gz) = 35504
|
||||
SIZE (hackage/base-compat-batteries-0.12.1.tar.gz) = 17623
|
||||
SIZE (hackage/base-compat-batteries-0.12.1_2.cabal) = 8891
|
||||
SIZE (hackage/base-orphans-0.8.6.tar.gz) = 24255
|
||||
SIZE (hackage/bifunctors-5.5.11.tar.gz) = 46003
|
||||
SIZE (hackage/bifunctors-5.5.11_1.cabal) = 3919
|
||||
SIZE (hackage/attoparsec-0.14.4_2.cabal) = 5811
|
||||
SIZE (hackage/base-compat-0.12.2.tar.gz) = 36393
|
||||
SIZE (hackage/base-compat-batteries-0.12.2.tar.gz) = 17645
|
||||
SIZE (hackage/base-orphans-0.8.7.tar.gz) = 25083
|
||||
SIZE (hackage/bifunctors-5.5.14.tar.gz) = 47657
|
||||
SIZE (hackage/comonad-5.0.8.tar.gz) = 15227
|
||||
SIZE (hackage/comonad-5.0.8_1.cabal) = 3631
|
||||
SIZE (hackage/contravariant-1.5.5.tar.gz) = 13815
|
||||
SIZE (hackage/data-fix-0.3.2.tar.gz) = 5842
|
||||
SIZE (hackage/data-fix-0.3.2_2.cabal) = 1692
|
||||
SIZE (hackage/data-fix-0.3.2_3.cabal) = 1706
|
||||
SIZE (hackage/distributive-0.6.2.1.tar.gz) = 8140
|
||||
SIZE (hackage/distributive-0.6.2.1_1.cabal) = 2996
|
||||
SIZE (hackage/dlist-1.0.tar.gz) = 18667
|
||||
SIZE (hackage/hashable-1.4.0.2.tar.gz) = 25528
|
||||
SIZE (hackage/fgl-5.8.0.0.tar.gz) = 56445
|
||||
SIZE (hackage/generically-0.1.tar.gz) = 2572
|
||||
SIZE (hackage/hashable-1.4.1.0.tar.gz) = 25599
|
||||
SIZE (hackage/indexed-traversable-0.1.2.tar.gz) = 8685
|
||||
SIZE (hackage/indexed-traversable-0.1.2_1.cabal) = 2519
|
||||
SIZE (hackage/indexed-traversable-instances-0.1.1.tar.gz) = 4422
|
||||
SIZE (hackage/indexed-traversable-0.1.2_2.cabal) = 2533
|
||||
SIZE (hackage/indexed-traversable-instances-0.1.1.1.tar.gz) = 3751
|
||||
SIZE (hackage/integer-logarithms-1.0.3.1.tar.gz) = 9023
|
||||
SIZE (hackage/integer-logarithms-1.0.3.1_2.cabal) = 3229
|
||||
SIZE (hackage/primitive-0.7.3.0.tar.gz) = 55161
|
||||
SIZE (hackage/random-1.2.1.tar.gz) = 47143
|
||||
SIZE (hackage/integer-logarithms-1.0.3.1_3.cabal) = 3246
|
||||
SIZE (hackage/primitive-0.7.4.0.tar.gz) = 56575
|
||||
SIZE (hackage/random-1.2.1.1.tar.gz) = 47109
|
||||
SIZE (hackage/regex-base-0.94.0.2.tar.gz) = 10488
|
||||
SIZE (hackage/regex-tdfa-1.3.1.2.tar.gz) = 81331
|
||||
SIZE (hackage/regex-base-0.94.0.2_1.cabal) = 2643
|
||||
SIZE (hackage/regex-tdfa-1.3.2.tar.gz) = 82839
|
||||
SIZE (hackage/scientific-0.3.7.0.tar.gz) = 24723
|
||||
SIZE (hackage/scientific-0.3.7.0_2.cabal) = 4826
|
||||
SIZE (hackage/scientific-0.3.7.0_3.cabal) = 4840
|
||||
SIZE (hackage/semialign-1.2.0.1.tar.gz) = 10371
|
||||
SIZE (hackage/semialign-1.2.0.1_1.cabal) = 2836
|
||||
SIZE (hackage/semialign-1.2.0.1_3.cabal) = 2852
|
||||
SIZE (hackage/semigroupoids-5.3.7.tar.gz) = 35349
|
||||
SIZE (hackage/splitmix-0.1.0.4.tar.gz) = 22382
|
||||
SIZE (hackage/splitmix-0.1.0.4_1.cabal) = 6521
|
||||
SIZE (hackage/strict-0.4.0.1.tar.gz) = 12488
|
||||
SIZE (hackage/strict-0.4.0.1_4.cabal) = 4187
|
||||
SIZE (hackage/tagged-0.8.6.1.tar.gz) = 9842
|
||||
SIZE (hackage/tagged-0.8.6.1_2.cabal) = 2874
|
||||
SIZE (hackage/tagged-0.8.6.1_3.cabal) = 2874
|
||||
SIZE (hackage/text-short-0.1.5.tar.gz) = 25113
|
||||
SIZE (hackage/th-abstraction-0.4.3.0.tar.gz) = 38595
|
||||
SIZE (hackage/text-short-0.1.5_1.cabal) = 3161
|
||||
SIZE (hackage/th-abstraction-0.4.5.0.tar.gz) = 39515
|
||||
SIZE (hackage/these-1.1.1.1.tar.gz) = 9804
|
||||
SIZE (hackage/these-1.1.1.1_5.cabal) = 2748
|
||||
SIZE (hackage/these-1.1.1.1_6.cabal) = 2748
|
||||
SIZE (hackage/time-compat-1.9.6.1.tar.gz) = 59964
|
||||
SIZE (hackage/time-compat-1.9.6.1_3.cabal) = 5033
|
||||
SIZE (hackage/transformers-compat-0.7.1.tar.gz) = 44363
|
||||
SIZE (hackage/transformers-compat-0.7.1_1.cabal) = 5807
|
||||
SIZE (hackage/unordered-containers-0.2.17.0.tar.gz) = 54110
|
||||
SIZE (hackage/time-compat-1.9.6.1_4.cabal) = 5047
|
||||
SIZE (hackage/transformers-compat-0.7.2.tar.gz) = 46485
|
||||
SIZE (hackage/unordered-containers-0.2.19.1.tar.gz) = 58030
|
||||
SIZE (hackage/unordered-containers-0.2.19.1_1.cabal) = 3797
|
||||
SIZE (hackage/uuid-types-1.0.5.tar.gz) = 11922
|
||||
SIZE (hackage/uuid-types-1.0.5_2.cabal) = 2608
|
||||
SIZE (hackage/vector-0.12.3.1.tar.gz) = 151420
|
||||
SIZE (hackage/vector-0.12.3.1_1.cabal) = 7946
|
||||
SIZE (hackage/uuid-types-1.0.5_3.cabal) = 2622
|
||||
SIZE (hackage/vector-0.13.0.0.tar.gz) = 154509
|
||||
SIZE (hackage/vector-0.13.0.0_1.cabal) = 9112
|
||||
SIZE (hackage/vector-stream-0.1.0.0.tar.gz) = 12377
|
||||
SIZE (hackage/vector-stream-0.1.0.0_1.cabal) = 1404
|
||||
SIZE (hackage/witherable-0.4.2.tar.gz) = 11876
|
||||
SIZE (hackage/witherable-0.4.2_2.cabal) = 2285
|
||||
SIZE (hackage/witherable-0.4.2_3.cabal) = 2294
|
||||
|
@ -1,5 +1,19 @@
|
||||
.\" Automatically generated by Pandoc 2.16.1
|
||||
.\" Automatically generated by Pandoc 2.19.2
|
||||
.\"
|
||||
.\" Define V font for inline verbatim, using C font in formats
|
||||
.\" that render this, and otherwise B font.
|
||||
.ie "\f[CB]x\f[]"x" \{\
|
||||
. ftr V B
|
||||
. ftr VI BI
|
||||
. ftr VB B
|
||||
. ftr VBI BI
|
||||
.\}
|
||||
.el \{\
|
||||
. ftr V CR
|
||||
. ftr VI CI
|
||||
. ftr VB CB
|
||||
. ftr VBI CBI
|
||||
.\}
|
||||
.TH "SHELLCHECK" "1" "" "Shell script analysis tool" ""
|
||||
.hy
|
||||
.SH NAME
|
||||
@ -26,22 +40,22 @@ Consider this line:
|
||||
\f[R]
|
||||
.fi
|
||||
.IP \[bu] 2
|
||||
For scripts starting with \f[C]#!/bin/sh\f[R] (or when using
|
||||
\f[C]-s sh\f[R]), ShellCheck will warn that \f[C](( .. ))\f[R] is not
|
||||
For scripts starting with \f[V]#!/bin/sh\f[R] (or when using
|
||||
\f[V]-s sh\f[R]), ShellCheck will warn that \f[V](( .. ))\f[R] is not
|
||||
POSIX compliant (similar to checkbashisms).
|
||||
.IP \[bu] 2
|
||||
For scripts starting with \f[C]#!/bin/bash\f[R] (or using
|
||||
\f[C]-s bash\f[R]), ShellCheck will warn that decimals are not
|
||||
For scripts starting with \f[V]#!/bin/bash\f[R] (or using
|
||||
\f[V]-s bash\f[R]), ShellCheck will warn that decimals are not
|
||||
supported.
|
||||
.IP \[bu] 2
|
||||
For scripts starting with \f[C]#!/bin/ksh\f[R] (or using
|
||||
\f[C]-s ksh\f[R]), ShellCheck will not warn at all, as \f[C]ksh\f[R]
|
||||
For scripts starting with \f[V]#!/bin/ksh\f[R] (or using
|
||||
\f[V]-s ksh\f[R]), ShellCheck will not warn at all, as \f[V]ksh\f[R]
|
||||
supports decimals in arithmetic contexts.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\f[B]-a\f[R],\ \f[B]--check-sourced\f[R]
|
||||
Emit warnings in sourced files.
|
||||
Normally, \f[C]shellcheck\f[R] will only warn about issues in the
|
||||
Normally, \f[V]shellcheck\f[R] will only warn about issues in the
|
||||
specified files.
|
||||
With this option, any issues in sourced files will also be reported.
|
||||
.TP
|
||||
@ -84,18 +98,18 @@ Subsequent \f[B]-o\f[R] options accumulate.
|
||||
This is equivalent to specifying \f[B]enable\f[R] directives.
|
||||
.TP
|
||||
\f[B]-P\f[R]\ \f[I]SOURCEPATH\f[R],\ \f[B]--source-path=\f[R]\f[I]SOURCEPATH\f[R]
|
||||
Specify paths to search for sourced files, separated by \f[C]:\f[R] on
|
||||
Unix and \f[C];\f[R] on Windows.
|
||||
This is equivalent to specifying \f[C]search-path\f[R] directives.
|
||||
Specify paths to search for sourced files, separated by \f[V]:\f[R] on
|
||||
Unix and \f[V];\f[R] on Windows.
|
||||
This is equivalent to specifying \f[V]search-path\f[R] directives.
|
||||
.TP
|
||||
\f[B]-s\f[R]\ \f[I]shell\f[R],\ \f[B]--shell=\f[R]\f[I]shell\f[R]
|
||||
Specify Bourne shell dialect.
|
||||
Valid values are \f[I]sh\f[R], \f[I]bash\f[R], \f[I]dash\f[R] and
|
||||
\f[I]ksh\f[R].
|
||||
The default is to deduce the shell from the file\[aq]s \f[C]shell\f[R]
|
||||
directive, shebang, or \f[C].bash/.bats/.dash/.ksh\f[R] extension, in
|
||||
The default is to deduce the shell from the file\[aq]s \f[V]shell\f[R]
|
||||
directive, shebang, or \f[V].bash/.bats/.dash/.ksh\f[R] extension, in
|
||||
that order.
|
||||
\f[I]sh\f[R] refers to POSIX \f[C]sh\f[R] (not the system\[aq]s), and
|
||||
\f[I]sh\f[R] refers to POSIX \f[V]sh\f[R] (not the system\[aq]s), and
|
||||
will warn of portability issues.
|
||||
.TP
|
||||
\f[B]-S\f[R]\ \f[I]SEVERITY\f[R],\ \f[B]--severity=\f[R]\f[I]severity\f[R]
|
||||
@ -113,15 +127,15 @@ mentioned warnings.
|
||||
Set to 0 to disable them entirely.
|
||||
.TP
|
||||
\f[B]-x\f[R],\ \f[B]--external-sources\f[R]
|
||||
Follow \f[C]source\f[R] statements even when the file is not specified
|
||||
Follow \f[V]source\f[R] statements even when the file is not specified
|
||||
as input.
|
||||
By default, \f[C]shellcheck\f[R] will only follow files specified on the
|
||||
command line (plus \f[C]/dev/null\f[R]).
|
||||
This option allows following any file the script may \f[C]source\f[R].
|
||||
By default, \f[V]shellcheck\f[R] will only follow files specified on the
|
||||
command line (plus \f[V]/dev/null\f[R]).
|
||||
This option allows following any file the script may \f[V]source\f[R].
|
||||
.RS
|
||||
.PP
|
||||
This option may also be enabled using \f[C]external-sources=true\f[R] in
|
||||
\f[C].shellcheckrc\f[R].
|
||||
This option may also be enabled using \f[V]external-sources=true\f[R] in
|
||||
\f[V].shellcheckrc\f[R].
|
||||
This flag takes precedence.
|
||||
.RE
|
||||
.TP
|
||||
@ -139,8 +153,8 @@ Useful for editors that support compiling and showing syntax errors.
|
||||
.RS
|
||||
.PP
|
||||
For example, in Vim,
|
||||
\f[C]:set makeprg=shellcheck\[rs] -f\[rs] gcc\[rs] %\f[R] will allow
|
||||
using \f[C]:make\f[R] to check the script, and \f[C]:cnext\f[R] to jump
|
||||
\f[V]:set makeprg=shellcheck\[rs] -f\[rs] gcc\[rs] %\f[R] will allow
|
||||
using \f[V]:make\f[R] to check the script, and \f[V]:cnext\f[R] to jump
|
||||
to the next error.
|
||||
.IP
|
||||
.nf
|
||||
@ -177,7 +191,7 @@ systems.
|
||||
.TP
|
||||
\f[B]diff\f[R]
|
||||
Auto-fixes in unified diff format.
|
||||
Can be piped to \f[C]git apply\f[R] or \f[C]patch -p1\f[R] to
|
||||
Can be piped to \f[V]git apply\f[R] or \f[V]patch -p1\f[R] to
|
||||
automatically apply fixes.
|
||||
.RS
|
||||
.IP
|
||||
@ -244,7 +258,7 @@ command-or-structure
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
For example, to suppress SC2035 about using \f[C]./*.jpg\f[R]:
|
||||
For example, to suppress SC2035 about using \f[V]./*.jpg\f[R]:
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
@ -281,45 +295,45 @@ Valid keys are:
|
||||
\f[B]disable\f[R]
|
||||
Disables a comma separated list of error codes for the following
|
||||
command.
|
||||
The command can be a simple command like \f[C]echo foo\f[R], or a
|
||||
The command can be a simple command like \f[V]echo foo\f[R], or a
|
||||
compound command like a function definition, subshell block or loop.
|
||||
A range can be be specified with a dash, e.g.
|
||||
\f[C]disable=SC3000-SC4000\f[R] to exclude 3xxx.
|
||||
All warnings can be disabled with \f[C]disable=all\f[R].
|
||||
\f[V]disable=SC3000-SC4000\f[R] to exclude 3xxx.
|
||||
All warnings can be disabled with \f[V]disable=all\f[R].
|
||||
.TP
|
||||
\f[B]enable\f[R]
|
||||
Enable an optional check by name, as listed with
|
||||
\f[B]--list-optional\f[R].
|
||||
Only file-wide \f[C]enable\f[R] directives are considered.
|
||||
Only file-wide \f[V]enable\f[R] directives are considered.
|
||||
.TP
|
||||
\f[B]external-sources\f[R]
|
||||
Set to \f[C]true\f[R] in \f[C].shellcheckrc\f[R] to always allow
|
||||
Set to \f[V]true\f[R] in \f[V].shellcheckrc\f[R] to always allow
|
||||
ShellCheck to open arbitrary files from \[aq]source\[aq] statements (the
|
||||
way most tools do).
|
||||
.RS
|
||||
.PP
|
||||
This option defaults to \f[C]false\f[R] only due to ShellCheck\[aq]s
|
||||
This option defaults to \f[V]false\f[R] only due to ShellCheck\[aq]s
|
||||
origin as a remote service for checking untrusted scripts.
|
||||
It can safely be enabled for normal development.
|
||||
.RE
|
||||
.TP
|
||||
\f[B]source\f[R]
|
||||
Overrides the filename included by a \f[C]source\f[R]/\f[C].\f[R]
|
||||
Overrides the filename included by a \f[V]source\f[R]/\f[V].\f[R]
|
||||
statement.
|
||||
This can be used to tell shellcheck where to look for a file whose name
|
||||
is determined at runtime, or to skip a source by telling it to use
|
||||
\f[C]/dev/null\f[R].
|
||||
\f[V]/dev/null\f[R].
|
||||
.TP
|
||||
\f[B]source-path\f[R]
|
||||
Add a directory to the search path for \f[C]source\f[R]/\f[C].\f[R]
|
||||
Add a directory to the search path for \f[V]source\f[R]/\f[V].\f[R]
|
||||
statements (by default, only ShellCheck\[aq]s working directory is
|
||||
included).
|
||||
Absolute paths will also be rooted in these paths.
|
||||
The special path \f[C]SCRIPTDIR\f[R] can be used to specify the
|
||||
The special path \f[V]SCRIPTDIR\f[R] can be used to specify the
|
||||
currently checked script\[aq]s directory, as in
|
||||
\f[C]source-path=SCRIPTDIR\f[R] or
|
||||
\f[C]source-path=SCRIPTDIR/../libs\f[R].
|
||||
Multiple paths accumulate, and \f[C]-P\f[R] takes precedence over them.
|
||||
\f[V]source-path=SCRIPTDIR\f[R] or
|
||||
\f[V]source-path=SCRIPTDIR/../libs\f[R].
|
||||
Multiple paths accumulate, and \f[V]-P\f[R] takes precedence over them.
|
||||
.TP
|
||||
\f[B]shell\f[R]
|
||||
Overrides the shell detected from the shebang.
|
||||
@ -328,13 +342,13 @@ shebang), or possibly as a more targeted alternative to
|
||||
\[aq]disable=SC2039\[aq].
|
||||
.SH RC FILES
|
||||
.PP
|
||||
Unless \f[C]--norc\f[R] is used, ShellCheck will look for a file
|
||||
\f[C].shellcheckrc\f[R] or \f[C]shellcheckrc\f[R] in the script\[aq]s
|
||||
Unless \f[V]--norc\f[R] is used, ShellCheck will look for a file
|
||||
\f[V].shellcheckrc\f[R] or \f[V]shellcheckrc\f[R] in the script\[aq]s
|
||||
directory and each parent directory.
|
||||
If found, it will read \f[C]key=value\f[R] pairs from it and treat them
|
||||
If found, it will read \f[V]key=value\f[R] pairs from it and treat them
|
||||
as file-wide directives.
|
||||
.PP
|
||||
Here is an example \f[C].shellcheckrc\f[R]:
|
||||
Here is an example \f[V].shellcheckrc\f[R]:
|
||||
.IP
|
||||
.nf
|
||||
\f[C]
|
||||
@ -343,6 +357,9 @@ Here is an example \f[C].shellcheckrc\f[R]:
|
||||
source-path=SCRIPTDIR
|
||||
source-path=/mnt/chroot
|
||||
|
||||
# Since 0.9.0, values can be quoted with \[aq]\[aq] or \[dq]\[dq] to allow spaces
|
||||
source-path=\[dq]My Documents/scripts\[dq]
|
||||
|
||||
# Allow opening any \[aq]source\[aq]d file, even if not specified as input
|
||||
external-sources=true
|
||||
|
||||
@ -357,21 +374,21 @@ disable=SC2236
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
If no \f[C].shellcheckrc\f[R] is found in any of the parent directories,
|
||||
ShellCheck will look in \f[C]\[ti]/.shellcheckrc\f[R] followed by the
|
||||
XDG config directory (usually \f[C]\[ti]/.config/shellcheckrc\f[R]) on
|
||||
Unix, or \f[C]%APPDATA%/shellcheckrc\f[R] on Windows.
|
||||
If no \f[V].shellcheckrc\f[R] is found in any of the parent directories,
|
||||
ShellCheck will look in \f[V]\[ti]/.shellcheckrc\f[R] followed by the
|
||||
XDG config directory (usually \f[V]\[ti]/.config/shellcheckrc\f[R]) on
|
||||
Unix, or \f[V]%APPDATA%/shellcheckrc\f[R] on Windows.
|
||||
Only the first file found will be used.
|
||||
.PP
|
||||
Note for Snap users: the Snap sandbox disallows access to hidden files.
|
||||
Use \f[C]shellcheckrc\f[R] without the dot instead.
|
||||
Use \f[V]shellcheckrc\f[R] without the dot instead.
|
||||
.PP
|
||||
Note for Docker users: ShellCheck will only be able to look for files
|
||||
that are mounted in the container, so \f[C]\[ti]/.shellcheckrc\f[R] will
|
||||
that are mounted in the container, so \f[V]\[ti]/.shellcheckrc\f[R] will
|
||||
not be read.
|
||||
.SH ENVIRONMENT VARIABLES
|
||||
.PP
|
||||
The environment variable \f[C]SHELLCHECK_OPTS\f[R] can be set with
|
||||
The environment variable \f[V]SHELLCHECK_OPTS\f[R] can be set with
|
||||
default flags:
|
||||
.IP
|
||||
.nf
|
||||
@ -403,21 +420,21 @@ unknown formatter).
|
||||
This version of ShellCheck is only available in English.
|
||||
All files are leniently decoded as UTF-8, with a fallback of ISO-8859-1
|
||||
for invalid sequences.
|
||||
\f[C]LC_CTYPE\f[R] is respected for output, and defaults to UTF-8 for
|
||||
locales where encoding is unspecified (such as the \f[C]C\f[R] locale).
|
||||
\f[V]LC_CTYPE\f[R] is respected for output, and defaults to UTF-8 for
|
||||
locales where encoding is unspecified (such as the \f[V]C\f[R] locale).
|
||||
.PP
|
||||
Windows users seeing
|
||||
\f[C]commitBuffer: invalid argument (invalid character)\f[R] should set
|
||||
their terminal to use UTF-8 with \f[C]chcp 65001\f[R].
|
||||
\f[V]commitBuffer: invalid argument (invalid character)\f[R] should set
|
||||
their terminal to use UTF-8 with \f[V]chcp 65001\f[R].
|
||||
.SH KNOWN INCOMPATIBILITIES
|
||||
.PP
|
||||
(If nothing in this section makes sense, you are unlikely to be affected
|
||||
by it)
|
||||
.PP
|
||||
To avoid confusing and misguided suggestions, ShellCheck requires
|
||||
function bodies to be either \f[C]{ brace groups; }\f[R] or
|
||||
\f[C]( subshells )\f[R], and function names containing \f[C][]*=!\f[R]
|
||||
are only recognized after a \f[C]function\f[R] keyword.
|
||||
function bodies to be either \f[V]{ brace groups; }\f[R] or
|
||||
\f[V]( subshells )\f[R], and function names containing \f[V][]*=!\f[R]
|
||||
are only recognized after a \f[V]function\f[R] keyword.
|
||||
.PP
|
||||
The following unconventional function definitions are identical in Bash,
|
||||
but ShellCheck only recognizes the latter.
|
||||
@ -429,23 +446,23 @@ function [x!=y] () { [[ $1 ]]; }
|
||||
\f[R]
|
||||
.fi
|
||||
.PP
|
||||
Shells without the \f[C]function\f[R] keyword do not allow these
|
||||
Shells without the \f[V]function\f[R] keyword do not allow these
|
||||
characters in function names to begin with.
|
||||
Function names containing \f[C]{}\f[R] are not supported at all.
|
||||
Function names containing \f[V]{}\f[R] are not supported at all.
|
||||
.PP
|
||||
Further, if ShellCheck sees \f[C][x!=y]\f[R] it will assume this is an
|
||||
Further, if ShellCheck sees \f[V][x!=y]\f[R] it will assume this is an
|
||||
invalid comparison.
|
||||
To invoke the above function, quote the command as in
|
||||
\f[C]\[aq][x!=y]\[aq]\f[R], or to retain the same globbing behavior, use
|
||||
\f[C]command [x!=y]\f[R].
|
||||
\f[V]\[aq][x!=y]\[aq]\f[R], or to retain the same globbing behavior, use
|
||||
\f[V]command [x!=y]\f[R].
|
||||
.PP
|
||||
ShellCheck imposes additional restrictions on the \f[C][\f[R] command to
|
||||
ShellCheck imposes additional restrictions on the \f[V][\f[R] command to
|
||||
help diagnose common invalid uses.
|
||||
While \f[C][ $x= 1 ]\f[R] is defined in POSIX, ShellCheck will assume it
|
||||
While \f[V][ $x= 1 ]\f[R] is defined in POSIX, ShellCheck will assume it
|
||||
was intended as the much more likely comparison
|
||||
\f[C][ \[dq]$x\[dq] = 1 ]\f[R] and fail accordingly.
|
||||
For unconventional or dynamic uses of the \f[C][\f[R] command, use
|
||||
\f[C]test\f[R] or \f[C]\[rs][\f[R] instead.
|
||||
\f[V][ \[dq]$x\[dq] = 1 ]\f[R] and fail accordingly.
|
||||
For unconventional or dynamic uses of the \f[V][\f[R] command, use
|
||||
\f[V]test\f[R] or \f[V]\[rs][\f[R] instead.
|
||||
.SH REPORTING BUGS
|
||||
.PP
|
||||
Bugs and issues can be reported on GitHub:
|
||||
@ -457,7 +474,7 @@ ShellCheck is developed and maintained by Vidar Holen, with assistance
|
||||
from a long list of wonderful contributors.
|
||||
.SH COPYRIGHT
|
||||
.PP
|
||||
Copyright 2012-2021, Vidar Holen and contributors.
|
||||
Copyright 2012-2022, Vidar Holen and contributors.
|
||||
Licensed under the GNU General Public License version 3 or later, see
|
||||
https://gnu.org/licenses/gpl.html
|
||||
.SH SEE ALSO
|
||||
|
Loading…
x
Reference in New Issue
Block a user