Re: [GUILT 25/28] "guilt push" now fails when there are no more patches to push.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 8, 2014 at 12:04 AM, Jeff Sipek <jeffpc@xxxxxxxxxxxxxx> wrote:
> On Fri, Mar 21, 2014 at 08:32:03AM +0100, Per Cederqvist wrote:
>> This makes it easier to script operations on the entire queue, for
>> example run the test suite on each patch in the queue:
>>
>>     guilt pop -a;while guilt push; do make test||break; done
>>
>> This brings "guilt push" in line with the push operation in Mercurial
>> Queues (hg qpush), which fails when there are no patches to apply.
>>
>> Updated the test suite.
>>
>> "guilt push -a" still does not fail.  (It successfully manages to
>> ensure that all patches are pushed, even if it did not have to do
>> anything to make it so.)
>>
>> Signed-off-by: Per Cederqvist <cederp@xxxxxxxxx>
>> ---
>>  guilt-push           | 14 ++++-----
>>  regression/t-020.out | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++
>>  regression/t-020.sh  | 13 +++++++-
>>  3 files changed, 108 insertions(+), 8 deletions(-)
>>
>> diff --git a/guilt-push b/guilt-push
>> index 67687e7..2222350 100755
>> --- a/guilt-push
>> +++ b/guilt-push
>> @@ -55,6 +55,7 @@ fi
>>
>>  patch="$1"
>>  [ ! -z "$all" ] && patch="-a"
>> +[ -z "$patch" ] && { patch=1; num=t; }
>
> I don't think there's any other place in the repo that does this.  Instead
> you see a lot of if-then-fi.  To keep it consistent, I'd suggest:
>
> if [ -z "$patch" ] ; then
>         patch=1
>         num=t
> fi

Ok.

> Ah, this took me a while to figure out.  The above turns:
>
> $ guilt push
>
> into
>
> $ guilt push -n 1
>
> I'd throw in a comment.

Will do.

> (Note to self, this file is a huge mess and could use a bit of cleanup.)
>
>> @@ -78,11 +79,6 @@ elif [ ! -z "$num" ]; then
>>       # clamp to minimum
>>       [ $tidx -lt $eidx ] && eidx=$tidx
>>
>> -elif [ -z "$patch" ]; then
>> -     # we are supposed to push only the next patch onto the stack
>> -
>> -     eidx=`wc -l < "$applied"`
>> -     eidx=`expr $eidx + 1`
>>  else
>>       # we're supposed to push only up to a patch, make sure the patch is
>>       # in the series
>> @@ -109,7 +105,11 @@ if [ "$sidx" -gt "$eidx" ]; then
>>       else
>>               disp "File series fully applied, ends at patch `get_series | tail -n 1`"
>>       fi
>> -     exit 0
>> +     if [ -n "$all" ]; then
>> +             exit 0
>> +     else
>> +             exit 1
>> +     fi
>
> This changes the output on stdout.  E.g.,
>
> $ guilt pu
> $ guilt pu -n 1
> File series fully applied, ends at patch crashdump
>
> With this patch, both will print the message. Right?

Yes. Personally, I think that is a good change. It feels
strange that "guilt push" silently does nothing when
there is no patch to apply.

    /ceder

>>  fi
>>
>>  get_series | sed -n -e "${sidx},${eidx}p" | while read p
>
> Jeff.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]