Subject: Re: Memory exhaustion issues

From: Sergey Matveev <[email-masked]>
Date: Thu, 5 Sep 2024 21:49:54 +0300

Greetings!

*** spacefrogg [2024-08-19 12:12]:
>My suggestion would be that, if in any way possible, redo should try to
>follow the dependency graph in depth-first-order to minimize the number of
>half-executed targets waiting on redo-if* calls.

This is not possible, because, unlike Make, targets that are going to be
built are not known in advance. We just can *assume* what will be built,
according to our previous run, but we can not (have no right) to build
them, if they are not explicitly requested by redo-* command. Each
redo-* invocation literally tells redo to "here, build those targets
too", and those targets also tells redo to build another ones. All of
that are dynamically generated by invokers of redo-* commands. And we
have to wait for their finishing, because as a rule we are inside some
.do file, that will have other commands after redo* calls. Personally I
see no way to change that behaviour somehow. That is the redo's nature.

-- 
Sergey Matveev (http://www.stargrave.org/)
OpenPGP: 12AD 3268 9C66 0D42 6967  FD75 CB82 0563 2107 AD8A