mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-09-25 11:16:51 +00:00
36fb75d6b1
When jsduck is executed in a subshell (as we do, to catch output) it disables the color output. It should have a --color flag, but it doesn't have that, so manually colourise for now. Change-Id: I1f8da523b6b4fc1fc6965f751395f8af497b13b5
40 lines
1,011 B
Bash
Executable file
40 lines
1,011 B
Bash
Executable file
#!/usr/bin/env bash
|
|
cd $(cd $(dirname $0); pwd)
|
|
|
|
(
|
|
while IFS='' read -r l
|
|
do
|
|
if [[ "$l" == "{{VE-LOAD-HEAD}}" ]]
|
|
then
|
|
php ../maintenance/makeStaticLoader.php --section=head --ve-path=../modules/
|
|
elif [[ "$l" == "{{VE-LOAD-BODY}}" ]]
|
|
then
|
|
php ../maintenance/makeStaticLoader.php --section=body --ve-path=../modules/
|
|
else
|
|
echo "$l"
|
|
fi
|
|
done
|
|
) < eg-iframe.tpl | php > eg-iframe.html
|
|
|
|
warnings=`jsduck --config=config.json 2>&1`
|
|
ec=$?
|
|
|
|
rm eg-iframe.html
|
|
cd - > /dev/null
|
|
|
|
# Re-colorize
|
|
NORMAL=$(tput sgr0); YELLOW=$(tput setaf 3); MEGANTA=$(tput setaf 5)
|
|
echo "$warnings" | perl -pe "s|^([^ ]+) ([^ ]+) (.*)$|${YELLOW}\1 ${MEGANTA}\2${NORMAL} \3|"
|
|
|
|
# JSDuck doesn't exit with an error code if there are warnings
|
|
# (only when there are fatal errors). We fixed all warnings
|
|
# in master so lets consider all warnings errors to ensure
|
|
# we don't introduce any new invalid jsduck syntax.
|
|
if [[ "$ec" == "0" && "$warnings" != "" ]]
|
|
then
|
|
exit 1
|
|
fi
|
|
|
|
# Exit with exit code of jsduck command
|
|
exit $ec
|