lilypond-devel
[Top][All Lists]
Advanced

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

Re: output-distance: treat non-existent files as empty string (issue 583


From: hanwenn
Subject: Re: output-distance: treat non-existent files as empty string (issue 583590043 by address@hidden)
Date: Fri, 06 Mar 2020 08:28:01 -0800

On 2020/03/06 01:03:49, Dan Eble wrote:
> On 2020/03/05 10:33:57, hanwenn wrote:
> > > the script fail on None.strip(), though not the best option, is
still better
> > > than treating this as discreetly as the intentional removal of a
test case.
> > 
> > I disagree. Having the script crash prevents us from forming a
complete
> > impression of what a change does, because the crash can hide other
regression
> > failures.
> 
> I want to make sure that it is clear that I did not say that having
the script
> crash was the best option, just better than acting like there is no
difference. 
> Listing no diff when an expected text file is missing would prevent us
from
> forming a complete impression of what a change does; I'm concerned
that you seem
> unconcerned about that.
>  
> > > These changes deserve some systematic manual testing; I hope
you're covering
> > > that.  If this script fails to publish differences when it should,
nobody
> else
> > > involved in the countdown process is going to notice.
> > 
> > this is why I am extending the if case to be symmetric. We already
know that
> the
> > addition of files is handled correctly. Making a minimal change here
avoids
> some
> > QA.
> 
> It's not completely clear to me, but what I infer from this is that
the extent
> of your testing has been to run make check and observe that it no
longer
> crashes.  Is that right, or have you looked closely enough to describe
how the
> two cases I previously mentioned are presented now?  My biggest
concern is that
> table of differences might have no row for the missing file.  I don't
think it's
> safe to assume that the calling code handles removal like it handles
addition;
> my reason for believing this is that I implemented the handling of
added test
> cases, and I did not aim to handle removed test cases when I did it.

I spent some time today to look into this, and you were (of course)
right. 

It turned out to be a big change; it's over here  

 
https://codereview.appspot.com/581770043/diff/561510043/scripts/build/output-distance.py

it leaves striped cells for removed files. I don't think it's feasible
to do much better, or we'd have to extend output-distance to infer what
kind of files are to be expected. That will likely be brittle logic.

I am also both proud and annoyed at myself 13 years ago, because I added
a test to output-distance (see the --test flag), but then didn't
integrate it into the build, and it's been broken since July 2007.

If you want to see cleanup separate from logic changes, see 

  https://github.com/hanwen/lilypond/commits/output-distance-test




https://codereview.appspot.com/583590043/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]