So the previous ping generated some feedback, but I'm still not sure if
this is on the roadmap or not. Jim?
Ittay
Ittay Dror wrote:
Is there no interest in the suggestion made below?
Ittay Dror wrote:
Hi,
I'm running a Buildr build and after 20 recursive prerequisites
Ruby's call stack is exhausted and I get a segmentation fault. The
number of modules and dependencies is large, so I can't decrease the
prerequisites.
How about doing an iterative DFS search on the prerequisites to order
them and then invoke them according to order?
There are a few other benefits, besides not needing recursion:
1. it allows to find circular dependencies before starting the
invocation
2. it allows for rake to utilize threads to invoke the list of tasks
(assuming actions don't conflict)
Note that currently tasks can "cheat" and add prerequisites lazily
when invoked by overriding invoke_prerequisites. This can be achieved
with the above suggestion by letting them override the prerequisites
accessor.
Drawbacks:
This doesn't allow for a task's action to add prerequisites to
sibling tasks during the invocation chain (unless an API is provided
to allow changing the invocation list during invocation)
What do you think? I don't mind implementing this, but obviously it
is a big change.
Ittay
--
--
Ittay Dror <[EMAIL PROTECTED]>
_______________________________________________
Rake-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rake-devel