diff --git a/snakemake/dag.py b/snakemake/dag.py index 0204da631..3af3031a2 100755 --- a/snakemake/dag.py +++ b/snakemake/dag.py @@ -1157,7 +1157,6 @@ def update_needrun(job): # depending jobs of jobs that are needrun as a prior # can be skipped continue - if update_needrun(job): queue.append(job) masked.update(self.bfs(self.depending, job)) @@ -1703,10 +1702,11 @@ def delete_job(self, job, recursive=True, add_dependencies=False): if not depending and recursive: self.delete_job(job_) del self.dependencies[job] + if job in self._reason: + del self._reason[job] if job in self._needrun: self._len -= 1 self._needrun.remove(job) - del self._reason[job] if job in self._finished: self._finished.remove(job) if job in self._dynamic: