Commits

Johannes Köster committed 28dc097

Presumably fixed an issue with rerun-incomplete that prevented some incomplete files to be recreated. (see issue #51).

  • Participants
  • Parent commits 76d1892

Comments (0)

Files changed (2)

File snakemake/dag.py

             raise RuleException(include=chain(*exceptions.values()))
         self.update_needrun()
 
-        for job in filter(
-            lambda job: (job.dynamic_output
-                and not self.needrun(job)), self.jobs):
-            self.update_dynamic(job)
-        self.postprocess()
-
     def check_incomplete(self):
         if not self.ignore_incomplete:
             incomplete = self.incomplete_files
                     logger.debug("Forcing incomplete files:")
                     logger.debug("\t" + "\n\t".join(incomplete))
                     self.forcefiles.update(incomplete)
-                    self.update_needrun()
                 else:
                     raise IncompleteFilesException(incomplete)
 
+    def check_dynamic(self):
+        for job in filter(
+            lambda job: (job.dynamic_output
+                and not self.needrun(job)), self.jobs):
+            self.update_dynamic(job)
+
     @property
     def jobs(self):
         """ All jobs in the DAG. """

File snakemake/workflow.py

         self.persistence = Persistence(nolock=nolock, dag=dag)
 
         dag.init()
+        dag.check_dynamic()
 
         if unlock:
             try:
             return False
 
         dag.check_incomplete()
+        dag.postprocess()
 
         if printdag:
             print(dag)