Debian Bug report logs - #874582
diffoscope: catches exception, while handling "no space left on device" exception

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: Holger Levsen <holger@debian.org>

Date: Thu, 7 Sep 2017 14:57:01 UTC

Severity: minor

Found in version diffoscope/78

Fixed in version diffoscope/114

Done: Chris Lamb <lamby@debian.org>

Bug is archived. No further changes may be made.

Forwarded to https://salsa.debian.org/reproducible-builds/diffoscope/issues/12

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#874582; Package diffoscope. (Thu, 07 Sep 2017 14:57:04 GMT) (full text, mbox, link).


Acknowledgement sent to Holger Levsen <holger@debian.org>:
New Bug report received and forwarded. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>. (Thu, 07 Sep 2017 14:57:04 GMT) (full text, mbox, link).


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

From: Holger Levsen <holger@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: diffoscope: caughts exception, while handling "no space left on device" exception
Date: Thu, 7 Sep 2017 16:55:49 +0200
[Message part 1 (text/plain, inline)]
Package: diffoscope
Version: 78
Severity: minor

hi,

when diffoscope hits ENOSPACE this is excepted, but sadly not really:

$ diffoscope doc/debian-edu-doc_1.923~20170823_amd64.changes debian-edu-doc_1.923~20170823_amd64.changes
Traceback (most recent call last):###########################|  100%                             ETA:  0:00:00 
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/libarchive.py", line 232, in ensure_unpacked
    f.write(block)
