'quilt': ['faildiff.test'] https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/2244/steps/12/logs/stdio qemux86-64-ptest centos8-ty-1 Note that this was with the update to glibc2.34 but wasn't seen on the other builds with the same update.
https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/2291/steps/13/logs/stdio qemux86-64-ptest debian9-ty-2
https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/2274/steps/12/logs/stdio qemuarm64-ptest ubuntu2004-arm-1
https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/2800/steps/12/logs/stdio ubuntu2004-ty-1 qemux86-64-ptest master-next
This hasn't happened in ~4 months.
https://autobuilder.yoctoproject.org/typhoon/#/builders/93/builds/1522/steps/12/logs/stdio qemuarm64-ptest-fast ubuntu2004-arm-1
https://autobuilder.yocto.io/pub/non-release/20230112-2/testresults/qemuarm64-ptest-fast/quilt.log
[faildiff.test] [1] $ mkdir patches -- ok [3] $ quilt new test.diff -- ok [6] $ cat > test.txt -- ok [8] $ quilt add test.txt -- ok [13] $ chmod -r test.txt -- ok [15] $ quilt refresh -- ok [18] $ echo 1 -- ok [21] $ chmod +r test.txt -- ok [25] $ printf "\\002\\000\\001" > test.bin -- ok [26] $ quilt add test.bin -- ok [29] $ printf "\\003\\000\\001" > test.bin -- ok [30] $ quilt diff -pab --no-index -- failed Diff failed on file 'test.bin', aborting !~ (Files|Binary files) a/test\.bin and b/test\.bin differ Binary files a/test.bin and b/test.bin differ != Diff failed on file 'test.bin', aborting [33] $ echo 1 -- ok [36] $ quilt refresh -- ok [38] $ echo 1 -- ok 15 commands (14 passed, 1 failed) make: *** [Makefile:10: check-faildiff] Error 1 FAIL: faildiff.test
I could actually reproduce this on our build server: $ quilt diff -pab --no-index Diff failed on file 'test.bin', aborting Binary files a/test.bin and b/test.bin differ whereas the test expects: Binary files a/test.bin and b/test.bin differ Diff failed on file 'test.bin', aborting
The issue is that tests/run is merging stderr and stdout, one of the string is coming from stderr, the other on from stdout and it seems the order is not guaranteed. From a quick check, this seems to be the only test that is affected.
Filed https://savannah.nongnu.org/bugs/index.php?63651 upstream. A proper fix would involve writing perl <shudders> and changing test/run to not merge stdout/stderr and check them specifically. A hack would involve making both lines regex's and matching both strings in both lines...
Workaround hack on the list.
I'm assuming that all the failures are in faildiff.test line 30. All of the ones I've seen have been, but older logs have been purged.
Fixed in oe-core 1ddbe4d2bd8d8da10dac8a054f130fcd1d242219.