Bug#865446: dgit: want improved quilt failure messages

2017-07-07 Thread Felipe Sateler
On Wed, Jun 21, 2017 at 10:47 AM, Ian Jackson
<ijack...@chiark.greenend.org.uk> wrote:
> Ian Jackson writes ("Re: Bug#865446: dgit: want improved quilt failure 
> messages"):
>> Felipe Sateler writes ("Bug#865446: dgit: want improved quilt failure 
>> messages"):
>> > | dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
>> > | dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p
>> > | dgit: --quilt=gbp specified, implying patches-unapplied git tree
>> > | dgit:  but git tree differs from orig in upstream files.
> ...
>> > 1. Remove the first two lines. They are very confusing for the
>> > uninitiated. I still don't grok what they mean.
> ...
>> This information is extremely useful to a dgit developer and I don't
>> want to drop it.  I'd be open to changing `quilt differences' to
>> something more obviously inclined to have the user ignore it.
>
> How about
>
>   | dgit: experts' info: src:  ## orig ## gitignores:  == orig ==
>   | dgit: experts' info:  HEAD ## o+d/p   HEAD == o+d/p
>
> ?

I've been thinking a bit about this. If this is important to keep, I
guess it's fine if the relevant git diff command is printed too.
Ignoring the part one does not understand seems doable.

Alternatively, dgit could grow a --debug or --verbose flag printing
these details that are useful for debugging.

-- 

Saludos,
Felipe Sateler



Bug#865446: dgit: want improved quilt failure messages

2017-06-24 Thread Sean Whitton
Hello Ian and Felipe,

Ian Jackson writes ("dgit: want improved quilt failure messages"):
> Control: clone -1 -2
> Control: retitle -2 want improved quilt failure messages
> Control: severity -2 normal
...
> Felipe complains that these messages are not very easy to understand.
> Indeed things are complicated.
> 
> Would it be helpful to provide a git diff rune in the output ?
> Eg
> 
>   |  dgit: --quilt=gbp specified, implying patches-unapplied git tree
>   |  dgit:  but git tree differs from orig in upstream files.
> + |  dgit:  This command shows the troublesome differences:
> + |  dgit:   git-diff d510ca798480f37fc567 -- . ':!.gitignore' ':!debian'

Yes, this would be very helpful.

Previously, I've flailed and used various crude heuristics to try to
find out what was wrong, with no involvement from dgit, instead just
applying my knowledge of dgit's fundamental operating assumptions.

Indeed, I had no idea that dgit creates a commit matching the orig.tar.
If I'd known that, I'd probably have been able to find the discrepancy
much faster!

On Wed, Jun 21, 2017 at 03:45:21PM +0100, Ian Jackson wrote:
> They are a compat representation of which trees differ from which
> other treeshow.  It's two triangular pictures; `==' means `trees
> either side of this are the same in this respect' and `##' means they
> differ.

This paragraph, and the previous e-mail you wrote in which you walked
Felipe through the output, should be in one of dgit's manpages.  It
would be a shame if this information were not shared widely.

Since it might be a long explanation, perhaps it should go in a separate
manpage.  I'd suggest the name dgit-output(7) (or maybe section 5), in
case we want to add other explanations of other detailed output later.

> This information is extremely useful to a dgit developer and I don't
> want to drop it.  I'd be open to changing `quilt differences' to
> something more obviously inclined to have the user ignore it.

On Wed, Jun 21, 2017 at 03:47:30PM +0100, Ian Jackson wrote:
> How about
> 
>   | dgit: experts' info: src:  ## orig ## gitignores:  == orig ==
>   | dgit: experts' info:  HEAD ## o+d/p   HEAD == o+d/p

I find "experts' info" a bit off-putting.

If the git diff commands are added in plain sight at the bottom of the
output, IMHO no additional experts-only warning is required.

-- 
Sean Whitton


signature.asc
Description: PGP signature


Bug#865446: dgit: want improved quilt failure messages

2017-06-21 Thread Ian Jackson
Ian Jackson writes ("Re: Bug#865446: dgit: want improved quilt failure 
messages"):
> Felipe Sateler writes ("Bug#865446: dgit: want improved quilt failure 
> messages"):
> > | dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
> > | dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p
> > | dgit: --quilt=gbp specified, implying patches-unapplied git tree
> > | dgit:  but git tree differs from orig in upstream files.
...
> > 1. Remove the first two lines. They are very confusing for the
> > uninitiated. I still don't grok what they mean.
...
> This information is extremely useful to a dgit developer and I don't
> want to drop it.  I'd be open to changing `quilt differences' to
> something more obviously inclined to have the user ignore it.

How about

  | dgit: experts' info: src:  ## orig ## gitignores:  == orig ==
  | dgit: experts' info:  HEAD ## o+d/p   HEAD == o+d/p

?

Ian.



Bug#865446: dgit: want improved quilt failure messages

2017-06-21 Thread Ian Jackson
Felipe Sateler writes ("Bug#865446: dgit: want improved quilt failure 
messages"):
> I quote here the full original message:
> 
> | dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
> | dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p
> | dgit: --quilt=gbp specified, implying patches-unapplied git tree
> | dgit:  but git tree differs from orig in upstream files.
> 
> 
> I think dgit should:
> 
> 1. Remove the first two lines. They are very confusing for the
> uninitiated. I still don't grok what they mean.

They are a compat representation of which trees differ from which
other treeshow.  It's two triangular pictures; `==' means `trees
either side of this are the same in this respect' and `##' means they
differ.

This information is extremely useful to a dgit developer and I don't
want to drop it.  I'd be open to changing `quilt differences' to
something more obviously inclined to have the user ignore it.

> 2. Add the output of `git diff --name-only d510ca798480f37fc567 -- .
> ':!.gitignore' ':!debian'` , so that the offending files are known,
> but the output is not too large.

dgit used to do something like this.  But in some failure modes the
output can be very large: even, a list of all the build outputs in the
package, or all the files.

Printing this output was, I found, more of a nuisance than a help.

> 3. Add the two lines you suggested, to make it easy to investigate the
> differences.
> 
> Mutatis mutandis when there are differences with the second tree dgit builds.

Yes.

Ian.



Bug#865446: dgit: want improved quilt failure messages

2017-06-21 Thread Felipe Sateler
On Wed, Jun 21, 2017 at 10:05 AM, Ian Jackson
 wrote:
> Ian Jackson writes ("dgit: want improved quilt failure messages"):
>> Control: clone -1 -2
>> Control: retitle -2 want improved quilt failure messages
>> Control: severity -2 normal
> ...
>> Felipe complains that these messages are not very easy to understand.
>> Indeed things are complicated.
>>
>> Would it be helpful to provide a git diff rune in the output ?
>> Eg
>>
>>   |  dgit: --quilt=gbp specified, implying patches-unapplied git tree
>>   |  dgit:  but git tree differs from orig in upstream files.
>> + |  dgit:  This command shows the troublesome differences:
>> + |  dgit:   git-diff d510ca798480f37fc567 -- . ':!.gitignore' ':!debian'

I quote here the full original message:

| dgit: quilt differences: src:  ## orig ## gitignores:  == orig ==
| dgit: quilt differences:  HEAD ## o+d/p   HEAD == o+d/p
| dgit: --quilt=gbp specified, implying patches-unapplied git tree
| dgit:  but git tree differs from orig in upstream files.


I think dgit should:

1. Remove the first two lines. They are very confusing for the
uninitiated. I still don't grok what they mean.
2. Add the output of `git diff --name-only d510ca798480f37fc567 -- .
':!.gitignore' ':!debian'` , so that the offending files are known,
but the output is not too large.
3. Add the two lines you suggested, to make it easy to investigate the
differences.

Mutatis mutandis when there are differences with the second tree dgit builds.

-- 

Saludos,
Felipe Sateler



Bug#865446: dgit: want improved quilt failure messages

2017-06-21 Thread Ian Jackson
Ian Jackson writes ("dgit: want improved quilt failure messages"):
> Control: clone -1 -2
> Control: retitle -2 want improved quilt failure messages
> Control: severity -2 normal
...
> Felipe complains that these messages are not very easy to understand.
> Indeed things are complicated.
> 
> Would it be helpful to provide a git diff rune in the output ?
> Eg
> 
>   |  dgit: --quilt=gbp specified, implying patches-unapplied git tree
>   |  dgit:  but git tree differs from orig in upstream files.
> + |  dgit:  This command shows the troublesome differences:
> + |  dgit:   git-diff d510ca798480f37fc567 -- . ':!.gitignore' ':!debian'

Please reply to this point here in #865446.

Ian.