888402">

Debian Bug report logs - #888402
diffoscope: Also report differences in file metadata when comparing individual files

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: Paul Wise <pabs@debian.org>

Date: Thu, 25 Jan 2018 04:09:01 UTC

Severity: wishlist

Found in version diffoscope/90

Fixed in version diffoscope/91

Done: Mattia Rizzolo <mattia@debian.org>

Bug is archived. No further changes may be made.

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#888402; Package diffoscope. (Thu, 25 Jan 2018 04:09:04 GMT) (full text, mbox, link).


Acknowledgement sent to Paul Wise <pabs@debian.org>:
New Bug report received and forwarded. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Thu, 25 Jan 2018 04:09:04 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, > --------------e---- foo > ----i---------e---- bar > > > $ mkdir 1 2 > $ echo foo > 1/foo ; date > Thu 25 Jan 12:02:34 AWST 2018 ">reply):

From: Paul Wise <pabs@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: diffoscope: report differences in file metadata when comparing files
Date: Thu, 25 Jan 2018 12:05:57 +0800
[Message part 1 (text/plain, inline)]
Package: diffoscope
Version: 90
Severity: wishlist

Currently, when comparing individual files, diffoscope does not
report any of the metadata that it reports when comparing files in
directories. It would be useful in some situations to have that.

$ echo foo > foo ; date
Thu 25 Jan 11:50:42 AWST 2018
$ echo foo > bar ; date
Thu 25 Jan 11:50:46 AWST 2018
$ chmod 777 bar
$ setfacl -m u:nobody:r bar
$ setfattr -n user.xdg.origin.url -v bar bar
$ sudo chattr +i bar
$ diffoscope --no-progress foo bar
$ stat foo bar ; getfacl foo bar ; getfattr -dR foo bar ; lsattr foo bar
  File: foo
  Size: 4         	Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 6038024     Links: 1
Access: (0640/-rw-r-----)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
Access: 2018-01-25 11:54:04.847312293 +0800
Modify: 2018-01-25 11:50:42.973529209 +0800
Change: 2018-01-25 11:50:42.973529209 +0800
 Birth: -
  File: bar
  Size: 4         	Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 6038025     Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
Access: 2018-01-25 11:54:20.063144546 +0800
Modify: 2018-01-25 11:50:46.649489005 +0800
Change: 2018-01-25 11:54:17.303174979 +0800
 Birth: -
# file: foo
# owner: pabs
# group: pabs
user::rw-
group::r--
other::---

# file: bar
# owner: pabs
# group: pabs
user::rwx
user:nobody:r--
group::rwx
mask::rwx
other::rwx

# file: bar
user.xdg.origin.url="bar"

--------------e---- foo
----i---------e---- bar


$ mkdir 1 2
$ echo foo > 1/foo ; date
Thu 25 Jan 12:02:34 AWST 2018
$ echo foo > 2/foo ; date
Thu 25 Jan 12:02:38 AWST 2018
$ chmod 777 2/foo
$ setfacl -m u:nobody:r 2/foo
$ setfattr -n user.xdg.origin.url -v bar 2/foo
$ sudo chattr +i 2/foo
$ diffoscope --no-progress 1 2
--- 1
+++ 2
+-- stat {}
| @@ -1,8 +1,8 @@
|  
|    Size: 4096      	Blocks: 8          IO Block: 4096   directory
|  Links: 2
|  Access: (0750/drwxr-x---)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
|  
| -Modify: 2018-01-25 04:02:34.825610344 +0000
| +Modify: 2018-01-25 04:02:38.793559855 +0000
|  
|   Birth: -
|   --- 1/foo
+-- +++ 2/foo
| +-- stat {}
| | @@ -1,8 +1,8 @@
| |  
| |    Size: 4         	Blocks: 8          IO Block: 4096   regular file
| |  Links: 1
| | -Access: (0640/-rw-r-----)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
| | +Access: (0777/-rwxrwxrwx)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
| |  
| | -Modify: 2018-01-25 04:02:34.825610344 +0000
| | +Modify: 2018-01-25 04:02:38.793559855 +0000
| |  
| |   Birth: -
| +-- getfacl -p -c {}
| | @@ -1,4 +1,6 @@
| | -user::rw-
| | -group::r--
| | -other::---
| | +user::rwx
| | +user:nobody:r--
| | +group::rwx
| | +mask::rwx
| | +other::rwx
| +-- lsattr
| | @@ -1 +1 @@
| | ---------------e----
| | +----i---------e----
$ stat 1/foo 2/foo ; getfacl 1/foo 2/foo ; getfattr -dR 1/foo 2/foo ; lsattr 1/foo 2/foo
  File: 1/foo
  Size: 4         	Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 6038026     Links: 1
Access: (0640/-rw-r-----)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
Access: 2018-01-25 12:03:30.860897857 +0800
Modify: 2018-01-25 12:02:34.825610344 +0800
Change: 2018-01-25 12:02:34.825610344 +0800
 Birth: -
  File: 2/foo
  Size: 4         	Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 6038027     Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/    pabs)   Gid: ( 1000/    pabs)
Access: 2018-01-25 12:03:30.860897857 +0800
Modify: 2018-01-25 12:02:38.793559855 +0800
Change: 2018-01-25 12:03:19.089047443 +0800
 Birth: -
# file: 1/foo
# owner: pabs
# group: pabs
user::rw-
group::r--
other::---

# file: 2/foo
# owner: pabs
# group: pabs
user::rwx
user:nobody:r--
group::rwx
mask::rwx
other::rwx

# file: 2/foo
user.xdg.origin.url="bar"

--------------e---- 1/foo
----i---------e---- 2/foo

-- 
bye,
pabs

https://wiki.debian.org/PaulWise
[signature.asc (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#888402; Package diffoscope. (Thu, 25 Jan 2018 04:21: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>. (Thu, 25 Jan 2018 04:21:03 GMT) (full text, mbox, link).


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

From: Chris Lamb <lamby@debian.org>
To: 888402@bugs.debian.org
Cc: Paul Wise <pabs@debian.org>
Subject: Re: diffoscope: report differences in file metadata when comparing files
Date: Thu, 25 Jan 2018 09:49:11 +0530
tags 888402 + pending
thanks

Hi Paul,

Implemented in Git here:

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

For example:

  --- 1
  +++ 2
  ├── stat {}
  │ @@ -1,8 +1,8 @@
  │  
  │    Size: 4096      	Blocks: 8          IO Block: 4096   directory
  │  Links: 2
  │  Access: (0755/drwxr-xr-x)  Uid: ( 1000/   lamby)   Gid: ( 1000/   lamby)
  │  
  │ -Modify: 2018-01-25 03:55:24.736417351 +0000
  │ +Modify: 2018-01-25 03:55:32.616473909 +0000
  │  
  │   Birth: -
  │   --- 1/index.html
  ├── +++ 2/index.html
  │ ├── stat {}
  │ │ @@ -1,8 +1,8 @@
  │ │  
  │ │    Size: 15060     	Blocks: 32         IO Block: 4096   regular file
  │ │  Links: 1
  │ │  Access: (0644/-rw-r--r--)  Uid: ( 1000/   lamby)   Gid: ( 1000/   lamby)
  │ │  
  │ │ -Modify: 2018-01-24 23:45:55.000000000 +0000
  │ │ +Modify: 2018-01-25 03:55:32.616473909 +0000
  │ │  
  │ │   Birth: -
  │ ├── extended file attributes
  │ │ @@ -1 +0,0 @@
  │ │ -user.xdg.origin.url: https://www.debian.org/

Enjoy!


Best wishes,

-- 
      ,''`.
     : :'  :     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. (Thu, 25 Jan 2018 04:21:04 GMT) (full text, mbox, link).


Removed tag(s) pending. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Thu, 25 Jan 2018 04:27:05 GMT) (full text, mbox, link).


Changed Bug title to 'diffoscope: Also report differences in file metadata when comparing individual files' from 'diffoscope: report differences in file metadata when comparing files'. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Thu, 25 Jan 2018 04:33:03 GMT) (full text, mbox, link).


Information forwarded to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#888402; Package diffoscope. (Thu, 25 Jan 2018 22:39:07 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, 25 Jan 2018 22:39:07 GMT) (full text, mbox, link).


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

From: Chris Lamb <lamby@debian.org>
To: 888402@bugs.debian.org
Cc: Paul Wise <pabs@debian.org>
Subject: Re: diffoscope: Also report differences in file metadata when comparing individual files
Date: Fri, 26 Jan 2018 04:07:56 +0530
tags 888402 + pending
thanks

Fixed in Git:

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


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. (Thu, 25 Jan 2018 22:39:09 GMT) (full text, mbox, link).


Reply sent to Mattia Rizzolo <mattia@debian.org>:
You have taken responsibility. (Thu, 01 Mar 2018 13:09:28 GMT) (full text, mbox, link).


Notification sent to Paul Wise <pabs@debian.org>:
Bug acknowledged by developer. (Thu, 01 Mar 2018 13:09:28 GMT) (full text, mbox, link).


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

From: Mattia Rizzolo <mattia@debian.org>
To: 888402-close@bugs.debian.org
Subject: Bug#888402: fixed in diffoscope 91
Date: Thu, 01 Mar 2018 13:05:09 +0000
Source: diffoscope
Source-Version: 91

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 888402@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mattia Rizzolo <mattia@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: SHA512

Format: 1.8
Date: Thu, 01 Mar 2018 13:40:48 +0100
Source: diffoscope
Binary: diffoscope
Architecture: source
Version: 91
Distribution: unstable
Urgency: medium
Maintainer: Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>
Changed-By: Mattia Rizzolo <mattia@debian.org>
Description:
 diffoscope - in-depth comparison of files, archives, and directories
Closes: 849386 863879 863880 877726 886736 886963 887180 888112 888401 888402 890528
Changes:
 diffoscope (91) unstable; urgency=medium
 .
   [ Mattia Rizzolo ]
   * d/clean: Remove .cache/.
   * diff: Wrap long regular expression for improved readability.
   * comparators.json: Fix UnicodeDecodeError with a non-UTF8 locale.
   * d/copyright: Update for the new year.
   * d/control: Bump Standards-Version to 4.1.3, no changes needed.
   * tests/android:
     + Skip tests involving abootimg on BE archs (see #725729).
 .
   [ Daniel Shahaf ]
   * diffoscope.diff: Document feeders.  Closes: #863880
   * Optimize the common case of feeders.  Closes: #863879
 .
   [ Juliana Oliveira ]
   * {tempfiles, utils.archive}: catch possible FileNotFoundError.
   * comparators.java: add support for procyon-decompiler.  Closes: #849386
   * {command, feeders, diff}: replaces subprocess.Popen() by .run().
     This is done in preparation for work on multiprocessing (#842837).
     + {command, zip, feeders}: replaces .wait by the new .returncode property.
     + comparators.utils.command: replaces .stderr_content by .stderr.
   * tests:
     + test_progress: fix test case for some broken versions of
       python-progressbar.  Closes: #877726
     + utils.tools: add support for modules on skip_unless* annotations.
 .
   [ Chris Lamb ]
   * comparators:
     + utils/compare:
       - Show extended filesystem metadata even when directly comparing two
         files, not just when we specify two directories.  Closes: #888402
     + macho:
       - If the If the LLVM disassembler does not work, try the
         internal one.  Closes: #886736
       - Always strip the filename, not just when by itself.
     + json:
       - Do some cheap fuzzy parsing to detect JSON files not named .json.
       - Also match unicode JSON files.
       - Optionally compare JSONs with the jsondiff module.  Closes: #888112
     + directory:
       - Report differences in extended file attributes when comparing files.
         Closes: #888401
     + xsb:
       - Add support for comparing XMLBeans binary schemas.
     + barkeley_db:
       - Add support for comparing Berkeley DB files.  Closes: #890528
   * Misc code cleaup.
   * tests:
     + comparators.test_elf: Return '0' if we can't parse the readelf
       version number.  Closes: #886963
   * debian:
     + Explicitly build-depend and recommend e2fsprogs.  Closes: #887180
 .
   [ Ximin Luo ]
   * Partially revert the changes done for #888402 to maintain the current.
     behaviour of --exclude-directory-metadata.
   * Refactor how the configuration is loaded:
     + Move the defaults into a Config.reset() method.
     + reset() the configuration at the end of main(), to help the testsuite.
Checksums-Sha1:
 cf78d47c07e0cea4b0d667c02a0beff82b2cb28b 3429 diffoscope_91.dsc
 f10a233ff4469d6405eac3bc6c03da6d33962efb 8935512 diffoscope_91.tar.xz
 1413267eea08eb05b0664a4ba13b46abc50a9df7 20151 diffoscope_91_amd64.buildinfo
Checksums-Sha256:
 28e12196a5e461349d1cfdfa96bb3914337f6bd6327d13637de80a5bedd08169 3429 diffoscope_91.dsc
 12034827db747b831b0c80a340f607c8ac4b85936610d38985138631b8a4f0ee 8935512 diffoscope_91.tar.xz
 a456c23241bed0e2dc6230a03e3f7897ad9a715f54da1e662b4f7864c0804d5f 20151 diffoscope_91_amd64.buildinfo
Files:
 4a1c8bd026d379c91fec4db88eee3679 3429 devel optional diffoscope_91.dsc
 a72769fc6dc5f80c6a31b8730234444a 8935512 devel optional diffoscope_91.tar.xz
 728e5ffa6fff19b50c3baf3dfe0a2ee6 20151 devel optional diffoscope_91_amd64.buildinfo

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

iQIzBAEBCgAdFiEEi3hoeGwz5cZMTQpICBa54Yx2K60FAlqX9qYACgkQCBa54Yx2
K62jGg/+J2JLNEmq/nVoNa182wyzTzerZVy03V5Pc4WBt1pyZ4DPbvDrAhZvWZmP
qBXr54UxkbbNfXa+fYAph4xr7D5xL4olDEOFRcDf5UJfGwdjaravc6CeE1z915eW
IJkFIOd17ySKlxM5RAVQ1xtQqXiCsBBHa4W2XryleNivJOSOKotEbkEul8MrregE
HREtWF76l7t5Mas2bFxD0xjYAfIYgB8vDLCFnsoOHsqUKksf2PYr60ge2CmCLKUO
Lw/gTcXD+T8k6UBoC2HXmU/2Wgsd9KClAOHUWwdJK78akvvjSC+zBfcewW1vtM1P
lVui0SjSmd7K3suNZgNnrCboKpq7J8ULR8g1GikElxV6orkDsmhX5SfqgsiqWsqw
yZbm1VHRBtOawnQUD8U2bLqVZsTOsE5JMF7ehHjGehEgoCgg3oNTbY8cIAWyd8y/
erk43kNYKhYdHbEfpvGRJekSvJOS8BY4h94ThJ1B4dElUhMzESJ5Fa2S/Ik3fyDS
WKWY8rS3WSons4WL+yjvd7Y2hfuf/IWt6XaG2rge3ODJlwD3BxFrLg7NzkNhH7NJ
a1yITYx2JbMahQZQribpkdPiFcx38y0LcAT25br8AY+asa0fr7qPOfshQfytFiIs
bDfMRuWM5I6KsCwvE4Gtjrawrux03EdbB0piGQzWKpfAmO3qqdE=
=L47V
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Tue, 03 Apr 2018 07:25:34 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: Mon Feb 3 06:39:51 2025; Machine Name: bembo

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU General 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.