From 49f24c87114bb10b29feb9d8f4ffe097e90ebc3c Mon Sep 17 00:00:00 2001 From: Antoine Levy-Lambert Date: Wed, 24 Feb 2016 23:05:27 -0500 Subject: [PATCH] rename yearcheck.sh to copyrightcheck.sh and change the implementation to use git. --- src/etc/copyrightcheck.sh | 63 ++++++++++++++++++++++++ src/etc/yearcheck.sh | 101 -------------------------------------- 2 files changed, 63 insertions(+), 101 deletions(-) create mode 100755 src/etc/copyrightcheck.sh delete mode 100755 src/etc/yearcheck.sh diff --git a/src/etc/copyrightcheck.sh b/src/etc/copyrightcheck.sh new file mode 100755 index 000000000..51c5e99db --- /dev/null +++ b/src/etc/copyrightcheck.sh @@ -0,0 +1,63 @@ +#!/bin/sh + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Simple shell script that checks whether changed files contain a copyright +# statement. +# +# +# Use this script instead of your usual git pull command. +# + +if [ -n "$TMP" ]; then + TEMP_DIR="$TMP" +else + if [ -n "$TEMP" ]; then + TEMP_DIR="$TEMP" + else + TEMP_DIR=/tmp + fi +fi + +SCM_COMMAND=git +SCM_ARGS="diff --name-only ..origin" + +git fetch + +"$SCM_COMMAND" $SCM_ARGS > "$TEMP_DIR"/update + + +thefile=$(cat "$TEMP_DIR"/update) +for afile in $thefile +do + if [ -f ${afile} ]; then + echo $afile >> "$TEMP_DIR"/changed-files + fi +done +echo "Changed:" +echo "========" +cat "$TEMP_DIR"/changed-files +echo + +xargs fgrep -L Copyright < "$TEMP_DIR"/changed-files > "$TEMP_DIR"/no-copyright + +echo "No Copyright line" +echo "=================" +cat "$TEMP_DIR"/no-copyright +echo + +rm "$TEMP_DIR"/no-copyright "$TEMP_DIR"/changed-files "$TEMP_DIR"/update diff --git a/src/etc/yearcheck.sh b/src/etc/yearcheck.sh deleted file mode 100755 index 1a510ffde..000000000 --- a/src/etc/yearcheck.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/sh - -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# -# Simple shell script that checks whether changed files contain a copyright -# statement for a given year. -# -# Rename (or symlink) this script to the year you want to check, i.e. name it -# 2002 if you want to check for copyright statements that do not contain -# the year 2002. -# -# Use this script instead of your usual cvs update command. -# -# Usage YEAR [precommit] -# -# If the optional all argument has been omitted, the proposal directory will -# be skipped. -# - -if [ -n "$TMP" ]; then - TEMP_DIR="$TMP" -else - if [ -n "$TEMP" ]; then - TEMP_DIR="$TEMP" - else - TEMP_DIR=/tmp - fi -fi - -YEAR=`basename $0` - -if [ $YEAR = yearcheck.sh ]; then - YEAR=`date -R | cut -d ' ' -f 4` -fi - -precommit_call=false -for arg in "$@" ; do - if [ "$arg" = "precommit" ] ; then - precommit_call=true - fi -done - -if [ -d ".svn" ]; then - SCM_COMMAND=svn - if $precommit_call ; then - SCM_ARGS=status - CUT_ARGS="-c 8-" - else - SCM_ARGS=up - CUT_ARGS="-c 4-" - fi -else - SCM_COMMAND=cvs - SCM_ARGS="-z3 update -dP" - CUT_ARGS="-d ' ' -f 2" -fi - -"$SCM_COMMAND" $SCM_ARGS > "$TEMP_DIR"/update-prefilter - -# filter out boring lines -if [ "$SCM_COMMAND" = "svn" ]; then - < "$TEMP_DIR"/update-prefilter fgrep -v 'At revision' | fgrep -v 'Updated to revision' | egrep -v '^\?' > "$TEMP_DIR"/update -else - cp "$TEMP_DIR"/update-prefilter "$TEMP_DIR"/update -fi - -cut $CUT_ARGS < "$TEMP_DIR"/update > "$TEMP_DIR"/changed-files - -echo "Changed:" -echo "========" -cat "$TEMP_DIR"/changed-files -echo - -xargs fgrep -L Copyright < "$TEMP_DIR"/changed-files > "$TEMP_DIR"/no-copyright - -echo "No Copyright line" -echo "=================" -cat "$TEMP_DIR"/no-copyright -echo - -xargs egrep -L "Copyright.*$YEAR" < "$TEMP_DIR"/changed-files | cut -f 1 -d : > "$TEMP_DIR"/no-$YEAR - -echo "No Copyright line for year $YEAR" -echo "================================" -cat "$TEMP_DIR"/no-$YEAR - -rm "$TEMP_DIR"/no-$YEAR "$TEMP_DIR"/no-copyright "$TEMP_DIR"/changed-files "$TEMP_DIR"/update "$TEMP_DIR"/update-prefilter