feature/fix_linter_fuckup #4

Merged
Vulpovile merged 31 commits from feature/fix_linter_fuckup into master 2025-01-12 00:11:02 +00:00
4 changed files with 48 additions and 22 deletions
Showing only changes of commit cdc63f6fcd - Show all commits

41
Jenkinsfile vendored
View File

@@ -7,25 +7,38 @@ pipeline {
script {
// Check for spaces or mixed indentation
sh '''
FILE_EXTENSIONS="css json js java py ps1 cs cmd bat htm html cpp c h hpp"
FILETYPES="css|json|js|java|py|ps1|cs|cmd|bat|htm|html|cpp|c|h|hpp"
# Convert FILE_EXTENSIONS to --include pattern
INCLUDE_PATTERNS=$(echo $FILE_EXTENSIONS | sed 's/ /,*./g; s/^/*./')
FILES=$(find . -regextype awk -regex '.*($FILETYPES)' -type f)
echo "Checking for lines starting with spaces in $FILE_EXTENSIONS files..."
grep -nrP '^[ ]+' --include="$INCLUDE_PATTERNS" . | sed 's/\\([^:]*\\):\\([^:]*\\):\\([ ]*\\).*/File: \\1, Line: \\2, Found: \\3/' || echo "No lines with spaces found."
# Initialize the PROBLEMS variable
PROBLEMS=""
echo "Checking for lines with mixed tabs and spaces in $FILE_EXTENSIONS files..."
grep -nrP '^\t+ +' --include="$INCLUDE_PATTERNS" . | sed 's/\\([^:]*\\):\\([^:]*\\):\\(\\t* +\\).*/File: \\1, Line: \\2, Found: \\3/' || echo "No lines with mixed indentation found."
echo "$FILES" | while IFS= read -r file; do
# Check for lines with spaces
GREP_RESULT=$(grep -nrP '^[ ]+' "$file" | sed 's/\([^:]*\):\([^:]*\):\([ ]*\).*/File: \1, Line: \2, Found: \3/')
if [ -n "$GREP_RESULT" ]; then
PROBLEMS="$PROBLEMS$GREP_RESULT"$'\n' # Append the result to PROBLEMS
fi
if grep -nrP '^[ ]+' --include="$INCLUDE_PATTERNS" . || \
grep -nrP '^\t+ +' --include="$INCLUDE_PATTERNS" .; then
echo "Indentation issues detected. Please fix the above lines."
exit 1
else
echo "No indentation issues detected."
exit 0
fi
# Check for lines with mixed tabs and spaces
GREP_RESULT=$(grep -nrP '^\t+ +' "$file" | sed 's/\([^:]*\):\([^:]*\):\([ ]*\).*/File: \1, Line: \2, Found: \3/')
if [ -n "$GREP_RESULT" ]; then
PROBLEMS="$PROBLEMS$GREP_RESULT"$'\n' # Append the result to PROBLEMS
fi
done
# Check if there were any problems
if [ -n "$PROBLEMS" ]; then
echo "Indentation issues detected. Please fix the above lines."
echo "$PROBLEMS"
exit 1
else
echo "No indentation issues detected."
exit 0
fi
'''
}
}