Re: Another lintian release for squeeze?
Russ Allbery wrote:
> Raphael Geissert writes:
>
>> I'm attaching both changes. Comments? suggestions?
>
>> 0007 includes the first set of changes of Lintian::Command::Simple. In
>> the .t file I was trying to decide the best way to handle multiple jobs
>> while still being able to recognise which one is reaped.
>
> Is there any way that we can fix the output handling so that at least it
> won't intersperse output from multiple threads? Making failures basically
> unreadable is unappealing, and I assume that's the possible result. Can
> we use some sort of locking method so that only one thread is printing
> stuff to the terminal at a time and finishes dumping its stuff, including
> its possible diff, before letting someone else go?
I don't think it's possible to lock the file descriptors. A possible
solution is to open two file descriptors for every thread, replacing their
STDOUT/STDERR. Another thread would be started and would take care of
multiplexing with select(). Probably using IO::Multiplex.
>
> In parallel mode, we should stop printing partial status (building,
> testing, OK) etc. and just print out the complete line to the point that
> we got and then the failure results if any all at once. That will work
> better with the output handling.
It might still be possible to print that information in the last printable
line, a-la prove's -j.
Since doing this is going to take some time, is there any objection for
merging the initial -j option support to at least make prove run multiple
jobs? (i.e. not merging the 'use threads' part.)
Cheers,
--
Raphael Geissert - Debian Developer
www.debian.org - get.debian.net
Reply to: