Files @ ac6cc1b8a07e
Branch filter:

Location: kallithea/scripts/whitespacecleanup.sh

Thomas De Schampheleire
scripts: new maintainer script validate-minimum-dependency-versions

Automate what we can.

This script could be added later to an encompassing script
'prepare-for-release' (which would also do other release-related steps).

The trick '2> >(tee "$log" >&2)' sends the error output to the console while
at the same time writing to a file. It uses bash-specific syntax (process
substitution: >(...) )
See https://stackoverflow.com/a/692407/2941347 .

Includes contributions by Mads Kiilerich.
#!/bin/bash -x

# Enforce some consistency in whitespace - just to avoid spurious whitespaces changes

files=`hg mani | egrep -v '/fontello/|/email_templates/|(^LICENSE-MERGELY.html|^docs/Makefile|^scripts/whitespacecleanup.sh|/(graph|mergely|native.history)\.js|/test_dump_html_mails.ref.html|\.png|\.gif|\.ico|\.pot|\.po|\.mo|\.tar\.gz|\.diff)$'`

sed -i "s/`printf '\r'`//g" $files
sed -i -e "s,`printf '\t'`,    ,g" $files
sed -i -e "s,  *$,,g" $files
sed -i -e 's,\([^ ]\)\\$,\1 \\,g' -e 's,\(["'"'"']["'"'"']["'"'"']\) \\$,\1\\,g' $files
# ensure one trailing newline - remove empty last line and make last line include trailing newline:
sed -i -e '$,${/^$/d}' -e '$a\' $files

sed -i -e 's,\([^ /]\){,\1 {,g' `hg loc '*.css'`
sed -i -e 's|^\([^ /].*,\)\([^ ]\)|\1 \2|g' `hg loc '*.css'`

hg mani | xargs chmod -x
hg loc 'set:!binary()&grep("^#!")&!(**_tmpl.py)&!(**/template**)' | xargs chmod +x

# isort is installed from dev_requirements.txt
isort --line-width 160 --wrap-length 160 --lines-after-imports 2 `hg loc '*.py'`

hg diff