Debian Bug report logs - #843531
diffoscope: walks through packages twice when comparing two .changes

version graph

Package: diffoscope; Maintainer for diffoscope is Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>; Source for diffoscope is src:diffoscope (PTS, buildd, popcon).

Reported by: Mattia Rizzolo <mattia@debian.org>

Date: Mon, 7 Nov 2016 13:42:01 UTC

Severity: normal

Fixed in version diffoscope/65

Done: Chris Lamb <lamby@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#843531; Package diffoscope. (Mon, 07 Nov 2016 13:42:03 GMT) (full text, mbox, link).


Message #3 received at submit@bugs.debian.org (full text, mbox, reply):

From: Mattia Rizzolo <mattia@debian.org>
To: submit@bugs.debian.org
Subject: diffoscope: walk through packages twice when comparing two .changes
Date: Mon, 7 Nov 2016 13:38:03 +0000
[Message part 1 (text/plain, inline)]
package: diffoscope

If you compare two .changes containing .buildinfo in them, diffoscope
will work its way through the binaries twice, through:
    .changes → .deb → file
    .changes → .buildinfo → .deb → file

This leads to:
 * double comparison time
 * differences reported twice in the report (this also means that every
   package will most probably hit the "max report size" limit)
 * annoyance to the user.

-- 
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 (application/pgp-signature, inline)]

Changed Bug title to 'diffoscope: walks through packages twice when comparing two .changes' from 'diffoscope: walk through packages twice when comparing two .changes'. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Wed, 21 Dec 2016 22:03:06 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#843531; Package diffoscope. (Wed, 21 Dec 2016 23:03:03 GMT) (full text, mbox, link).


Acknowledgement sent to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Wed, 21 Dec 2016 23:03:03 GMT) (full text, mbox, link).


Message #10 received at 843531@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 843531@bugs.debian.org
Cc: Mattia Rizzolo <mattia@debian.org>
Subject: Re: diffoscope: walks through packages twice when comparing two .changes
Date: Wed, 21 Dec 2016 23:01:53 +0000
[Message part 1 (text/plain, inline)]
Hi Mattia,

> diffoscope: walks through packages twice when comparing two .changes

Could you try the attached patch?

  commit 55240ad42188c963dde092ba1b090f95bb8cf83c
  Author: Chris Lamb <lamby@debian.org>
  Date:   Wed Dec 21 23:00:56 2016 +0000
  
      Avoid walking through packages twice when comparing two .changes (Closes: #843531)
      
      Signed-off-by: Chris Lamb <lamby@debian.org>
  
   diffoscope/comparators/debian.py | 7 +++++++
   1 file changed, 7 insertions(+)


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-
[0001-Avoid-walking-through-packages-twice-when-comparing-.patch (text/x-diff, attachment)]

Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#843531; Package diffoscope. (Wed, 21 Dec 2016 23:09:02 GMT) (full text, mbox, link).


Acknowledgement sent to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Wed, 21 Dec 2016 23:09:02 GMT) (full text, mbox, link).


Message #15 received at 843531@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 843531@bugs.debian.org
Cc: Mattia Rizzolo <mattia@debian.org>
Subject: Re: diffoscope: walks through packages twice when comparing two .changes
Date: Wed, 21 Dec 2016 23:07:30 +0000
[Message part 1 (text/plain, inline)]
Hi again,

> diffoscope: walks through packages twice when comparing two .changes

(Cleaner version attached)


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-
[0001-Avoid-walking-through-packages-twice-when-comparing-.patch (text/x-diff, attachment)]

Added tag(s) patch. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Thu, 22 Dec 2016 09:09:05 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#843531; Package diffoscope. (Thu, 22 Dec 2016 13:27:03 GMT) (full text, mbox, link).


Acknowledgement sent to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Thu, 22 Dec 2016 13:27:03 GMT) (full text, mbox, link).


Message #22 received at 843531@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 843531@bugs.debian.org
Cc: Mattia Rizzolo <mattia@debian.org>
Subject: Re: diffoscope: walks through packages twice when comparing two .changes
Date: Thu, 22 Dec 2016 13:25:30 +0000
tags 843531 - patch
thanks

> diffoscope: walks through packages twice when comparing two .changes

Thu 22 13:17 <        mapreri > lamby: btw, your commit does seem to do 
                                the work, but I'm still not confident  
                                as to whether there are other  
                                implications or whatnot, so I'd prefer  
                                to stare at it some more before merging 
                                on master 
Thu 22 13:18 <          lamby > mapreri: Could you easily construct a  
                                test? 
Thu 22 13:18 <          lamby > I'm not committing it without one. (In  
                                fact, I regret adding the patch tag.) 
Thu 22 13:20 < mapreri> ah, no, it's broken :( 
Thu 22 13:20 < mapreri> if you try to diff 2 .buildinfo it won't  
                        recurse over the .debs anymore 
Thu 22 13:20 < mapreri> and no, I haven't forged a nice test for the  
                        testsuite, just running it against an  
                        unreproducible package                         
Thu 22 13:20 < mapreri> I should probably do that, but I'm not sure
                        about how to do it.

[..]

Thu 22 13:23 <        mapreri > lamby: if it wasn't clear enough, this is what happens (first with your patch, after without https://paste.debian.net/plain/903968).  if comparing .changes runs as wanted.


(Using mock module might be helpful for a testcase)


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-



Removed tag(s) patch. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Thu, 22 Dec 2016 13:27:06 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#843531; Package diffoscope. (Fri, 23 Dec 2016 11:36:06 GMT) (full text, mbox, link).


