Move LINT process in dedicated shell & fix

Move lint to dedicated shell permit to use it from your shell easily to check what is wrong
Also fix recent regressions in code style
This commit is contained in:
Loic Blot 2017-04-06 09:10:59 +02:00
parent 503e1d2b7c
commit 4b15f76ed1
No known key found for this signature in database
GPG Key ID: EFAA458E8C153987
3 changed files with 52 additions and 49 deletions

View File

@ -19,6 +19,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
*/
#include "l_client.h"
#include "clientenvironment.h"
#include "common/c_content.h"
#include "common/c_converter.h"
#include "cpp_api/s_base.h"
@ -27,9 +28,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "lua_api/l_item.h"
#include "lua_api/l_nodemeta.h"
#include "mainmenumanager.h"
#include "util/string.h"
#include "clientenvironment.h"
#include "map.h"
#include "util/string.h"
extern MainGameCallback *g_gamecallback;
@ -200,7 +200,7 @@ int ModApiClient::l_sound_play(lua_State *L)
SimpleSoundSpec spec;
read_soundspec(L, 1, spec);
float gain = 1.0 ;
float gain = 1.0;
bool looped = false;
s32 handle;
@ -212,7 +212,8 @@ int ModApiClient::l_sound_play(lua_State *L)
if (!lua_isnil(L, -1)) {
v3f pos = read_v3f(L, -1) * BS;
lua_pop(L, 1);
handle = sound->playSoundAt(spec.name, looped, gain * spec.gain, pos);
handle =
sound->playSoundAt(spec.name, looped, gain * spec.gain, pos);
lua_pushinteger(L, handle);
return 1;
}

46
util/travis/lint.sh Normal file
View File

@ -0,0 +1,46 @@
#! /bin/bash
function perform_lint() {
echo "Performing LINT..."
CLANG_FORMAT=clang-format
CLANG_FORMAT_WHITELIST="util/travis/clang-format-whitelist.txt"
if [ "$TRAVIS_EVENT_TYPE" = "pull_request" ]; then
# Get list of every file modified in this pull request
files_to_lint="$(git diff --name-only --diff-filter=ACMRTUXB $TRAVIS_COMMIT_RANGE | grep '^src/[^.]*[.]\(cpp\|h\)$' | true)"
else
# Check everything for branch pushes
files_to_lint="$(find src/ -name '*.cpp' -or -name '*.h')"
fi
local errorcount=0
local fail=0
for f in ${files_to_lint}; do
d=$(diff -u "$f" <(${CLANG_FORMAT} "$f") || true)
if ! [ -z "$d" ]; then
whitelisted=$(egrep -c "^${f}" "${CLANG_FORMAT_WHITELIST}")
# If file is not whitelisted, mark a failure
if [ ${whitelisted} -eq 0 ]; then
errorcount=$((errorcount+1))
printf "The file %s is not compliant with the coding style" "$f"
if [ ${errorcount} -gt 50 ]; then
printf "\nToo many errors encountered previously, this diff is hidden.\n"
else
printf ":\n%s\n" "$d"
fi
fail=1
fi
fi
done
if [ "$fail" = 1 ]; then
echo "LINT reports failure."
exit 1
fi
echo "LINT OK"
}

View File

@ -1,53 +1,9 @@
#!/bin/bash -e
. util/travis/common.sh
. util/travis/lint.sh
needs_compile || exit 0
function perform_lint() {
echo "Performing LINT..."
CLANG_FORMAT=clang-format-3.9
CLANG_FORMAT_WHITELIST="util/travis/clang-format-whitelist.txt"
if [ "$TRAVIS_EVENT_TYPE" = "pull_request" ]; then
# Get list of every file modified in this pull request
files_to_lint="$(git diff --name-only --diff-filter=ACMRTUXB $TRAVIS_COMMIT_RANGE | grep '^src/[^.]*[.]\(cpp\|h\)$' | true)"
else
# Check everything for branch pushes
files_to_lint="$(find src/ -name '*.cpp' -or -name '*.h')"
fi
local errorcount=0
local fail=0
for f in ${files_to_lint}; do
d=$(diff -u "$f" <(${CLANG_FORMAT} "$f") || true)
if ! [ -z "$d" ]; then
whitelisted=$(egrep -c "^${f}" "${CLANG_FORMAT_WHITELIST}")
# If file is not whitelisted, mark a failure
if [ ${whitelisted} -eq 0 ]; then
errorcount=$((errorcount+1))
printf "The file %s is not compliant with the coding style" "$f"
if [ ${errorcount} -gt 50 ]; then
printf "\nToo many errors encountered previously, this diff is hidden.\n"
else
printf ":\n%s\n" "$d"
fi
fail=1
fi
fi
done
if [ "$fail" = 1 ]; then
echo "LINT reports failure."
exit 1
fi
echo "LINT OK"
}
if [[ "$LINT" == "1" ]]; then
# Lint with exit CI
perform_lint