Cannot rebuild diffoscope in stretch

Christoph Biedl debian.axhn at manchmal.in-ulm.de
Thu Mar 21 07:57:09 GMT 2019


Hi there,

as I've prepared a new version of src:file for a stretch point release
and the changes have been somewhat bigger, I wanted to rebuild the
diffoscope package as additional check for possible regressions.

Turns out the test suite fails even *before* using the updated file
package.

| differences = <Difference /<<PKGBUILDDIR>>/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test1.ps -- ...oscope-78/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test2.ps [<Difference ps2ascii {} -- ps2ascii {} []>]>
| 
|     @skip_unless_tools_exist('ps2ascii')
|     def test_text_diff(differences):
|         expected_diff = get_data('ps_text_expected_diff')
| >       assert differences.details[0].unified_diff == expected_diff
| E       assert '@@ -1,2 +1,2...        1\r\n' == '@@ -1,5 +1,5 ...\n \n 1\x0c\n'
| E         - @@ -1,2 +1,2 @@
| E         ?       ^    ^
| E         + @@ -1,5 +1,5 @@
| E         ?       ^    ^
| E         +  
| E         +  
| E         - -                Today’s date: February 28, 2016
| 
| E         ?  ----------------     ^                         -
| E         + -Today's date: February 28, 2016
| E         ?       ^
| E         - +                Today’s date: February 27, 2016
| 
| E         ?  ----------------     ^                         -
| E         + +Today's date: February 27, 2016
| E         ?       ^
| E         -             

If I understand correctly, this test expects <’> (\xe2\x80\x99) but got
<'> (\x27). Might be some locale issues but even setting LANG to C
didn't help. Unforunately, the build logs at
    https://buildd.debian.org/status/logs.php?pkg=diffoscope&arch=all
do not include locale information so they did not give help.

After blatantly disabling the test, things got worse:

__________________ ERROR at setup of test_obj_identification ___________________
| 
| >   lambda: specialize(FilesystemFile(filename))
|         )
| 
| filename   = '/<<PKGBUILDDIR>>/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test1.o'
| 
| tests/comparators/utils/data.py:35: 
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
| diffoscope/comparators/utils/specialize.py:38: in specialize
|     flag = cls.recognizes(file)
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
| 
| file = <<class 'diffoscope.comparators.binary.FilesystemFile'> /<<PKGBUILDDIR>>/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test1.o>
| 
|     @staticmethod
|     def recognizes(file):
|         if isinstance(file, FilesystemFile) and not os.path.lexists(file.name):
| >           assert Config().new_file, '%s does not exist' % file.name
| E           AssertionError: /<<PKGBUILDDIR>>/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test1.o does not exist
| 
| file       = <<class 'diffoscope.comparators.binary.FilesystemFile'> /<<PKGBUILDDIR>>/.pybuild/pythonX.Y_3.5/build/tests/comparators/../data/test1.o>
| 
| diffoscope/comparators/missing_file.py:40: AssertionError

... and several more.

So I get the impression something is not in the way it should be.
Probably the packaging expects a very specifc environment that my
stretch build chroots don't provide. Care to shed some light on this?

Regards,

    Christoph
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/reproducible-builds/attachments/20190321/2c19324d/attachment.sig>


More information about the Reproducible-builds mailing list