Acknowledgement sent to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Fri, 23 Dec 2016 11:36:06 GMT) (full text, mbox, link).


Message #29 received at 843531@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 843531@bugs.debian.org
Cc: Mattia Rizzolo <mattia@debian.org>
Subject: Re: diffoscope: walks through packages twice when comparing two .changes
Date: Fri, 23 Dec 2016 11:32:59 +0000
tags 843531 + pending
thanks

Pushed to master:

  https://anonscm.debian.org/git/reproducible/diffoscope.git/commit/?id=f47459f


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-



Added tag(s) pending. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Fri, 23 Dec 2016 11:36:09 GMT) (full text, mbox, link).


Reply sent to Chris Lamb <lamby@debian.org>:
You have taken responsibility. (Fri, 23 Dec 2016 12:21:05 GMT) (full text, mbox, link).


Notification sent to Mattia Rizzolo <mattia@debian.org>:
Bug acknowledged by developer. (Fri, 23 Dec 2016 12:21:05 GMT) (full text, mbox, link).


Message #36 received at 843531-close@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 843531-close@bugs.debian.org
Subject: Bug#843531: fixed in diffoscope 65
Date: Fri, 23 Dec 2016 12:18:24 +0000
Source: diffoscope
Source-Version: 65

We believe that the bug you reported is fixed in the latest version of
diffoscope, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 843531@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Chris Lamb <lamby@debian.org> (supplier of updated diffoscope package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Fri, 23 Dec 2016 11:58:15 +0000
Source: diffoscope
Binary: diffoscope
Architecture: source
Version: 65
Distribution: unstable
Urgency: medium
Maintainer: Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>
Changed-By: Chris Lamb <lamby@debian.org>
Description:
 diffoscope - in-depth comparison of files, archives, and directories
Closes: 843531
Changes:
 diffoscope (65) unstable; urgency=medium
 .
   [ Chris Lamb ]
   * Avoid unpacking packages twice when comparing .changes. (Closes: #843531)
   * Add a simple profiling framework (enabled via --profile) which tracks:
     - Container extraction, opening and closing times.
     - The "compare_files" top-level/recursive method.
     - The time taken to produce the various output formats.
     - All "has_same_content_as" and "recognizes" methods.
     - External commands that wrap "@tool_required".
     - External commands that use "make_feeder_from_command".
     - The internal/external "cmp" methods.
     - Some manual calls to subprocess.check_output().
   * Tidy log messages:
     * Clarify the meaning of the compare_files and Binary.has_same_content
       debug messages.
     * Skip low-value "X is already specialized" message.
     * Correct "instantiating" typo.
 .
   [ Emanuel Bronshtein ]
   * Use ssh-keygen for comparing OpenSSH public keys
   * Remove inline styles from col elements
Checksums-Sha1:
 a30e82187a207caaf21325a47c90b70020550a91 2923 diffoscope_65.dsc
 ea7a299e150d44b63ec8d2cadde778e8f6c64ad7 315288 diffoscope_65.tar.xz
Checksums-Sha256:
 5ff2b70302265bb6ae2a064d3a082ab0502fc5fe255391d38c826f960766aa2c 2923 diffoscope_65.dsc
 7ef4b97b65960989aa6d1859d5c9654a7127cdc1a699cb1d57253f564fea8ec2 315288 diffoscope_65.tar.xz
Files:
 30b36a4d573e066e41c4fb1e83d68c18 2923 devel optional diffoscope_65.dsc
 1930ae9500e7dab9363b1ef6cb3abb67 315288 devel optional diffoscope_65.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEwv5L0nHBObhsUz5GHpU+J9QxHlgFAlhdEkoACgkQHpU+J9Qx
HlhNew/+NPCxnRV0FaLPwzPJc+NNvBYkKk+Q2rQYBn89YcxJpHMhFOA9xJ5roBAs
FtlWbDazPNhMZHxbN/TnoeEXg32NHUKS4I7z4ezg2QTsYSpWEuCMLuAuqY8weDzp
IsaX+vAVEe29dZJdDMN6MVsA9Zg9Z7ZuTDfWmrPv4xuPJ2yJ8LTVQLSt5qNQhlmY
l32pzhXf63LjKypwzIne0piaN41dxuax0uhVnYFkC0MEgPbMbs8st/FSvgTKZnJK
FZTczpWpUHgLQurB3TFunbE0DzoipE6qenHvYfiTA3K9rEE785hvYEneGkY69dLR
Kxone0FdDd61wmpOK7K9zxLKS/n8fr+If7F3LSslou2wIFORy6N3zPbImkXgZufs
W+NFotdkadcw10kqIsF1QkClqj7iZGY6Zq8CCzSG439quMoGsBlL354tpjSSce/z
mZ6ht5R/Tmj8NTtLgHRUbM0dSYQu9yQqlJ9QpowzcFYobK0gj4xgpriYpbZ8lgdU
dRiLmopdXQInqLf906Ksa8ZYeJC+8RcKHAhmZSP1B+Ts6CpWcpXr12e3Wy93uGXc
AGWxSUTEg4XgdE1ilskXvQoff+2oBFaIMOpGmB9cE7oFtZmqoVxLea1sfHh5UDek
VPmpHw0bNpyOtnrsfXKtX+D9K2QZB/dJQpqkA+XR1AdT+vvJaUg=
=/LZ4
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Wed, 01 Feb 2017 07:27:47 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Wed May 17 14:08:35 2023; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.