Package: moreutils combine's xor does not handle named pipes correctly. The same bug is triggered if a file is read from stdin. I'll send a possible fix after knowing the bug number.
Used zsh syntax in a nutshell: <(cmd) creates a named pipe with cmd's output as content =(cmd) creates a real file with cmd's output as content These commands were run on Debian stable, but combine in stable and sid is the same (except for the used Perl version): $ : this is correct: $ combine =(seq 1 2) xor =(seq 2 3) 1 3 $ : these are equivalent, and both wrong: $ combine <(seq 1 2) xor =(seq 2 3) 1 2 3 $ seq 1 2 | combine - xor =(seq 2 3) 1 2 3 $ : also wrong: $ combine =(seq 1 2) xor <(seq 2 3) 1 $ combine <(seq 1 2) xor <(seq 2 3) 1 The reason for this is that compare_xor($$) runs compare_not($$) twice and compare_not($$) reads the content of both filenames passed as arguments to it. The first time a pipe is read, the contents of the file is returned and reading stops when EOF is read. The second time EOF is read, EOF is returned immediately, thus the file is assumed to be empty by compare_not($$). For example, if you run combine <(seq 1 2) xor =(seq 2 3), combine should do the same as: combine =(seq 1 2) not =(seq 2 3) --> prints 1 combine =(seq 2 3) not =(seq 1 2) --> prints 3 but it does: combine =(seq 1 2) not =(seq 2 3) --> prints 1 combine =(seq 2 3) not =(:) --> prints 2 and 3 JFYI: The next Ubuntu LTS is going to be released soonish and they won't merge packages from Debian anymore unless they are asked to do so. Regards Carsten -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org