Bug#835641: diffoscope: traceback when comparing dangling symlink to directory

Mattia Rizzolo mattia at debian.org
Sat Aug 27 22:00:35 UTC 2016


Also dir to real file:

On Sat, Aug 27, 2016 at 10:51:49PM +0100, Chris Lamb wrote:
> $ mkdir dir
> 
> $ ln -sf dst-file src-file
> 
> $ diffoscope dir src-file
> cmp: dir: Is a directory
[..]
> Traceback (most recent call last):
>   File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 260, in feeder
>     raise subprocess.CalledProcessError(returncode, command.cmdline(), output=command.stderr.getvalue())
> subprocess.CalledProcessError: Command '['xxd', 'dir']' returned non-zero exit status 2
> Exception ignored in: <bound method File.__del__ of <<class 'abc.Symlink'> src-file>>
> Traceback (most recent call last):
>   File "/usr/lib/python3/dist-packages/diffoscope/comparators/binary.py", line 112, in __del__
>     self.cleanup()
>   File "/usr/lib/python3/dist-packages/diffoscope/comparators/symlink.py", line 50, in cleanup
>     os.remove(self._placeholder)
> FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmpzvwrnvg4_diffoscope'

mattia at chase /tmp % mkdir tmp
mattia at chase /tmp % touch tmp1
mattia at chase /tmp % diffoscope tmp tmp1
cmp: tmp: Is a directory
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 200, in main
    sys.exit(run_diffoscope(parsed_args))
  File "/usr/lib/python3/dist-packages/diffoscope/main.py", line 171, in run_diffoscope
    parsed_args.path1, parsed_args.path2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/__init__.py", line 102, in compare_root_paths
    return compare_files(file1, file2)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/__init__.py", line 117, in compare_files
    return file1.compare_bytes(file2, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/binary.py", line 170, in compare_bytes
    return compare_binary_files(self, other, source)
  File "/usr/lib/python3/dist-packages/diffoscope/comparators/binary.py", line 55, in compare_binary_files
    return Difference.from_command(diffoscope.comparators.utils.Xxd, file1.path, file2.path, source=[file1.name, file2.name])
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 356, in from_command
    difference = Difference.from_feeder(feeder1, feeder2, path1, path2, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 306, in from_feeder
    unified_diff = diff(feeder1, feeder2)
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 270, in diff
    return run_diff(fd1, fd2, end_nl_q1, end_nl_q2)
  File "/usr/lib/python3.5/contextlib.py", line 66, in __exit__
    next(self.gen)
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 205, in fd_from_feeder
    t.join()
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 183, in join
    raise ex
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 169, in run
    super().run(*args, **kwargs)
  File "/usr/lib/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 190, in feed
    end_nl = feeder(f)
  File "/usr/lib/python3/dist-packages/diffoscope/difference.py", line 260, in feeder
    raise subprocess.CalledProcessError(returncode, command.cmdline(), output=command.stderr.getvalue())
subprocess.CalledProcessError: Command '['xxd', 'tmp']' returned non-zero exit status 2


-- 
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  `-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20160827/9ee755d5/attachment.sig>


More information about the Reproducible-builds mailing list