Bug#910540: backtrace when using diffoscope on macOS (brew)

Thomas Gazagnaire thomas.gazagnaire at gmail.com
Sun Oct 7 22:11:03 BST 2018


Package: diffoscope

I am trying to use diffoscope on brew but the binary that I got after "brew install diffoscope" doesn't seem to be working correctly.

```
$ diffoscope --version
diffoscope 102
$ diffoscope foo _build/main.native
Traceback (most recent call last):
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 327, in diff
    return run_diff(fifo1_path, fifo2_path, fifo1.end_nl_q, fifo2.end_nl_q)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 220, in __exit__
    self.join()
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 253, in join
    raise self._exception
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 244, in run
    end_nl = self.feeder(fifo)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/feeders.py", line 88, in feeder
    end_nl = feeder(out_file)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/feeders.py", line 47, in feeder
    out = buf if filter is None else filter(buf)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/macho.py", line 47, in filter
    if line.decode('utf-8', 'ignore').index(prefix) == 0:
ValueError: substring not found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/main.py", line 470, in main
    sys.exit(run_diffoscope(parsed_args))
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/main.py", line 442, in run_diffoscope
    difference = compare_root_paths(path1, path2)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/utils/compare.py", line 68, in compare_root_paths
    difference = compare_files(file1, file2)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/utils/compare.py", line 118, in compare_files
    return file1.compare(file2, source)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/utils/file.py", line 366, in compare
    difference = self._compare_using_details(other, source)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/utils/file.py", line 304, in _compare_using_details
    details.extend(self.compare_details(other, source))
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/macho.py", line 102, in compare_details
    comment="Mach-O headers for architecture %s" % common_arch))
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/difference.py", line 233, in from_command
    return Difference.from_command_exc(klass, path1, path2, *args, **kwargs)[0]
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/difference.py", line 270, in from_command_exc
    **kwargs
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/difference.py", line 186, in from_feeder
    unified_diff = diff(feeder1, feeder2)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 327, in diff
    return run_diff(fifo1_path, fifo2_path, fifo1.end_nl_q, fifo2.end_nl_q)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 220, in __exit__
    self.join()
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 253, in join
    raise self._exception
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/diff.py", line 244, in run
    end_nl = self.feeder(fifo)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/feeders.py", line 88, in feeder
    end_nl = feeder(out_file)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/feeders.py", line 47, in feeder
    out = buf if filter is None else filter(buf)
  File "/usr/local/Cellar/diffoscope/102/libexec/lib/python3.7/site-packages/diffoscope/comparators/macho.py", line 47, in filter
    if line.decode('utf-8', 'ignore').index(prefix) == 0:
ValueError: substring not found
```


More information about the Reproducible-builds mailing list