diff --git a/snakemake/jobs.py b/snakemake/jobs.py index d8a36a7e6..01bf521ab 100644 --- a/snakemake/jobs.py +++ b/snakemake/jobs.py @@ -1015,7 +1015,10 @@ def get_wait_for_files(self): self.dag.workflow.use_conda and self.conda_env and not self.conda_env.is_named + and not self.conda_env.is_containerized ): + # Named or containerized envs are not present on the host FS, + # hence we don't need to wait for them. wait_for_files.append(self.conda_env.address) return wait_for_files diff --git a/tests/test_github_issue1469/Snakefile b/tests/test_github_issue1469/Snakefile new file mode 100644 index 000000000..7894719a0 --- /dev/null +++ b/tests/test_github_issue1469/Snakefile @@ -0,0 +1,22 @@ +ruleorder: single_file > both_files + + +rule all: + input: + "foo.txt", + "bar.txt", + + +rule both_files: + output: + "foo.txt", + "bar.txt", + shell: + "if [[ -e foo.txt ]]; then exit 1; fi; touch {output}" + + +rule single_file: + output: + "foo.txt", + shell: + "if [[ -e foo.txt ]]; then exit 1; fi; touch {output}"