mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	
		
			
	
	
		
			36 lines
		
	
	
	
		
			1,015 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
	
		
			1,015 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
|   | #!/usr/bin/env bash
 | ||
|  | 
 | ||
|  | # This script runs black on all Python files in the repo. | ||
|  | 
 | ||
|  | set -uo pipefail | ||
|  | 
 | ||
|  | # Apply black. | ||
|  | echo -e "Formatting Python files..." | ||
|  | PY_FILES=$(find \( -path "./.git" \
 | ||
|  |                 -o -path "./thirdparty" \
 | ||
|  |                 \) -prune \
 | ||
|  |                 -o \( -name "SConstruct" \
 | ||
|  |                 -o -name "SCsub" \
 | ||
|  |                 -o -name "*.py" \
 | ||
|  |                 \) -print) | ||
|  | black -l 120 $PY_FILES | ||
|  | 
 | ||
|  | git diff > patch.patch | ||
|  | FILESIZE="$(stat -c%s patch.patch)" | ||
|  | MAXSIZE=5 | ||
|  | 
 | ||
|  | # If no patch has been generated all is OK, clean up, and exit. | ||
|  | if (( FILESIZE < MAXSIZE )); then | ||
|  |     printf "Files in this commit comply with the black style rules.\n" | ||
|  |     rm -f patch.patch | ||
|  |     exit 0 | ||
|  | fi | ||
|  | 
 | ||
|  | # A patch has been created, notify the user, clean up, and exit. | ||
|  | printf "\n*** The following differences were found between the code " | ||
|  | printf "and the formatting rules:\n\n" | ||
|  | cat patch.patch | ||
|  | printf "\n*** Aborting, please fix your commit(s) with 'git commit --amend' or 'git rebase -i <hash>'\n" | ||
|  | rm -f patch.patch | ||
|  | exit 1 |