snakemake / snakeface

The snakemake interface, currently works like a notebook (under development)
https://snakeface.readthedocs.io/
Mozilla Public License 2.0
17 stars 6 forks source link

Removed 'snakeface' dependency in requirements.txt which was causing a impossible dependency resolution #23

Closed youngchanpark closed 2 years ago

youngchanpark commented 2 years ago

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 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