X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=lint.sh;h=cd0db4caaef67279cd945f14f85e2284da3f9dc0;hb=335011fd4473f55aaaceb69726d15e0063373149;hp=6c640ad94de19e3714f0a8fdf3be6a74a72d80b8;hpb=fefe0bfe5e8e551e1fdb886408a335139a5f8ba3;p=dygraphs.git diff --git a/lint.sh b/lint.sh index 6c640ad..cd0db4c 100755 --- a/lint.sh +++ b/lint.sh @@ -5,25 +5,27 @@ # # The zero-argument form lints everything. -jsc_opts='maxerr:10000,devel:true,browser:true' -rhino_opts='maxerr=10000,devel=true,browser=true' +# See jshint/build/jshint-rhino.js for documentation on these parameters. +# devel defines logging globals (i.e. "console.log") +# browser defines standard web browser globals (i.e. "document") +# shadow disables warnings on multiple var definitions in one scope (i.e. two +# loops with "var i") +jsc_opts='maxerr:10000,devel:true,browser:true,shadow:true' +rhino_opts='maxerr=10000,devel=true,browser=true,shadow=true' -if [ $# -gt 1 ]; then - echo "Usage: $0 [file.js]" - exit 1 -fi +RETURN_VALUE=0 if [ $# -eq 0 ]; then - files=$(ls dygraph*.js plugins/*.js | grep -v combined | grep -v dev.js) + files=$(ls dygraph*.js plugins/*.js datahandler/*.js gallery/*.js | grep -v combined | grep -v dev.js| grep -v externs) else - files=$1 + files=$@ fi if [ -e /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc ]; then # use JSC (Safari/JavaScriptCore) to run JSHint -- much faster than Rhino. echo 'Running JSHint w/ JavaScriptCore (jsc)...' for file in $files; do - ./jshint/env/jsc.sh $file $jsc_opts + ./jshint/env/jsc.sh $file $jsc_opts || RETURN_VALUE=1 done else # fall back to Rhino. @@ -35,8 +37,11 @@ else if [[ ${ERRORS} -ne 0 ]]; then echo "[jshint] Error(s) in ${FILE}:" printf "%s\n" "${LINT_RESULT}" + RETURN_VALUE=1 else echo "[jshint] ${FILE} passed!" fi done fi + +exit $RETURN_VALUE