#!/bin/bash # # Script to compare scaladoc raw files. For an explanation read the next echos. # if [ $# -ne 2 ] then echo echo "scaladoc-compare will compare the scaladoc-generated pages in two different locations and output the diff" echo "its main purpose is to track changes to scaladoc and prevent updates that break things." echo echo "This script is meant to be used with the scaladoc -raw-output option, as it compares .html.raw files " echo "instead of markup-heavy .html files." echo echo "Script usage $0 " echo " eg: $0 build/scaladoc/library build/scaladoc-prev/library | less" echo exit 1 fi NEW_PATH=$1 OLD_PATH=$2 FILES=`find $NEW_PATH -name '*.html.raw'` if [ "$FILES" == "" ] then echo "No .html.raw files found in $NEW_PATH!" exit 1 fi for NEW_FILE in $FILES do OLD_FILE=${NEW_FILE/$NEW_PATH/$OLD_PATH} if [ -f $OLD_FILE ] then #echo $NEW_FILE" => "$OLD_FILE DIFF=`diff -q -w $NEW_FILE $OLD_FILE 2>&1` if [ "$DIFF" != "" ] then # Redo the full diff echo "$NEW_FILE:" diff -w $NEW_FILE $OLD_FILE 2>&1 echo -e "\n\n" fi else echo -e "$NEW_FILE: No corresponding file (expecting $OLD_FILE)\n\n" fi done echo Done.