[Raven-devel] refactored channel handling
matthieu.riou at gmail.com
Sat Feb 10 23:59:41 EST 2007
Just seen it and looks good. I could have misread but shouldn't it be:
values += value unless values.member?(value)
values << value unless values.member?(value)
?? Otherwise we'll end up with an array of arrays and the tasks will get
confused (unless we have them call flatten but it's not so nice).
The idea is good though, it's cleaner this way.
On 2/10/07, Matthew Foemmel <rubyforge at foemmel.com> wrote:
> I've just checked in some code that changes the way channels work a bit.
> Previously, channels were basically "global" which meant that the values set
> in one task could affect the values seen in any other tasks.
> I've switched things up now so that channel values are only visible to the
> task that sets it, and any tasks that depend on it (directly or indirectly).
> This eliminates a ton of headaches with regards to parallel builds, since it
> forces the user to set up their dependency graph correctly.
> I've split the channel handling code out into its own file
> (raven/channels.rb) if anyone wants to check it out.
> Raven-devel mailing list
> Raven-devel at rubyforge.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Raven-devel