#!/usr/bin/env sh

empty(){
    rm "${1}"
    echo "No errors found"
}

ferror="FIXME"
find . -type f -name "*.py" -print0 | xargs -0 pylint --rcfile .pylintrc --errors-only > "${ferror}"

# discard file if empty
[ -s "${ferror}" ] || empty "${ferror}"

ferror="FIXME-2"
find . -type f -name "*.py" -print0 | xargs -0 pylint --rcfile .pylintrc > "${ferror}"
find . -type f -name "*.py" -print0 | xargs -0 pycodestyle  >> "${ferror}"
# remove ./
sed -i.bak 's/^\.\///g' "${ferror}"
# remove lines starting with '*'
sed -i.bak '/^\*/d' "${ferror}"
# remove lines starting with '-'
sed -i.bak '/^\-/d' "${ferror}"
# remove empty lines
sed -i.bak '/^[[:space:]]*$/d' "${ferror}"; rm "${ferror}.bak"
# sort on errorcode
sort -k 2 -o "${ferror}" "${ferror}"

# discard file if empty
[ -s "${ferror}" ] || empty "${ferror}"
