From 207ef08116ebfff4798a6cfad34ded7912896dea 2011-07-02 23:37:36 From: MinRK Date: 2011-07-02 23:37:36 Subject: [PATCH] preserve dependency attributes in scheduler A recent update introduced a bug where dependencies being updated in the Scheduler could lose their after/follow/all properties. --- diff --git a/IPython/parallel/controller/scheduler.py b/IPython/parallel/controller/scheduler.py index b260d0c..af76c86 100644 --- a/IPython/parallel/controller/scheduler.py +++ b/IPython/parallel/controller/scheduler.py @@ -326,9 +326,17 @@ class TaskScheduler(SessionFactory): after = Dependency(after) if after.all: if after.success: - after = after.difference(self.all_completed) + after = Dependency(after.difference(self.all_completed), + success=after.success, + failure=after.failure, + all=after.all, + ) if after.failure: - after = after.difference(self.all_failed) + after = Dependency(after.difference(self.all_failed), + success=after.success, + failure=after.failure, + all=after.all, + ) if after.check(self.all_completed, self.all_failed): # recast as empty set, if `after` already met, # to prevent unnecessary set comparisons