Boost logo

Boost-Build :

Subject: Re: [Boost-build] output the action before not after
From: George Georgiev (george.georgiev.sf_at_[hidden])
Date: 2013-07-09 12:03:42


Thank you Rene,

Could you please elaborate on what is the problem with outputting the task
before it starts in the context of parallel action execution - the issue is
not trivial for me.

About the flushing - it make sense. There are though ways this to be
resolved. First, if the flushing behavior is optional you can use the
current output behavior in the automated environments (where usually
computer interpretation is involved).

About the human readability - since the humans that will use the option
will most probably be the same humans that will need to read it - it will
be up to them to decide is it readable enough to worth the immediate
response or not. There also several things that could be than to make it
easier - for example msvc prefixes the outputs from different threads with
a different id (this also could make the impossibility of parsing the
result not so hard task). The flushes could be made on chunks (for sure
they need to be at least line by line). Probably a variable on target that
specifies a regular expression(s) that determine the flushing points will
be a good feature.

Having immediate flushing when -j1 is a very good idea.

Thanks,
George

On Tue, Jul 9, 2013 at 8:36 AM, Rene Rivera <grafikrobot_at_[hidden]> wrote:

> On Tue, Jul 9, 2013 at 10:30 AM, George Georgiev <
> george.georgiev.sf_at_[hidden]> wrote:
>
>> Hi,
>>
>> I find outputting the action after it is done instead before it starts a
>> little bit confusing and in some cases dysfunctional. For example if a
>> unittest hang you do not know what is going on.
>>
>> Is there option or a simple way to change this behavior?
>>
>
> I don't remember an option to control that.
>
> Another related question: can b2 start flushing the output from
>> subprocesses immediately - instead of waiting they to completely finish.
>>
>
> Unfortunately both of those behaviors are intentional and required to get
> coherent output in the face of the parallel action execution. Without this
> behavior the output from multiple actions would be interleaved and be
> painfully hard for humans and impossible for computers to interpret the
> output.
>
> About the only change I can think of is to switch to immediate flushing
> when we are using "-j1".
>
> --
> --
> -- Grafik - Don't Assume Anything
> -- Redshift Software, Inc. - http://redshift-software.com
> -- rrivera/acm.org - grafik/redshift-software.com
> -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
>



Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk