I work in a team which actively use Snakemake.
I found this repository because I've been building pipelines for others to use and thought this type of thing might be useful.
I was following along the documentation and noticed that the snakeface dependency in the requirements.txt was causing a chain of dependency down all previous versions of snakeface.
I deleted the snakeface in requirements.txt and the problem is now fixed.
Also noticed that you specified snakeface's dependencies in version.py so I'm assuming requirements.txt might no longer be needed, but I haven't tested it out yet so I'll leave it be :).
Since the project seems very young and I'm in need of something like snakeface, I'll look at the source code and check if there's anything I can contribute :).
root@NB080270#git clone git@github.com:snakemake/snakeface.git
Cloning into 'snakeface'...
remote: Enumerating objects: 714, done.
remote: Counting objects: 100% (714/714), done.
remote: Compressing objects: 100% (468/468), done.
remote: Total 714 (delta 384), reused 531 (delta 208), pack-reused 0
Receiving objects: 100% (714/714), 2.46 MiB | 2.67 MiB/s, done.
Resolving deltas: 100% (384/384), done.
/opt/repos
root@NB080270#cd snakeface/
/opt/repos/snakeface
root@NB080270#ls
CHANGELOG.md LICENSE MANIFEST.in README.md docs img main.py manage.py requirements.txt setup.cfg setup.py snakeface
/opt/repos/snakeface
root@NB080270#python3
Python 3.9.6 (default, Aug 31 2021, 14:56:23)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
/opt/repos/snakeface
root@NB080270#python3 -m venv env
source/opt/repos/snakeface
root@NB080270#source env/bin/activate
(env) /opt/repos/snakeface
root@NB080270#python3 -m pip install --upgrade pip
Requirement already satisfied: pip in ./env/lib/python3.9/site-packages (21.1.3)
Collecting pip
Using cached pip-21.3.1-py3-none-any.whl (1.7 MB)
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 21.1.3
Uninstalling pip-21.1.3:
Successfully uninstalled pip-21.1.3
Successfully installed pip-21.3.1
(env) /opt/repos/snakeface
root@NB080270#python3 -m pip install wheel
Collecting wheel
Downloading wheel-0.37.1-py2.py3-none-any.whl (35 kB)
Installing collected packages: wheel
Successfully installed wheel-0.37.1
(env) /opt/repos/snakeface
root@NB080270#python3 -m pip install -r requirements.txt
Collecting Django==3.0.14
Downloading Django-3.0.14-py3-none-any.whl (7.5 MB)
|████████████████████████████████| 7.5 MB 5.0 MB/s
Collecting django-ratelimit==3.0.0
Downloading django_ratelimit-3.0.0-py2.py3-none-any.whl (11 kB)
Collecting django-extensions==3.0.2
Downloading django_extensions-3.0.2-py2.py3-none-any.whl (216 kB)
|████████████████████████████████| 216 kB 11.3 MB/s
Collecting sendgrid==6.4.3
Downloading sendgrid-6.4.3-py3-none-any.whl (73 kB)
|████████████████████████████████| 73 kB 1.9 MB/s
Collecting snakemake
Downloading snakemake-6.12.3.tar.gz (278 kB)
|████████████████████████████████| 278 kB 11.8 MB/s
Preparing metadata (setup.py) ... done
Collecting snakeface
Downloading snakeface-0.0.18.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 11.7 MB/s
Preparing metadata (setup.py) ... done
Collecting django-q==1.3.4
Downloading django_q-1.3.4-py3-none-any.whl (67 kB)
|████████████████████████████████| 67 kB 2.8 MB/s
Collecting psycopg2-binary==2.8.5
Downloading psycopg2-binary-2.8.5.tar.gz (381 kB)
|████████████████████████████████| 381 kB 9.5 MB/s
Preparing metadata (setup.py) ... done
Collecting django-gravatar2==1.4.4
Downloading django_gravatar2-1.4.4-py2.py3-none-any.whl (7.9 kB)
Collecting django-taggit==1.3.0
Downloading django_taggit-1.3.0-py3-none-any.whl (45 kB)
|████████████████████████████████| 45 kB 2.1 MB/s
Collecting djangorestframework==3.11.2
Downloading djangorestframework-3.11.2-py3-none-any.whl (911 kB)
|████████████████████████████████| 911 kB 8.1 MB/s
Collecting social-auth-app-django==4.0.0
Downloading social_auth_app_django-4.0.0-py3-none-any.whl (24 kB)
Collecting asgiref~=3.2
Using cached asgiref-3.4.1-py3-none-any.whl (25 kB)
Collecting pytz
Using cached pytz-2021.3-py2.py3-none-any.whl (503 kB)
Collecting sqlparse>=0.2.2
Using cached sqlparse-0.4.2-py3-none-any.whl (42 kB)
Collecting six>=1.2
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting python-http-client>=3.2.1
Downloading python_http_client-3.3.4-py3-none-any.whl (8.3 kB)
Collecting starkbank-ecdsa>=1.0.0
Downloading starkbank-ecdsa-2.0.3.tar.gz (12 kB)
Preparing metadata (setup.py) ... done
Collecting blessed
Downloading blessed-1.19.0-py2.py3-none-any.whl (57 kB)
|████████████████████████████████| 57 kB 3.4 MB/s
Collecting django-picklefield
Downloading django_picklefield-3.0.1-py3-none-any.whl (9.4 kB)
Collecting arrow
Downloading arrow-1.2.1-py3-none-any.whl (63 kB)
|████████████████████████████████| 63 kB 1.2 MB/s
Collecting social-auth-core>=3.3.0
Downloading social_auth_core-4.1.0-py3-none-any.whl (333 kB)
|████████████████████████████████| 333 kB 11.8 MB/s
Collecting wrapt
Using cached wrapt-1.13.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (81 kB)
Collecting requests
Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
Collecting ratelimiter
Using cached ratelimiter-1.2.0.post0-py3-none-any.whl (6.6 kB)
Collecting pyyaml
Downloading PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (661 kB)
|████████████████████████████████| 661 kB 12.6 MB/s
Collecting configargparse
Using cached ConfigArgParse-1.5.3-py3-none-any.whl (20 kB)
Collecting appdirs
Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting datrie
Using cached datrie-0.8.2-cp39-cp39-linux_x86_64.whl
Collecting jsonschema
Downloading jsonschema-4.3.2-py3-none-any.whl (71 kB)
|████████████████████████████████| 71 kB 147 kB/s
Collecting docutils
Downloading docutils-0.18.1-py2.py3-none-any.whl (570 kB)
|████████████████████████████████| 570 kB 13.1 MB/s
Collecting gitpython
Using cached GitPython-3.1.24-py3-none-any.whl (180 kB)
Collecting psutil
Downloading psutil-5.9.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (280 kB)
|████████████████████████████████| 280 kB 12.0 MB/s
Collecting nbformat
Using cached nbformat-5.1.3-py3-none-any.whl (178 kB)
Collecting toposort
Using cached toposort-1.7-py2.py3-none-any.whl (9.0 kB)
Collecting connection_pool>=0.0.3
Using cached connection_pool-0.0.3.tar.gz (3.8 kB)
Preparing metadata (setup.py) ... done
Collecting pulp>=2.0
Downloading PuLP-2.6.0-py3-none-any.whl (14.2 MB)
|████████████████████████████████| 14.2 MB 16.2 MB/s
Collecting smart_open>=3.0
Using cached smart_open-5.2.1-py3-none-any.whl (58 kB)
Collecting filelock
Downloading filelock-3.4.2-py3-none-any.whl (9.9 kB)
Collecting stopit
Using cached stopit-1.1.2.tar.gz (18 kB)
Preparing metadata (setup.py) ... done
Collecting tabulate
Using cached tabulate-0.8.9-py3-none-any.whl (25 kB)
Collecting snakedeploy
Downloading snakedeploy-0.3.0.tar.gz (31 kB)
Preparing metadata (setup.py) ... done
Collecting pyaml>=20.4.0
Downloading pyaml-21.10.1-py2.py3-none-any.whl (24 kB)
Collecting Jinja2>=2.11.2
Downloading Jinja2-3.0.3-py3-none-any.whl (133 kB)
|████████████████████████████████| 133 kB 10.4 MB/s
Collecting snakeface
Downloading snakeface-0.0.17.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 13.0 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.16.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 13.2 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.15.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 10.5 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.14.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 12.6 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.13.tar.gz (1.6 MB)
|████████████████████████████████| 1.6 MB 11.9 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.12.tar.gz (47 kB)
|████████████████████████████████| 47 kB 2.4 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.11.tar.gz (47 kB)
|████████████████████████████████| 47 kB 2.1 MB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.1.tar.gz (47 kB)
|████████████████████████████████| 47 kB 424 kB/s
Preparing metadata (setup.py) ... done
Downloading snakeface-0.0.0.tar.gz (47 kB)
|████████████████████████████████| 47 kB 2.4 MB/s
Preparing metadata (setup.py) ... done
INFO: pip is looking at multiple versions of snakemake to determine which version is compatible with other requirements. This could take a while.
Collecting snakemake
Downloading snakemake-6.12.2.tar.gz (278 kB)
|████████████████████████████████| 278 kB 15.7 MB/s
Preparing metadata (setup.py) ... done
INFO: pip is looking at multiple versions of social-auth-app-django to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of djangorestframework to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django-taggit to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django-gravatar2 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of psycopg2-binary to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django-q to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of sendgrid to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django-extensions to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django-ratelimit to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of django to determine which version is compatible with other requirements. This could take a while.
ERROR: Cannot install -r requirements.txt (line 11), -r requirements.txt (line 12), -r requirements.txt (line 6), -r requirements.txt (line 7) and Django==3.0.14 because these package versions have conflicting dependencies.
The conflict is caused by:
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.18 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.17 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.16 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.15 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.14 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.13 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.12 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.11 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.1 depends on Django==3.0.8
The user requested Django==3.0.14
django-q 1.3.4 depends on django>=2.2
django-taggit 1.3.0 depends on Django>=1.11
djangorestframework 3.11.2 depends on django>=1.11
snakeface 0.0.0 depends on Django==3.0.8
Hi,
I work in a team which actively use Snakemake. I found this repository because I've been building pipelines for others to use and thought this type of thing might be useful.
I was following along the documentation and noticed that the
snakeface
dependency in therequirements.txt
was causing a chain of dependency down all previous versions ofsnakeface
.I deleted the
snakeface
inrequirements.txt
and the problem is now fixed.Also noticed that you specified
snakeface
's dependencies inversion.py
so I'm assumingrequirements.txt
might no longer be needed, but I haven't tested it out yet so I'll leave it be :).Since the project seems very young and I'm in need of something like snakeface, I'll look at the source code and check if there's anything I can contribute :).