Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python version conflict with Snakemake #525

Closed
dskola opened this issue Jul 26, 2023 · 3 comments
Closed

Python version conflict with Snakemake #525

dskola opened this issue Jul 26, 2023 · 3 comments

Comments

@dskola
Copy link
Contributor

dskola commented Jul 26, 2023

Pangolin 4.3 requires python >= 3.7 but the latest version of Snakemake requires python >= 3.9 (see snakemake/snakemake@e9f6731#diff-fa602a8a75dc9dcc92261bac5f533c2a85e34fcceaff63b3a3a81d9acde2fc52)

So, for a environment with, say, python 3.8, pangolin installation proceeds normally, but at runtime Snakemake throws a fatal error regarding the inadequate python version.

I recommend either:

  1. Ensuring that the environment.yml file specifies the minimum required python across all dependencies (hard to determine)
  2. Pointing to a fixed version of snakemake in environment.yml to avoid future surprises introduced by dependency updates

PR with both proposed changes here: #524

@wm75
Copy link
Contributor

wm75 commented Jul 26, 2023

There is an ongoing discussion about this over at bioconda where we experienced the same issue with the latest pangolin recipe update: bioconda/bioconda-recipes#42145 (comment)

For pangolin, I decided to restrict snakemake to <=7.30.1 until the next release to avoid introducing lots of dependency changes with just a new build of the bioconda package.
The discussion about handling bioconda's snakemake-minimal package is still open (see bioconda/bioconda-recipes#42160).

Maybe you'd want to restrict snakemake in the environment file here to <=7.30.1 as well for now to give people more freedom with respect to the Python version they want to use?
The restriction could be removed, for example, when Python 3.8 reaches end of life next year (https://devguide.python.org/versions/) or when a new version of pangolin would really benefit from removing it?

@corneliusroemer
Copy link
Contributor

I think the PR #526 should be a robust solution

@corneliusroemer
Copy link
Contributor

This has been resolved in #524 and with release 4.3.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants