On Sep 10, 7:59=A0am, Jim Weirich <j... / weirichhouse.org> wrote:
> James M. Lawrence wrote:
> > In a given Rakefile, it is possible (even likely) that the dependency
> > tree has not been properly defined. =A0Consider
>
> > =A0 =A0task :a =3D> [:x, :y, :z]
>
> > With single-threaded Rake, _x_,_y_,_z_ will be invoked *in that order*
> > before _a_ is invoked. =A0
>
> Just to clarify: =A0In standard rake x, y and z will be invoked by task a
> in that order. =A0However, that doesn't provide any guarantees that they
> will be executed in that order.
>
> For example, consider the following additional dependencies:
>
> task :x =3D> :z
>
> Then the code for z will be executed before task x.
>
> The moral of the story is that depending upon ordering of dependencies
> to determine the ordering of execution is a bug in standard rake too.
> (its just more likely that the drake will make this kind of bug
> manifest).

Ah, so by design you consider it a bug. You could have fixed that from
day one by randomizing the order of the prerequisites. Now you have a
situation where many Rakefiles depend on that bug. So, why not turn
lemons into lemonade, and make this bug a feature?

T.