OSError: [Errno 28] No space left on device

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 285, in main
    sys.exit(run_diffoscope(parsed_args))
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 261, in run_diffoscope
    parsed_args.path1, parsed_args.path2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 64, in compare_root_paths
    return compare_files(file1, file2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 91, in compare_files
    return file1.compare(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/debian.py", line 185, in compare
    differences = super().compare(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 237, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 194, in _compare_using_details
    details.extend(filter(None, self.as_container.compare(other.as_container)))
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 94, in compare_commented_files
    difference = compare_files(file1, file2, source=source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 91, in compare_files
    return file1.compare(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 237, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 194, in _compare_using_details
    details.extend(filter(None, self.as_container.compare(other.as_container)))
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 94, in compare_commented_files
    difference = compare_files(file1, file2, source=source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 91, in compare_files
    return file1.compare(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 237, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 194, in _compare_using_details
    details.extend(filter(None, self.as_container.compare(other.as_container)))
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 94, in compare_commented_files
    difference = compare_files(file1, file2, source=source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 91, in compare_files
    return file1.compare(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 237, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 194, in _compare_using_details
    details.extend(filter(None, self.as_container.compare(other.as_container)))
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 94, in compare_commented_files
    difference = compare_files(file1, file2, source=source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/compare.py", line 79, in compare_files
    if file1.has_same_content_as(file2):
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/file.py", line 203, in has_same_content_as
    if os.path.isdir(self.path) or os.path.isdir(other.path):
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/archive.py", line 88, in path
    self._path = self.container.extract(self._name, self._temp_dir.name)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/libarchive.py", line 176, in extract
    self.ensure_unpacked()
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/utils/libarchive.py", line 232, in ensure_unpacked
    f.write(block)
OSError: [Errno 28] No space left on device


Please make diffoscope fail more gracefully, that is, without showing all this traceback to the user.

-- 
cheers,
	Holger
[signature.asc (application/pgp-signature, inline)]

Changed Bug title to 'diffoscope: catches exception, while handling "no space left on device" exception' from 'diffoscope: caughts exception, while handling "no space left on device" exception'. Request was from Holger Levsen <holger@layer-acht.org> to control@bugs.debian.org. (Thu, 07 Sep 2017 15:03: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#874582; Package diffoscope. (Sat, 15 Dec 2018 15:04:44 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>. (Sat, 15 Dec 2018 15:04:44 GMT) (full text, mbox, link).


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

From: Chris Lamb <lamby@debian.org>
To: 874582@bugs.debian.org
Cc: Holger Levsen <holger@debian.org>
Subject: Re: diffoscope: catches exception, while handling "no space left on device" exception
Date: Sat, 15 Dec 2018 16:02:33 +0100
forwarded 874582 https://salsa.debian.org/reproducible-builds/diffoscope/issues/12
thanks

I've forwarded this upstream here:

  https://salsa.debian.org/reproducible-builds/diffoscope/issues/12


Regards,

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



Set Bug forwarded-to-address to 'https://salsa.debian.org/reproducible-builds/diffoscope/issues/12'. Request was from Chris Lamb <lamby@debian.org> to control@bugs.debian.org. (Sat, 15 Dec 2018 15:05:02 GMT) (full text, mbox, link).


Message sent on to Holger Levsen <holger@debian.org>:
Bug#874582. (Sun, 28 Apr 2019 15:30:03 GMT) (full text, mbox, link).


Message #17 received at 874582-submitter@bugs.debian.org (full text, mbox, reply):

From: Chris Lamb <lamby@debian.org>
To: 874582-submitter@bugs.debian.org
Subject: Bug #874582 in diffoscope marked as pending
Date: Sun, 28 Apr 2019 15:28:20 +0000
Control: tag -1 pending

Hello,

Bug #874582 in diffoscope reported by you has been fixed in the
Git repository and is awaiting an upload. You can see the commit
message below and you can check the diff of the fix at:

https://salsa.debian.org/reproducible-builds/diffoscope/commit/dc5ad047f2e8a6baad7aeee7732664f2faeb7051

------------------------------------------------------------------------
Fail more gracefully when running out of diskspace. (Closes: #874582)

We catches the ENOSPC OSError at the top level and exit diffoscope without
printing the complete traceback. Other errors are raised and handled normally.

Signed-off-by: Chris Lamb <lamby@debian.org>
------------------------------------------------------------------------

(this message was generated automatically)
-- 
Greetings

https://bugs.debian.org/874582



Added tag(s) pending. Request was from Chris Lamb <lamby@debian.org> to 874582-submitter@bugs.debian.org. (Sun, 28 Apr 2019 15:30:03 GMT) (full text, mbox, link).


Reply sent to Chris Lamb <lamby@debian.org>:
You have taken responsibility. (Sun, 28 Apr 2019 16:36:06 GMT) (full text, mbox, link).


Notification sent to Holger Levsen <holger@debian.org>:
Bug acknowledged by developer. (Sun, 28 Apr 2019 16:36:06 GMT) (full text, mbox, link).


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

From: Chris Lamb <lamby@debian.org>
To: 874582-close@bugs.debian.org
Subject: Bug#874582: fixed in diffoscope 114
Date: Sun, 28 Apr 2019 16:33:46 +0000
Source: diffoscope
Source-Version: 114

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 874582@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: Sun, 28 Apr 2019 17:21:46 +0100
Source: diffoscope
Binary: diffoscope
Built-For-Profiles: nocheck
Architecture: source all
Version: 114
Distribution: experimental
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: 871244 874582 888237 905885
Changes:
 diffoscope (114) experimental; urgency=medium
 .
   [ Chris Lamb ]
   * Add support for GnuPG "keybox" files. Thanks to Daniel Kahn Gillmor for the
     suggestion. (Closes: #871244, reproducible-builds/diffoscope#23)
   * Always warn if tlsh module is not available (not just if a specific
     fuzziness threshold is specified) to match the epilog of the --help output.
     This prevents missing support for file rename detection.
     (Closes: #888237, reproducible-builds/diffoscope#29)
   * Treat missing tools on Debian autopkgtests as individual test failures by
     checking whether a new DIFFOSCOPE_TESTS_FAIL_ON_MISSING_TOOLS environment
     variable is exported. (Closes: #905885, reproducible-builds/diffoscope#35)
   * Require that "-" is explicitly specified to read a single diff from
     standard input to avoid non-intuitive behaviour when diffoscope is called
     without any arguments. (Closes: reproducible-builds/diffoscope#54)
   * Make --use-dbgsym a ternary operator to make it easier to totally disable.
     Thanks to Mattia Rizzolo for the suggestion.
   * Consolidate on "e" as the aliased exception name.
 .
   [ Milena Boselli Rosa ]
   * Various fixes to the HTML markup to prevent validation warnings/errors:
     - Prevent empty values for the "name" attribute name on HTML anchor tags,
       and add an "id" to its parent "div" container.
     - Fix "table column x established by element 'col' has no cells beginning
       in it" warnings.
     - Fix "Text run is not in Unicode Normalization Form C".
     - Remove the "type" HTML attribute from <style> elements.
 .
   [ Vibhu ]
   * Fail more gracefully when running out of diskspace. (Closes: #874582)
Checksums-Sha1:
 5a6c110f42ed54a5911b3c20776159afcbcecdab 4533 diffoscope_114.dsc
 a65c8eed454ffb0f76e1114ae73c00f2ed3fdaa6 1117320 diffoscope_114.tar.xz
 3a63794ac70b7e080391f9f8d1fb6f24b2f79ed3 130320 diffoscope_114_all.deb
 e8b49ddf78da84c37a037864356a55c499f10c5d 6504 diffoscope_114_amd64.buildinfo
Checksums-Sha256:
 ce37b6b5eadd8d5ef2c08446ca7deb871797b374d49ed44d30b033aac6f5ee70 4533 diffoscope_114.dsc
 16c881bb0716de6c64ccae72bfecf2cd03661dbe9ab3e9d2f87aae7bd524437b 1117320 diffoscope_114.tar.xz
 07b4d27401e2838fdcfc7a6d2325eacc3e6626cf08207629bb09181ffe41289f 130320 diffoscope_114_all.deb
 3e2e8941377f2e39c04e36cdf25a699350c9fb1cbb396e62e0229b6f4630c964 6504 diffoscope_114_amd64.buildinfo
Files:
 d6eaeb7b3b42987396d562ca71347a8c 4533 devel optional diffoscope_114.dsc
 30e3014327b8fa46feca7e4129a159e7 1117320 devel optional diffoscope_114.tar.xz
 2efdb3d3cd1000bb8d37cf03984dfdea 130320 devel optional diffoscope_114_all.deb
 02aa356dbbf27fa33fe1cd88c59aa57d 6504 devel optional diffoscope_114_amd64.buildinfo

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

iQIzBAEBCAAdFiEEwv5L0nHBObhsUz5GHpU+J9QxHlgFAlzF02YACgkQHpU+J9Qx
Hli4rBAAtPEbuXpm68kPLdoWI63CLVa1aazyxCyrpzE4/TiwvuEY8t7MYCWYIACB
a6wyf+BL72pQUW1Gju6R+UHST0uJRN9O5NopuXPejaiyQN+9dQThh/SSaKlAzeyI
3CMoIp3JJsUaAbqJoscvF+l5yLeq+4ogEXhz75ru+UbLwtybnzxPp5bnqHLXI89M
+Vx5eE1TvpoIkEsBP90TSRqGd5t5yFN+jY1tGxyt9e7x8S3p/66nC6ub3U4LDRAk
wUd96hStAv2l690kJFL8/2mkGm1pQvtNovLlYTI4ZDSEZi9uleuKHGlu99uXeZyo
6wMjjMyJbkymQIREssfxgRL3jYW7RCDSsuzU88s19NJKqo7RVMqzWnJCuX84xr2h
WJtbCz+bYH539XEADU4fScMD7iinRv44qd7HCFvsvQrnGQZ++++I5+u9UcVGdS3u
hn7ZaTKn7n77EqdGlLOLW1UgGKnFDVr4HMbsg/OiF419ye0lHUuA/avawKN32AnI
6dnXsNPi2avt7pDGFdLiYVOCyYnZZ6VYy4wPf/I2Dqkl04cYZylWPIc7+SlSA2F/
PgkJNRth0Z9GjNQEStAgWZ+8d/wbWWzgVv6MSz5t/ueJVPsktvnaftBXcxE5Jv9C
bLvzTWhrDlD2XuIZBepe3EA1j1zfKwWA5AK4OpSjvo6i1fZbgfw=
=V/if
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 01 Aug 2019 07:25:48 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 11:47:07 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.