I recently found when updating to the latest version of snakemake, my pipeline would break with a "pulp" when using
--executor slurm:
raise PulpSolverError(
f"Pulp: cannot execute {self.path} cwd: {os.getcwd()}"
)
pulp.apis.core.PulpSolverError: Pulp: cannot execute cbc cwd:
I found that major version 9.10 brings a new default for the --scheduler parameter. For 9.9 it was "greedy" and for 9.10 it changed to "ilp", which relies on the pulp package. I was curious why was this default changed, and what's the purpose? Explicitly setting --scheduler greedy fixed my issue.
I recently found when updating to the latest version of snakemake, my pipeline would break with a "pulp" when using
--executor slurm:raise PulpSolverError( f"Pulp: cannot execute {self.path} cwd: {os.getcwd()}" ) pulp.apis.core.PulpSolverError: Pulp: cannot execute cbc cwd:I found that major version 9.10 brings a new default for the
--schedulerparameter. For 9.9 it was "greedy" and for 9.10 it changed to "ilp", which relies on the pulp package. I was curious why was this default changed, and what's the purpose? Explicitly setting --scheduler greedy fixed my issue.