Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package obs-service-source_validator for 
openSUSE:Factory checked in at 2022-01-14 23:12:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/obs-service-source_validator (Old)
 and      /work/SRC/openSUSE:Factory/.obs-service-source_validator.new.1892 
(New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "obs-service-source_validator"

Fri Jan 14 23:12:44 2022 rev:52 rq:945827 version:0.21

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/obs-service-source_validator/obs-service-source_validator.changes
        2021-03-12 13:30:08.778058772 +0100
+++ 
/work/SRC/openSUSE:Factory/.obs-service-source_validator.new.1892/obs-service-source_validator.changes
      2022-01-14 23:13:19.654635153 +0100
@@ -1,0 +2,9 @@
+Mon Dec 20 13:56:48 UTC 2021 - dims...@opensuse.org
+
+- Update to version 0.21:
+  * 45-stale-changes allow for multibuild specfiles with empty default flavour
+  * Fix running the checks on a directory with whitespace in its path
+  * spec_query: print line numbers on %if/%else/%endif error
+  * 20-files-present-and-references: do not complain about debian.*.triggers
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ obs-service-source_validator.spec ++++++
--- /var/tmp/diff_new_pack.HsnaRF/_old  2022-01-14 23:13:20.242635532 +0100
+++ /var/tmp/diff_new_pack.HsnaRF/_new  2022-01-14 23:13:20.246635535 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package obs-service-source_validator
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed

++++++ _service ++++++
--- /var/tmp/diff_new_pack.HsnaRF/_old  2022-01-14 23:13:20.270635550 +0100
+++ /var/tmp/diff_new_pack.HsnaRF/_new  2022-01-14 23:13:20.274635553 +0100
@@ -1,6 +1,6 @@
 <services>
   <service name="tar_scm" mode="manual">
-    <param 
name="url">git://github.com/openSUSE/obs-service-source_validator.git</param>
+    <param 
name="url">https://github.com/openSUSE/obs-service-source_validator.git</param>
     <param name="scm">git</param>
     <param name="exclude">.git</param>
     <param name="versionformat">@PARENT_TAG@</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.HsnaRF/_old  2022-01-14 23:13:20.290635563 +0100
+++ /var/tmp/diff_new_pack.HsnaRF/_new  2022-01-14 23:13:20.294635566 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
             <param 
name="url">git://github.com/openSUSE/obs-service-source_validator.git</param>
-          <param 
name="changesrevision">fb282ed7748b76a1473f105f60985e5c23c4402b</param></service></servicedata>
+          <param 
name="changesrevision">c68d7a28c4ecd88b179359b030098503e75adc0b</param></service></servicedata>
 (No newline at EOF)
 

++++++ obs-service-source_validator-0.21.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/.gitignore 
new/obs-service-source_validator-0.21/.gitignore
--- old/obs-service-source_validator-0.21/.gitignore    1970-01-01 
01:00:00.000000000 +0100
+++ new/obs-service-source_validator-0.21/.gitignore    2021-12-14 
18:30:23.000000000 +0100
@@ -0,0 +1 @@
+*.sw?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-source_validator-0.21/20-files-present-and-referenced 
new/obs-service-source_validator-0.21/20-files-present-and-referenced
--- old/obs-service-source_validator-0.21/20-files-present-and-referenced       
2021-03-09 17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/20-files-present-and-referenced       
2021-12-14 18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 OSC_MODE=""
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 BASE_DIR=$(dirname $0)
@@ -53,7 +53,7 @@
     ;;
 esac
 
-for i in $DIR_TO_CHECK/*.spec ; do
+for i in "$DIR_TO_CHECK"/*.spec ; do
         test -f "$i" || continue
         if [ -e "$DIR_TO_CHECK/_multibuild" ]; then
           sed -n -e 
's,.*<\(flavor\|package\)>\([^<]*\)</\(flavor\|package\)>.*,\2,p' \
@@ -76,16 +76,16 @@
            cleanup_and_exit 1
        fi
 done
-for i in $DIR_TO_CHECK/*.dsc ; do
+for i in "$DIR_TO_CHECK"/*.dsc ; do
        test -f "$i" || continue
        ( sed -ne '/^Files:/,$p' < "$i" | sed -e 1d | sed -e '/^[^ ]/,$d' | 
while read debchk debsize debfile ; do echo "$debfile" ; done ) >> 
$TMPDIR/sources
 done
 
 # Add debian only patches to the allowed sources list.
 # but strip tailing -p1 arguments
-test -f $DIR_TO_CHECK/debian.series && \
+test -f "$DIR_TO_CHECK/debian.series" && \
   sed -e '/^$/d' -e '/^#/d' -e 's,[ \t]*-p[0123456789]*$,,' \
-  $DIR_TO_CHECK/debian.series >> $TMPDIR/sources
+  "$DIR_TO_CHECK/debian.series" >> $TMPDIR/sources
 
 test -f $TMPDIR/sources || cleanup_and_exit
 
@@ -101,11 +101,11 @@
 
 # XML validate files starting with _..
 if [ -x $(type -p xmllint) ]; then
-    for i in $DIR_TO_CHECK/_service; do
-        test -f $i || continue
-        BASE=${i##*/}
+    for i in "$DIR_TO_CHECK/_service"; do
+        test -f "$i" || continue
+        BASE="${i##*/}"
 
-        xmllint --format $i >/dev/null || {
+        xmllint --format "$i" >/dev/null || {
             echo "(E) $(basename $i) is not valid XML"
             RETURN=2
             continue
@@ -113,7 +113,7 @@
 
         # Check if _service is sane
         if [ "$BASE" = "_service" ]; then
-            xmllint --format $i > $TMPDIR/_service
+            xmllint --format "$i" > $TMPDIR/_service
 
             if egrep -q "service .*mode=." $TMPDIR/_service \
                     && ! egrep -q "service 
.*mode=.(disabled|buildtime|explicit|localonly)" \
@@ -163,10 +163,10 @@
 # Verify GPG keys
 #
 
-if [ -f $DIR_TO_CHECK/*.keyring 2>/dev/null ]; then
+if [ -f "$DIR_TO_CHECK"/*.keyring 2>/dev/null ]; then
     GPG_OPTIONS="--homedir $TMPDIR -q --no-default-keyring --keyring 
$TMPDIR/.checkifvalidsourcedir-gpg-keyring --trust-model always"
-    gpg $GPG_OPTIONS --import $DIR_TO_CHECK/*.keyring
-    for i in $DIR_TO_CHECK/*.sig $DIR_TO_CHECK/*.sign $DIR_TO_CHECK/*.asc; do
+    gpg $GPG_OPTIONS --import "$DIR_TO_CHECK"/*.keyring
+    for i in "$DIR_TO_CHECK"/*.sig "$DIR_TO_CHECK"/*.sign 
"$DIR_TO_CHECK"/*.asc; do
         if [ -f "$i" ]; then
            validatefn=${i%.asc}
            validatefn=${validatefn%.sig}
@@ -213,7 +213,7 @@
 #
 # now check if everything is marked in spec files.
 #
-for i in $DIR_TO_CHECK/* $DIR_TO_CHECK/.* ; do
+for i in "$DIR_TO_CHECK"/* "$DIR_TO_CHECK"/.* ; do
     BASE=${i##*/}
     case $BASE in
        \.|\.\.) continue ;;
@@ -230,7 +230,7 @@
            else
                echo "- package has $BASE: (new or modified)"
                echo 
"--------------------------------------------------------------"
-               cat $DIR_TO_CHECK/$BASE
+               cat "$DIR_TO_CHECK/$BASE"
                echo 
"--------------------------------------------------------------"
                if test "$BATCHMODE" != true ; then
                    echo -n "Is this correct? [N/y/d] (y to ignore) "
@@ -259,7 +259,7 @@
            else
                echo "- package has $BASE: (new or modified)"
                echo 
"--------------------------------------------------------------"
-               cat $DIR_TO_CHECK/$BASE
+               cat "$DIR_TO_CHECK/$BASE"
                echo 
"--------------------------------------------------------------"
                if test "$BATCHMODE" != true ; then
                    echo -n "Is this correct? [N/y/d] (y to ignore) "
@@ -355,25 +355,26 @@
        debian.*.postinst | \
        debian.*.postrm | \
        debian.*.preinst | \
-       debian.*.prerm  | \
+       debian.*.prerm | \
+       debian.*.triggers | \
        debian.*.lintian-overrides )
            ;;
        *)
             SEARCHTERM=${BASE//\\/\\\\}
             grep -a -x "$SEARCHTERM" $TMPDIR/sources > /dev/null && continue
-            test -f $DIR_TO_CHECK/_service && egrep -q 'mode=.remoterun' 
$DIR_TO_CHECK/_service && continue
-            test -f $DIR_TO_CHECK/_service && egrep -q 
'name=.product_converter' $DIR_TO_CHECK/_service && continue
+            test -f "$DIR_TO_CHECK/_service" && egrep -q 'mode=.remoterun' 
"$DIR_TO_CHECK/_service" && continue
+            test -f "$DIR_TO_CHECK/_service" && egrep -q 
'name=.product_converter' "$DIR_TO_CHECK/_service" && continue
             # be a bit more relaxed for osc, it won't upload directories anyway
-            [ -d "$DIR_TO_CHECK/$BASE" ] && [ -d  $DIR_TO_CHECK/.osc ] && 
continue
+            [ -d "$DIR_TO_CHECK/$BASE" ] && [ -d  "$DIR_TO_CHECK/.osc" ] && 
continue
             # and source services on server side
-            [ -d "$DIR_TO_CHECK/$BASE" ] && [ -d $DIR_TO_CHECK/.old ] && 
continue
+            [ -d "$DIR_TO_CHECK/$BASE" ] && [ -d "$DIR_TO_CHECK/.old" ] && 
continue
 
             warn_on_unmentioned_files $BASE
 
             if test "$RETURN" != "2" ; then
                 if [ -d "$DIR_TO_CHECK/$BASE" ] ; then
                     # be a bit more relaxed for osc, it won't upload 
directories anyway
-                    if [ ! -d $DIR_TO_CHECK/.osc ] ; then
+                    if [ ! -d "$DIR_TO_CHECK/.osc" ] ; then
                         echo "!! $BASE is a directory !!"
                         if test "$BATCHMODE" != true ; then
                             echo    "     remove subtree with 'r'"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/30-patches-applied 
new/obs-service-source_validator-0.21/30-patches-applied
--- old/obs-service-source_validator-0.21/30-patches-applied    2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/30-patches-applied    2021-12-14 
18:30:23.000000000 +0100
@@ -3,8 +3,8 @@
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 BATCHMODE=""
 test "$1" = "--batchmode" && { BATCHMODE="--batchmode" ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
@@ -14,12 +14,12 @@
 RETURN=0
 
 test "$VERBOSE" = true && echo -n "- checking if all metioned patches are 
being applied in specfile "
-for i in $DIR_TO_CHECK/*.spec ; do
-    test -f $i || continue
+for i in "$DIR_TO_CHECK"/*.spec ; do
+    test -f "$i" || continue
     test "$VERBOSE" = true && echo -n "."
     RETURN=0
     # WARNING only at the moment, just complain loudly ...
-    /usr/lib/obs/service/source_validators/helpers/check_patches_applied 
$BATCHMODE $i || RETURN=1
+    /usr/lib/obs/service/source_validators/helpers/check_patches_applied 
$BATCHMODE "$i" || RETURN=1
 done
 test "$VERBOSE" = true && echo "done"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-source_validator-0.21/40-sequence-changes 
new/obs-service-source_validator-0.21/40-sequence-changes
--- old/obs-service-source_validator-0.21/40-sequence-changes   2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/40-sequence-changes   2021-12-14 
18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
 $HELPERS_DIR/check_input_filename "$DIR_TO_CHECK" || exit 1
@@ -13,24 +13,24 @@
 test "$VERBOSE" = true && echo -n "- checking for sequence in changes files "
 FIRST_CHANGES=""
 RETURN=0
-for i in $DIR_TO_CHECK/*.changes ; do
-    test -f $i || continue
-    if [ $i != ${i%_source.changes} ];then
+for i in "$DIR_TO_CHECK"/*.changes ; do
+    test -f "$i" || continue
+    if [ "$i" != "${i%_source.changes}" ];then
       
/usr/lib/obs/service/source_validators/helpers/check_debian_source_changes $i 
&& continue
       echo "(W) File ends with '_source.changes' but is not a valid debian 
source changes file"
     fi
     RETURN=0
     test -n "$FIRST_CHANGES" || FIRST_CHANGES=$i
     if test -n "$FIRST_CHANGES" -a "$FIRST_CHANGES" != "$i" ; then
-        if cmp -s $FIRST_CHANGES $i ; then
+        if cmp -s $FIRST_CHANGES "$i" ; then
             continue
         fi
     fi
-    /usr/lib/obs/service/source_validators/helpers/check_dates_in_changes $i 
|| {
+    /usr/lib/obs/service/source_validators/helpers/check_dates_in_changes "$i" 
|| {
        echo "Please fix with your own tools or try 
/usr/lib/obs/service/source_validators/helpers/fix_changelog" >&2;
        RETURN=1
     }
-    
/usr/lib/obs/service/source_validators/helpers/convert_changes_to_rpm_changelog 
--check < $i > /dev/null || {
+    
/usr/lib/obs/service/source_validators/helpers/convert_changes_to_rpm_changelog 
--check < "$i" > /dev/null || {
        echo "Please fix with your own tools or try 
/usr/lib/obs/service/source_validators/helpers/fix_changelog" >&2;
        RETURN=1
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/45-stale-changes 
new/obs-service-source_validator-0.21/45-stale-changes
--- old/obs-service-source_validator-0.21/45-stale-changes      2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/45-stale-changes      2021-12-14 
18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
 $HELPERS_DIR/check_input_filename "$DIR_TO_CHECK" || exit 1
@@ -13,7 +13,7 @@
 RETURN=0
 test "$VERBOSE" = true && echo -n "- checking for stale or missing changes "
 
-test -f $DIR_TO_CHECK/_service && egrep -q 'name=.product_converter' 
$DIR_TO_CHECK/_service && {
+test -f "$DIR_TO_CHECK/_service" && egrep -q 'name=.product_converter' 
"$DIR_TO_CHECK/_service" && {
     test "$VERBOSE" = true && echo skipped for product
     exit 0
 }
@@ -37,29 +37,29 @@
 test -n "$SPECLIST" && {
 for i in $SPECLIST ; do
     case $i in
-        *-) i=${i}MACRO ; DO_PASS="1"
-        ;;
+        *-) i=${i}MACRO ; DO_PASS="1" ;;
+        -*) i=${i#-} ;; # multi-flavour with empty default
     esac
-    test -f $DIR_TO_CHECK/$i.changes && DO_PASS=1
+    test -f "$DIR_TO_CHECK/$i.changes" && DO_PASS=1
 done
 test "$DO_PASS" = "1" || {
     echo "WARNING: No .changes file found. This package can not be submitted 
to openSUSE product projects."
     exit 0
 }
 # check for stale .changes files
-for i in $DIR_TO_CHECK/*.changes ; do
-    test -f $i || continue
-    N=`basename $i .changes`
+for i in "$DIR_TO_CHECK"/*.changes ; do
+    test -f "$i" || continue
+    N=`basename "$i" .changes`
     OKAY=0
     for pack in $SPECLIST ; do
         test "$pack" = "$N" && OKAY=1
         case $pack in
-            *-) test "${pack}MACRO" = "$N" && OKAY=1
-            ;;
+            *-) test "${pack}MACRO" = "$N" && OKAY=1 ;;
+            -*) test "${pack#-}" = "$N" && OKAY=1 ;;
         esac
     done
     if test $OKAY = 0 ; then
-       if ! grep -q "^Source[0-9]*:.*$N.changes" $DIR_TO_CHECK/*.spec ; then
+       if ! grep -q "^Source[0-9]*:.*$N.changes" "$DIR_TO_CHECK"/*.spec ; then
            echo "ERROR: $(basename $i) not a subpackage, please remove"
            RETURN=1
        fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/50-spec-version 
new/obs-service-source_validator-0.21/50-spec-version
--- old/obs-service-source_validator-0.21/50-spec-version       2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/50-spec-version       2021-12-14 
18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
 $HELPERS_DIR/check_input_filename "$DIR_TO_CHECK" || exit 1
@@ -12,21 +12,21 @@
 RETURN=0
 
 test "$VERBOSE" = true && echo -n "- checking version in specfile "
-for i in $DIR_TO_CHECK/*.spec ; do
+for i in "$DIR_TO_CHECK"/*.spec ; do
     WARNING_SHOWN=""
-    test -f $i || continue
+    test -f "$i" || continue
     test "$VERBOSE" = true && echo -n "."
     RETURN=0
-    grep -a ^Version: $i > /dev/null || {
-        echo ERROR: Can not recognize Version in `basename $i`.
+    grep -a ^Version: "$i" > /dev/null || {
+        echo ERROR: Can not recognize Version in `basename "$i"`.
         echo Remember that Version: must be at the beginning of line.
         RETURN=1
     }
-    grep -a ^Version: $i | while read KEY VERSION ; do
+    grep -a ^Version: "$i" | while read KEY VERSION ; do
         case "$VERSION" in
           AUTO)
-            test -e $DIR_TO_CHECK/get_version_number.sh || {
-                echo ERROR: `basename $i` has Version \"AUTO\" but 
get_version_number.sh does not exist.
+            test -e "$DIR_TO_CHECK"/get_version_number.sh || {
+                echo ERROR: `basename "$i"` has Version \"AUTO\" but 
get_version_number.sh does not exist.
                 RETURN=1
             }
           ;;
@@ -36,18 +36,18 @@
                    echo "packager is responsible that the resulting string"
                    echo "is non-empty and contains no \"-\"."
                    echo "----------"
-                   grep -A2 -B2 -a -i -e "^Version:.*%" $i
+                   grep -A2 -B2 -a -i -e "^Version:.*%" "$i"
                    echo "----------"
                    WARNING_SHOWN="yes"
                    sleep 2
                fi
           ;;
           *-*)
-            echo ERROR: `basename $i` has a Version with a \"-\". This is not 
allowed.
+            echo ERROR: `basename "$i"` has a Version with a \"-\". This is 
not allowed.
             RETURN=1
           ;;
           "")
-            echo ERROR: `basename $i` has empty  Version field. This is not 
allowed.
+            echo ERROR: `basename "$i"` has empty  Version field. This is not 
allowed.
             RETURN=1
           ;;
         esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/60-spec-filelist 
new/obs-service-source_validator-0.21/60-spec-filelist
--- old/obs-service-source_validator-0.21/60-spec-filelist      2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/60-spec-filelist      2021-12-14 
18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
 $HELPERS_DIR/check_input_filename "$DIR_TO_CHECK" || exit 1
@@ -12,15 +12,15 @@
 
 test "$VERBOSE" = true && echo -n "- checking forbidden paths in filelists "
 RETURN=0
-for SPECFILE in $DIR_TO_CHECK/*.spec ; do
-    test -f $SPECFILE || continue
+for SPECFILE in "$DIR_TO_CHECK"/*.spec ; do
+    test -f "$SPECFILE" || continue
     test "$VERBOSE" = true && echo -n "."
 
     IS_FILE_LIST=false
     RETURN=0
 
     if test -f "$SPECFILE" -a -s "$SPECFILE" ; then
-       SEDOUT=$(sed -ne "/^%file/,\${;p;}" $SPECFILE)
+       SEDOUT=$(sed -ne "/^%file/,\${;p;}" "$SPECFILE")
         while read -r LINE ; do
             case "$LINE" in
               %file*)
@@ -33,7 +33,7 @@
                     case $LINE in
                       */usr/man/*|*/usr/info/*|*/usr/bin/X11/*)
                         RETURN=1
-                        echo "(E)" `basename $SPECFILE` uses forbidden file 
path \"$LINE\".
+                        echo "(E)" `basename "$SPECFILE"` uses forbidden file 
path \"$LINE\".
                       ;;
                     esac
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/70-baselibs 
new/obs-service-source_validator-0.21/70-baselibs
--- old/obs-service-source_validator-0.21/70-baselibs   2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/70-baselibs   2021-12-14 
18:30:23.000000000 +0100
@@ -2,8 +2,8 @@
 
 test "$1" = "--verbose" && { VERBOSE=true ; shift ; }
 test "$1" = "--batchmode" && { BATCHMODE=true ; shift ; }
-DIR_TO_CHECK=$1
-DESTINATIONDIR=$2
+DIR_TO_CHECK="$1"
+DESTINATIONDIR="$2"
 test -n "$DIR_TO_CHECK" || DIR_TO_CHECK=`pwd`
 HELPERS_DIR="/usr/lib/obs/service/source_validators/helpers"
 $HELPERS_DIR/check_input_filename "$DIR_TO_CHECK" || exit 1
@@ -16,16 +16,16 @@
 }
 
 # PASS if there is no baselibs.conf
-[ -f $DIR_TO_CHECK/baselibs.conf ] || exit 0
+[ -f "$DIR_TO_CHECK/baselibs.conf" ] || exit 0
 
 BUILTBINARIES=()
 if [ -e "$DIR_TO_CHECK/_multibuild" ]; then
   while read i; do
     # PASS if we have trouble parsing the .spec file
     BUILTBINARIES+=($($HELPERS_DIR/spec_query --specfile 
"$DIR_TO_CHECK"/*.spec --print-subpacks \
-      --buildflavor $i)) || exit 0
+      --buildflavor "$i")) || exit 0
     BUILTBINARIES+=($($HELPERS_DIR/spec_query --no-conditionals --specfile 
"$DIR_TO_CHECK"/*.spec --print-subpacks \
-      --buildflavor $i)) || exit 0
+      --buildflavor "$i")) || exit 0
   done < <(sed -n -e 
's,.*<\(flavor\|package\)>\([^<]*\)</\(flavor\|package\)>.*,\2,p' 
"$DIR_TO_CHECK/_multibuild")
 fi
 for i in "$DIR_TO_CHECK"/*.spec; do
@@ -36,7 +36,7 @@
 
 # add known keywords from baselibs specification
 BUILTBINARIES+=('arch' 'targetname' 'targettype')
-BASELIBSREF=$(grep -o "^[a-zA-Z0-9.+_-]\+" $DIR_TO_CHECK/baselibs.conf)
+BASELIBSREF=$(grep -o "^[a-zA-Z0-9.+_-]\+" "$DIR_TO_CHECK/baselibs.conf")
 
 RETURN=0
 for rpm in $BASELIBSREF; do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/obs-service-source_validator-0.21/helpers/check_dates_in_changes 
new/obs-service-source_validator-0.21/helpers/check_dates_in_changes
--- old/obs-service-source_validator-0.21/helpers/check_dates_in_changes        
2021-03-09 17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/helpers/check_dates_in_changes        
2021-12-14 18:30:23.000000000 +0100
@@ -13,7 +13,7 @@
     usage 1
 fi
 
-for CHANGES in $* ; do
+for CHANGES in "$@" ; do
 
     TROUBLE_FOUND=false
 
@@ -55,13 +55,13 @@
                        esac
             DATE=`date +%s --date "$DATESTR" 2> /dev/null`
             test $? -gt 0 -o -z "$DATE" -o "$LAST_IS_YEAR" != true && {
-                echo $CHANGES 
+                echo "$CHANGES"
                 echo "(E) INVALID \"$DATESTR\" "
                 TROUBLE_FOUND=true
             }
           ;;
         esac
-    done < $CHANGES
+    done < "$CHANGES"
 done
 if test $TROUBLE_FOUND = false ; then
     exit 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/obs-service-source_validator-0.21/helpers/spec_query 
new/obs-service-source_validator-0.21/helpers/spec_query
--- old/obs-service-source_validator-0.21/helpers/spec_query    2021-03-09 
17:51:33.000000000 +0100
+++ new/obs-service-source_validator-0.21/helpers/spec_query    2021-12-14 
18:30:23.000000000 +0100
@@ -25,7 +25,7 @@
   my %seen;
   my $dtags;
   my @ifs;
-  while (<F>) {
+  for (my $line = 0; <F>; $line++) {
     # only process if conditionals in non line continuation contexts
     if (/^\s*%(?:define|global).*\\$/) {
       push @$spec, $_;
@@ -39,20 +39,20 @@
     }
 
     if (/^\s*%if\s+.*%\{?name/ && $keep_name_conditionals) {
-      unshift @ifs, $st_ifname;
+      unshift @ifs, { $st_ifname => $line };
     } elsif (/^\s*%if/) {
-      unshift @ifs, $st_if;
+      unshift @ifs, { $st_if => $line };
       next;
     } elsif (/^\s*%else/) {
-      die("got %else without %if\n") unless @ifs;
-      if ($ifs[0] == $st_ifname) {
+      die($line . ": %else without %if\n") unless @ifs;
+      if (exists $ifs[0]{$st_ifname}) {
         push @$spec, "%endif";
-        $ifs[0] = $st_if;
+        $ifs[0] = { $st_if => $line };
       }
       next;
     } elsif (/^\s*%endif/) {
-      die("got %endif without %if\n") unless @ifs;
-      push @$spec, "%endif" if $ifs[0] == $st_ifname;
+      die($line . ": %endif without %if\n") unless @ifs;
+      push @$spec, "%endif" if (exists $ifs[0]{$st_ifname});
       shift @ifs;
       next;
     }
@@ -70,7 +70,11 @@
     }
     push @$spec, $_;
   }
-  die("got %if without %endif\n") if @ifs;
+  if (@ifs and exists $ifs[0]{$st_if}) {
+    die($ifs[0]{$st_if} . ": %if without %endif\n");
+  } elsif (@ifs) {
+    die($ifs[0]{$st_ifname} . ": %if name without %endif\n");
+  }
   close(F) || die("close: $!\n");
   my @amb = sort(keys(%$dtags));
   die('Ambiguous tags: ' . join(', ', @amb) . "\n") if $unique_sources && @amb;

Reply via email to