Bug#929629: mergechanges drops the binary packages from the Binary field when merging source and binary changes

2019-05-30 Thread Simon McVittie
Control: tags -1 + moreinfo

On Mon, 27 May 2019 at 23:15:27 +0100, Simon McVittie wrote:
> On Mon, 27 May 2019 at 16:29:57 +0200, Matthias Klose wrote:
> > mergechanges drops the binary packages from the Binary field when merging 
> > source
> > and binary changes.  Seen when trying to re-upload the binary openjdk-8 
> > packages
> > which were removed from unstable (all files at coccia.d.o:~doko/8).

Are you sure you were using devscripts 2.19.5 as stated in the bug report,
and not the devscripts 2.17.6+deb9u2 installed on coccia or another
stretch system? This looks as though you were using a mergechanges
version where #920470 has not yet been fixed.

It's helpful to run reportbug(1) (or at least reportbug --template)
on the exact system where you can reproduce a bug, to ensure that the
right information is included in the bug report.

> What were the inputs to mergechanges, what arguments and configuration
> did you use for mergechanges, what value did you expect for the Binary
> field, and what value did you actually get? Was it run on coccia or on
> some other system?

I have assumed that the command was the equivalent of:

mergechanges ~doko/8/openjdk-8_8u212-b01-1_{a*,i*,mi*,p*,s*}.changes

Your openjdk-8_8u212-b01-1_multi.changes~ (with the ~) on coccia has only:

Binary: openjdk-8-doc openjdk-8-source

and matches[1] the output that I see when I run the command above using
coccia's devscripts 2.17.6+deb9u2. That's consistent with the symptoms
of #920470, where only the Binary field from the first .changes file
(in this case _all) is used, and the rest are ignored. Am I correct to
assume that this is the output that prompted you to report this bug?

However, when I try that on my unstable system with devscripts 2.19.5,
where #920470 has been fixed, I get the union of all Binary fields:

Binary: openjdk-8-dbg openjdk-8-demo openjdk-8-doc openjdk-8-jdk 
openjdk-8-jdk-headless openjdk-8-jre openjdk-8-jre-headless openjdk-8-jre-zero 
openjdk-8-source

which seems correct to me.

This also matches[1] your openjdk-8_8u212-b01-1_multi.changes (without the
~) on coccia, except that yours has a duplicate mention of openjdk-8-doc
and openjdk-8-source in Binary. Was your _multi.changes constructed by
hand or by a different version of devscripts?

Thanks,
smcv

[1] When I say two .changes files match, I mean: the absence or content
of a PGP signature might differ, the hashes and sizes of the signed
.dsc and .buildinfo files might differ, and everything else is
exactly identical.



Bug#929629: mergechanges drops the binary packages from the Binary field when merging source and binary changes

2019-05-27 Thread Simon McVittie
On Mon, 27 May 2019 at 16:29:57 +0200, Matthias Klose wrote:
> mergechanges drops the binary packages from the Binary field when merging 
> source
> and binary changes.  Seen when trying to re-upload the binary openjdk-8 
> packages
> which were removed from unstable (all files at coccia.d.o:~doko/8).

The output ends up with a Binary field in at least some cases
(demonstrated by test/test_mergechanges and in particular the "Simple
merge" test-case) so presumably there is something different about either
the openjdk-8 .changes files, the way you invoked mergechanges or the
system where it was run that triggers this.

What were the inputs to mergechanges, what arguments and configuration
did you use for mergechanges, what value did you expect for the Binary
field, and what value did you actually get? Was it run on coccia or on
some other system?

(A failing test-case as a patch to test/test_mergechanges would be
particularly useful.)

On Mon, 27 May 2019 at 17:48:51 +0200, Mattia Rizzolo wrote:
> I think this is regression after your changes, would you happen to have
> the time to look at this and see if you can come up with a fix?

I'll try, but I can't guarantee anything right now.

smcv



Bug#929629: mergechanges drops the binary packages from the Binary field when merging source and binary changes

2019-05-27 Thread Mattia Rizzolo
Hi Simon,

On Mon, May 27, 2019 at 04:29:57PM +0200, Matthias Klose wrote:
> mergechanges drops the binary packages from the Binary field when merging 
> source
> and binary changes.  Seen when trying to re-upload the binary openjdk-8 
> packages
> which were removed from unstable (all files at coccia.d.o:~doko/8).

I think this is regression after your changes, would you happen to have
the time to look at this and see if you can come up with a fix?

-- 
regards,
Mattia Rizzolo

GPG Key: 66AE 2B4A FCCF 3F52 DA18  4D18 4B04 3FCD B944 4540  .''`.
more about me:  https://mapreri.org : :'  :
Launchpad user: https://launchpad.net/~mapreri  `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia  `-


signature.asc
Description: PGP signature


Bug#929629: mergechanges drops the binary packages from the Binary field when merging source and binary changes

2019-05-27 Thread Matthias Klose
Package: devscripts
Version: 2.19.5

mergechanges drops the binary packages from the Binary field when merging source
and binary changes.  Seen when trying to re-upload the binary openjdk-8 packages
which were removed from unstable (all files at coccia.d.o:~doko/8).