Local installation of renku (2.3.2) using pipx fails due to networkx dependency

Hi renku team,

I cannot install renku 2.3.2 (using pipx install renku) due to a conflict of dependencies.

I’m copy pasting the pipx log, since I can’t upload or paste the full error log below (too long).

90.6ms (setup:715): 2023-04-04 13:29:12
90.6ms (setup:716): /home/pulver/.local/bin/pipx install renku --verbose
90.6ms (setup:717): pipx version is 0.16.4
90.7ms (setup:718): Default python interpreter is '/usr/bin/python3'
91.0ms (package_name_from_spec:323): Determined package name: renku
91.0ms (package_name_from_spec:324): Package name determined in 0.0s
91.2ms (run_subprocess:135): running /usr/bin/python3 -m venv --without-pip /home/pulver/.local/pipx/venvs/renku

119.3ms (run_subprocess:148): stdout:
119.4ms (run_subprocess:150): stderr:
119.4ms (run_subprocess:151): returncode: 0
119.6ms (run_subprocess:135): running /home/pulver/.local/pipx/venvs/renku/bin/python -c import sysconfig; print(sysconfig.get_path(‘purelib’))
128.3ms (run_subprocess:148): stdout: /home/pulver/.local/pipx/venvs/renku/lib/python3.6/site-packages
128.4ms (run_subprocess:151): returncode: 0
128.6ms (run_subprocess:135): running /home/pulver/.local/pipx/shared/bin/python -c import sysconfig; print(sysconfig.get_path(‘purelib’))
137.6ms (run_subprocess:148): stdout: /home/pulver/.local/pipx/shared/lib/python3.6/site-packages
137.7ms (run_subprocess:151): returncode: 0
137.9ms (run_subprocess:135): running /home/pulver/.local/pipx/venvs/renku/bin/python --version
138.9ms (run_subprocess:148): stdout: Python 3.6.9
138.9ms (run_subprocess:150): stderr:
139.0ms (run_subprocess:151): returncode: 0
139.6ms (_parsed_package_to_package_or_url:128): cleaned package spec: renku
139.7ms (run_subprocess:135): running /home/pulver/.local/pipx/venvs/renku/bin/python -m pip install renku
568435.1ms (run_subprocess:151): returncode: 1
568435.2ms (subprocess_post_check_handle_pip_error:297): ‘/home/pulver/.local/pipx/venvs/renku/bin/python -m pip install renku’ failed
568435.5ms (subprocess_post_check_handle_pip_error:315): Fatal error from pip prevented installation. Full pip output in file:
/home/pulver/.local/pipx/logs/cmd_2023-04-04_13.29.12_pip_errors.log
568439.1ms (analyze_pip_output:272): pip seemed to fail to build package:
networkx>=2.1
568439.3ms (rmdir:43): removing directory /home/pulver/.local/pipx/venvs/renku
568439.6ms (cli:768): PipxError: Error installing renku.
Traceback (most recent call last):
File “/home/pulver/.local/lib/python3.6/site-packages/pipx/main.py”, line 765, in cli
return run_pipx_command(parsed_pipx_args)
File “/home/pulver/.local/lib/python3.6/site-packages/pipx/main.py”, line 204, in run_pipx_command
suffix=args.suffix,
File “/home/pulver/.local/lib/python3.6/site-packages/pipx/commands/install.py”, line 67, in install
suffix=suffix,
File “/home/pulver/.local/lib/python3.6/site-packages/pipx/venv.py”, line 241, in install_package
f"Error installing {full_package_description(package_name, package_or_url)}."
pipx.util.PipxError: Error installing renku.
568440.0ms (cli:776): pipx finished.

It looks like networkx could not be installed.
Can you also post the full log (/home/pulver/.local/pipx/logs/cmd_2023-04-04_13.29.12_pip_errors.log mentioned in the above output).

PIP STDOUT
----------
Collecting renku
  Using cached renku-0.16.7-py2.py3-none-any.whl (2.0 MB)
Collecting tabulate<0.8.10,>=0.7.7
  Using cached tabulate-0.8.9-py3-none-any.whl (25 kB)
Collecting patool==1.12
  Using cached patool-1.12-py2.py3-none-any.whl (77 kB)
Collecting click-completion<=0.5.3,>=0.5.0
  Using cached click-completion-0.5.2.tar.gz (10 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting pyjwt==2.1.0
  Using cached PyJWT-2.1.0-py3-none-any.whl (16 kB)
Collecting click-option-group<0.6.0,>=0.5.2
  Using cached click_option_group-0.5.5-py3-none-any.whl (12 kB)
Collecting tqdm<4.60.1,>=4.48.1
  Using cached tqdm-4.60.0-py2.py3-none-any.whl (75 kB)
Collecting psutil<5.8.1,>=5.4.7
  Using cached psutil-5.8.0-cp36-cp36m-manylinux2010_x86_64.whl (291 kB)
Collecting ndg-httpsclient==0.5.1
  Using cached ndg_httpsclient-0.5.1-py3-none-any.whl (34 kB)
Collecting pluggy==0.13.1
  Using cached pluggy-0.13.1-py2.py3-none-any.whl (18 kB)
Collecting python-dateutil<=2.8.1,>=2.6.1
  Using cached python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
Collecting environ-config<21.3.0,>=18.2.0
  Using cached environ_config-21.2.0-py2.py3-none-any.whl (19 kB)
Collecting setuptools-scm<6.0.2,>=3.1.0
  Using cached setuptools_scm-6.0.1-py3-none-any.whl (27 kB)
Collecting pyOpenSSL<20.1.0,>=19.0.0
  Using cached pyOpenSSL-20.0.1-py2.py3-none-any.whl (54 kB)
Collecting PyYAML<=5.4.1,>=5.4
  Using cached PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl (640 kB)
Collecting jinja2<3.0.2,>=2.10.3
  Using cached Jinja2-3.0.1-py3-none-any.whl (133 kB)
Collecting pyld==2.0.3
  Using cached PyLD-2.0.3.tar.gz (70 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting filelock<=3.0.12,>=3.0.0
  Using cached filelock-3.0.12-py3-none-any.whl (7.6 kB)
Collecting rich<10.4.0,>=9.3.0
  Using cached rich-10.3.0-py3-none-any.whl (205 kB)
Collecting wcmatch<8.3,>=6.0.0
  Using cached wcmatch-8.2-py3-none-any.whl (41 kB)
Collecting werkzeug<2.0.2,>=0.15.5
  Using cached Werkzeug-2.0.1-py3-none-any.whl (288 kB)
Collecting yagup>=0.1.1
  Using cached yagup-0.1.1.tar.gz (8.0 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting click-plugins==1.1.1
  Using cached click_plugins-1.1.1-py2.py3-none-any.whl (7.5 kB)
Collecting attrs<21.3.0,>=19.3.0
  Using cached attrs-21.2.0-py2.py3-none-any.whl (53 kB)
Collecting cryptography<3.5,>=3.4.1
  Using cached cryptography-3.4.8-cp36-abi3-manylinux_2_24_x86_64.whl (3.0 MB)
Collecting appdirs<=1.4.4,>=1.4.3
  Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting renku
  Using cached renku-0.16.6-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.5-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.4-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.3-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.2-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.1.post1-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.1-py3-none-any.whl (2.0 MB)
  Using cached renku-0.16.0-py2.py3-none-any.whl (2.0 MB)
Collecting rdflib<5.1,>=5.0.0
  Using cached rdflib-5.0.0-py3-none-any.whl (231 kB)
Collecting cwltool<3.2,>=3.0.20210319143721
  Using cached cwltool-3.1.20230325110543-py3-none-any.whl (1.3 MB)
Collecting calamus<0.3.9,>=0.3.8
  Using cached calamus-0.3.8-py3-none-any.whl (21 kB)
Collecting pyshacl==0.14.4
  Using cached pyshacl-0.14.4-py3-none-any.whl (193 kB)
Collecting cwlgen<=0.4.2,>=0.4.0
  Using cached cwlgen-0.4.2.tar.gz (25 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting portalocker<2.4,>=2.2.1
  Using cached portalocker-2.3.2-py2.py3-none-any.whl (15 kB)
Collecting pyasn1<=0.4.8,>=0.4.5
  Using cached pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
Collecting requests<=2.24.0,>=2.23.0
  Using cached requests-2.24.0-py2.py3-none-any.whl (61 kB)
Collecting gitpython==3.1.14
  Using cached GitPython-3.1.14-py3-none-any.whl (159 kB)
Collecting rdflib-jsonld<0.6.0,>=0.5.0
  Using cached rdflib-jsonld-0.5.0.tar.gz (55 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
Collecting renku
  Using cached renku-0.15.1-py2.py3-none-any.whl (2.0 MB)
Collecting jinja2<=2.11.4,>=2.10.3
  Using cached Jinja2-2.11.3-py2.py3-none-any.whl (125 kB)
Collecting humanize<3.4.0,>=2.5.0
  Using cached humanize-3.3.0-py3-none-any.whl (70 kB)
Collecting click<=7.1.2,>=7.0
  Using cached click-7.1.2-py2.py3-none-any.whl (82 kB)
Collecting cwltool<3.1,>=3.0.20210319143721
  Using cached cwltool-3.0.20210319143721-py3-none-any.whl (1.2 MB)
Collecting pyjwt==2.0.1
  Using cached PyJWT-2.0.1-py3-none-any.whl (15 kB)
Collecting werkzeug<=1.0.1,>=0.15.5
  Using cached Werkzeug-1.0.1-py2.py3-none-any.whl (298 kB)
Collecting environ-config<=20.1.0,>=18.2.0
  Using cached environ_config-20.1.0-py2.py3-none-any.whl (15 kB)
Collecting attrs<20.4.0,>=19.3.0
  Using cached attrs-20.3.0-py2.py3-none-any.whl (49 kB)
Collecting wcmatch<8.2,>=6.0.0
  Using cached wcmatch-8.1.2-py3-none-any.whl (40 kB)
Collecting rich<10.2.0,>=9.3.0
  Using cached rich-10.1.0-py3-none-any.whl (201 kB)
Collecting pathspec<=0.8.0,>=0.7.0
  Using cached pathspec-0.8.0-py2.py3-none-any.whl (28 kB)
Collecting pyshacl==0.14.3
  Using cached pyshacl-0.14.3-py3-none-any.whl (191 kB)
Collecting renku
  Using cached renku-0.15.0-py2.py3-none-any.whl (2.0 MB)
  Using cached renku-0.14.2-py2.py3-none-any.whl (2.0 MB)
Collecting tqdm<=4.48.2,>=4.48.1
  Using cached tqdm-4.48.2-py2.py3-none-any.whl (68 kB)
Collecting portalocker<2.3,>=2.2.1
  Using cached portalocker-2.2.1-py2.py3-none-any.whl (15 kB)
Collecting calamus<0.3.8,>=0.3.7
  Using cached calamus-0.3.7-py3-none-any.whl (21 kB)
Collecting pyjwt==2.0.0
  Using cached PyJWT-2.0.0-py3-none-any.whl (15 kB)
Collecting gitpython==3.1.12
  Using cached GitPython-3.1.12-py3-none-any.whl (159 kB)
Collecting psutil<=5.7.2,>=5.4.7
  Using cached psutil-5.7.2.tar.gz (460 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting pyOpenSSL<=19.1.0,>=19.0.0
  Using cached pyOpenSSL-19.1.0-py2.py3-none-any.whl (53 kB)
Collecting tabulate<=0.8.7,>=0.7.7
  Using cached tabulate-0.8.7-py3-none-any.whl (24 kB)
Collecting rich<9.4.0,>=9.3.0
  Using cached rich-9.3.0-py3-none-any.whl (166 kB)
Collecting setuptools-scm<=4.1.2,>=3.1.0
  Using cached setuptools_scm-4.1.2-py2.py3-none-any.whl (27 kB)
Collecting humanize<2.7.0,>=2.5.0
  Using cached humanize-2.6.0-py3-none-any.whl (68 kB)
Collecting renku
  Using cached renku-0.14.1-py2.py3-none-any.whl (2.0 MB)
Collecting PyYAML<=5.3.1,>=3.12
  Using cached PyYAML-5.3.1.tar.gz (269 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting renku
  Using cached renku-0.14.0-py2.py3-none-any.whl (2.0 MB)
Collecting jinja2<=2.11.2,>=2.10.3
  Using cached Jinja2-2.11.2-py2.py3-none-any.whl (125 kB)
Collecting renku
  Using cached renku-0.13.0-py2.py3-none-any.whl (1.9 MB)
Collecting rdflib-jsonld<0.6.0,>=0.4.0
  Using cached rdflib-jsonld-0.4.0.tar.gz (53 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
Collecting renku
  Using cached renku-0.12.3-py2.py3-none-any.whl (1.8 MB)
Collecting gitpython==3.1.11
  Using cached GitPython-3.1.11-py3-none-any.whl (159 kB)
Collecting calamus<0.3.4,>=0.3.3
  Using cached calamus-0.3.3-py3-none-any.whl (18 kB)
Collecting pyjwt==1.7.1
  Using cached PyJWT-1.7.1-py2.py3-none-any.whl (18 kB)
Collecting apispec<=4.1.0,>=4.0.0
  Using cached apispec-4.1.0-py2.py3-none-any.whl (26 kB)
Collecting cwltool<=3.0.20200807132242,>=3.0.20200724003302
  Using cached cwltool-3.0.20200807132242-py3-none-any.whl (1.2 MB)
Collecting cryptography<=3.2,>=3.2
  Using cached cryptography-3.2-cp35-abi3-manylinux2010_x86_64.whl (2.6 MB)
Collecting redis==3.5.3
  Using cached redis-3.5.3-py2.py3-none-any.whl (72 kB)
Collecting renku
  Using cached renku-0.12.2-py2.py3-none-any.whl (1.8 MB)
  Using cached renku-0.12.1-py2.py3-none-any.whl (1.8 MB)
Collecting walrus==0.8.1
  Using cached walrus-0.8.1.tar.gz (80 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting flask==1.1.2
  Using cached Flask-1.1.2-py2.py3-none-any.whl (94 kB)
Collecting flask-apispec==0.11.0
  Using cached flask_apispec-0.11.0-py2.py3-none-any.whl (2.3 MB)
Collecting rq==1.6.1
  Using cached rq-1.6.1-py2.py3-none-any.whl (62 kB)
Collecting renku
  Using cached renku-0.12.0-py2.py3-none-any.whl (1.8 MB)
Collecting apispec<=4.0.0,>=3.3.1
  Using cached apispec-4.0.0-py2.py3-none-any.whl (26 kB)
Collecting marshmallow==3.9.0
  Using cached marshmallow-3.9.0-py2.py3-none-any.whl (46 kB)
Collecting renku
  Using cached renku-0.11.6-py2.py3-none-any.whl (4.9 MB)
Collecting gitpython==3.1.0
  Using cached GitPython-3.1.0-py3-none-any.whl (450 kB)
Collecting calamus==0.3.2
  Using cached calamus-0.3.2-py3-none-any.whl (17 kB)
Collecting marshmallow==3.7.1
  Using cached marshmallow-3.7.1-py2.py3-none-any.whl (45 kB)
Collecting cryptography<=2.9.2,>=2.7
  Using cached cryptography-2.9.2-cp35-abi3-manylinux2010_x86_64.whl (2.7 MB)
Collecting flask-swagger-ui==3.25.0
  Using cached flask-swagger-ui-3.25.0.tar.gz (521 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting apispec<=3.3.2,>=3.3.1
  Using cached apispec-3.3.2-py2.py3-none-any.whl (27 kB)
Collecting renku
  Using cached renku-0.11.5-py2.py3-none-any.whl (4.9 MB)
  Using cached renku-0.11.4-py2.py3-none-any.whl (4.9 MB)
  Using cached renku-0.11.3-py2.py3-none-any.whl (4.9 MB)
  Using cached renku-0.11.2-py2.py3-none-any.whl (4.9 MB)
  Using cached renku-0.11.1-py2.py3-none-any.whl (4.9 MB)
Collecting gitdb2==3.0.1
  Using cached gitdb2-3.0.1-py2.py3-none-any.whl (63 kB)
Collecting flask-apispec==0.9.0
  Using cached flask_apispec-0.9.0-py2.py3-none-any.whl (2.3 MB)
Collecting apispec==3.3.1
  Using cached apispec-3.3.1-py2.py3-none-any.whl (26 kB)
Collecting renku
  Using cached renku-0.11.0-py2.py3-none-any.whl (4.9 MB)
  Using cached renku-0.10.5-py2.py3-none-any.whl (3.7 MB)
Collecting marshmallow==3.6.0
  Using cached marshmallow-3.6.0-py2.py3-none-any.whl (45 kB)
Collecting idna==2.8
  Using cached idna-2.8-py2.py3-none-any.whl (58 kB)
Collecting tqdm==4.46.0
  Using cached tqdm-4.46.0-py2.py3-none-any.whl (63 kB)
Collecting pyld<=1.0.5
  Using cached PyLD-1.0.5.tar.gz (52 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting flask-apispec==0.8.7
  Using cached flask_apispec-0.8.7-py2.py3-none-any.whl (2.3 MB)
Collecting cwltool==3.0.20200324120055
  Using cached cwltool-3.0.20200324120055-py3-none-any.whl (800 kB)
Collecting rq-scheduler==0.9.1
  Using cached rq_scheduler-0.9.1-py2.py3-none-any.whl (11 kB)
Collecting rq==1.4.1
  Using cached rq-1.4.1-py2.py3-none-any.whl (59 kB)
Collecting renku
  Using cached renku-0.10.4-py2.py3-none-any.whl (3.7 MB)
Collecting python-dateutil>=2.6.1
  Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting wcmatch>=6.0.0
  Using cached wcmatch-8.3-py3-none-any.whl (42 kB)
Collecting cryptography>=2.7
  Using cached cryptography-40.0.1-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB)
Collecting attrs>=19.3.0
  Using cached attrs-22.2.0-py3-none-any.whl (60 kB)
Collecting pathspec>=0.7.0
  Using cached pathspec-0.9.0-py2.py3-none-any.whl (31 kB)
Collecting jinja2>=2.10.3
  Using cached Jinja2-3.0.3-py3-none-any.whl (133 kB)
Collecting click>=7.0
  Using cached click-8.0.4-py3-none-any.whl (97 kB)
Collecting setuptools-scm>=3.1.0
  Using cached setuptools_scm-6.4.2-py3-none-any.whl (37 kB)
Collecting walrus>=0.8.0
  Using cached walrus-0.9.2.tar.gz (82 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting requests>=2.21.0
  Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB)
Collecting psutil>=5.4.7
  Using cached psutil-5.9.4-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (280 kB)
Collecting werkzeug>=0.15.5
  Using cached Werkzeug-2.0.3-py3-none-any.whl (289 kB)
Collecting pyOpenSSL>=19.0.0
  Using cached pyOpenSSL-23.1.1-py3-none-any.whl (57 kB)
Collecting pyshacl>=0.11.3.post1
  Using cached pyshacl-0.16.2.post2-py3-none-any.whl (197 kB)
Collecting tabulate>=0.7.7
  Using cached tabulate-0.8.10-py3-none-any.whl (29 kB)
Collecting filelock>=3.0.0
  Using cached filelock-3.4.1-py3-none-any.whl (9.9 kB)
Collecting renku
  Using cached renku-0.10.3-py2.py3-none-any.whl (3.7 MB)
Collecting marshmallow==3.5.1
  Using cached marshmallow-3.5.1-py2.py3-none-any.whl (45 kB)
Collecting redis==3.4.1
  Using cached redis-3.4.1-py2.py3-none-any.whl (71 kB)
Collecting humanize==2.3.0
  Using cached humanize-2.3.0-py3-none-any.whl (59 kB)
Collecting renku
  Using cached renku-0.10.2-py2.py3-none-any.whl (507 kB)
Collecting flask==1.1.1
  Using cached Flask-1.1.1-py2.py3-none-any.whl (94 kB)
Collecting cwltool==3.0.20200317203547
  Using cached cwltool-3.0.20200317203547-py3-none-any.whl (800 kB)
Collecting tqdm>=4.31.1
  Using cached tqdm-4.64.1-py2.py3-none-any.whl (78 kB)
Collecting python-editor>=1.0.4
  Using cached python_editor-1.0.4-py3-none-any.whl (4.9 kB)
Collecting rq==1.3.0
  Using cached rq-1.3.0-py2.py3-none-any.whl (59 kB)
Collecting rdflib-jsonld>=0.4.0
  Using cached rdflib_jsonld-0.6.2-py2.py3-none-any.whl (4.0 kB)
Collecting gitpython==3.0.8
  Using cached GitPython-3.0.8-py3-none-any.whl (450 kB)
Collecting apispec==3.3.0
  Using cached apispec-3.3.0-py2.py3-none-any.whl (26 kB)
Collecting pluggy>=0.13.1
  Using cached pluggy-1.0.0-py2.py3-none-any.whl (13 kB)
Collecting rdflib==4.2.2
  Using cached rdflib-4.2.2-py3-none-any.whl (344 kB)
Collecting PyYAML>=3.12
  Using cached PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (603 kB)
Collecting schema-salad<6,>=5.0.20200126033820
  Using cached schema_salad-5.0.20200416112825-py3-none-any.whl (457 kB)
Requirement already satisfied: setuptools in ./.local/pipx/shared/lib/python3.6/site-packages (from cwltool==3.0.20200317203547->renku) (58.2.0)
Collecting shellescape<3.5,>=3.4.1
  Using cached shellescape-3.4.1-py2.py3-none-any.whl (4.9 kB)
Collecting ruamel.yaml<=0.16.5,>=0.12.4
  Using cached ruamel.yaml-0.16.5-py2.py3-none-any.whl (123 kB)
Collecting mypy-extensions
  Using cached mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)
Collecting prov==1.5.1
  Using cached prov-1.5.1-py2.py3-none-any.whl (426 kB)
Collecting pathlib2!=2.3.1
  Using cached pathlib2-2.3.7.post1-py2.py3-none-any.whl (18 kB)
Collecting coloredlogs
  Using cached coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)
Collecting bagit>=1.6.4
  Using cached bagit-1.8.1-py2.py3-none-any.whl (35 kB)
Collecting typing-extensions
  Using cached typing_extensions-4.1.1-py3-none-any.whl (26 kB)
Collecting itsdangerous>=0.24
  Using cached itsdangerous-2.0.1-py3-none-any.whl (18 kB)
Collecting webargs<6.0.0,>=0.18.0
  Using cached webargs-5.5.3-py3-none-any.whl (29 kB)
Collecting six>=1.9.0
  Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting smmap2>=2.0.0
  Using cached smmap2-3.0.1-py3-none-any.whl (1.1 kB)
Collecting isodate
  Using cached isodate-0.6.1-py2.py3-none-any.whl (41 kB)
Collecting pyparsing
  Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
Collecting croniter>=0.3.9
  Using cached croniter-1.3.8-py2.py3-none-any.whl (18 kB)
Collecting networkx
  Using cached networkx-2.5.1-py3-none-any.whl (1.6 MB)
Collecting lxml
  Using cached lxml-4.9.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (6.6 MB)
Collecting importlib-metadata
  Using cached importlib_metadata-4.8.3-py3-none-any.whl (17 kB)
Collecting shellingham
  Using cached shellingham-1.4.0-py2.py3-none-any.whl (9.4 kB)
Collecting cffi>=1.12
  Using cached cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (402 kB)
Collecting MarkupSafe>=2.0
  Using cached MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB)
Collecting cachetools
  Using cached cachetools-4.2.4-py3-none-any.whl (10 kB)
Collecting frozendict
  Using cached frozendict-2.3.6-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (99 kB)
Collecting owlrl<6.0.0,>=5.2.3
  Using cached owlrl-5.2.3-py3-none-any.whl (57 kB)
Collecting pyshacl>=0.11.3.post1
  Using cached pyshacl-0.16.2.post1-py3-none-any.whl (197 kB)
  Using cached pyshacl-0.16.2-py3-none-any.whl (197 kB)
  Using cached pyshacl-0.16.1.post1-py3-none-any.whl (197 kB)
  Using cached pyshacl-0.16.1-py3-none-any.whl (197 kB)
  Using cached pyshacl-0.16.0-py3-none-any.whl (195 kB)
  Using cached pyshacl-0.15.0-py3-none-any.whl (194 kB)
  Using cached pyshacl-0.14.5-py3-none-any.whl (194 kB)
  Using cached pyshacl-0.14.2-py3-none-any.whl (192 kB)
  Using cached pyshacl-0.14.1-py3-none-any.whl (192 kB)
  Using cached pyshacl-0.14.0-py3-none-any.whl (191 kB)
  Using cached pyshacl-0.13.3-py3-none-any.whl (172 kB)
  Using cached pyshacl-0.13.2-py3-none-any.whl (172 kB)
  Using cached pyshacl-0.13.1-py3-none-any.whl (128 kB)
  Using cached pyshacl-0.13.0-py3-none-any.whl (124 kB)
  Using cached pyshacl-0.12.2-py3-none-any.whl (118 kB)
  Using cached pyshacl-0.12.1.post2-py3-none-any.whl (118 kB)
  Using cached pyshacl-0.12.1.post1-py3-none-any.whl (118 kB)
  Using cached pyshacl-0.12.1-py3-none-any.whl (117 kB)
  Using cached pyshacl-0.12.0-py3-none-any.whl (112 kB)
  Using cached pyshacl-0.11.6.post1-py3-none-any.whl (84 kB)
Collecting owlrl>=5.2.1
  Using cached owlrl-6.0.2-py3-none-any.whl (54 kB)
Collecting rdflib-jsonld>=0.4.0
  Using cached rdflib_jsonld-0.6.1-py2.py3-none-any.whl (16 kB)
  Using cached rdflib_jsonld-0.6.0-py2.py3-none-any.whl (16 kB)
Collecting charset-normalizer~=2.0.0
  Using cached charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
Collecting certifi>=2017.4.17
  Using cached certifi-2022.12.7-py3-none-any.whl (155 kB)
Collecting urllib3<1.27,>=1.21.1
  Using cached urllib3-1.26.15-py2.py3-none-any.whl (140 kB)
Collecting tomli>=1.0.0
  Using cached tomli-1.2.3-py3-none-any.whl (12 kB)
Collecting packaging>=20.0
  Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting importlib-resources
  Using cached importlib_resources-5.4.0-py3-none-any.whl (28 kB)
Collecting bracex>=2.1.1
  Using cached bracex-2.2.1-py3-none-any.whl (12 kB)
Collecting dataclasses
  Using cached dataclasses-0.8-py3-none-any.whl (19 kB)
Collecting pycparser
  Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB)
Collecting zipp>=0.5
  Using cached zipp-3.6.0-py3-none-any.whl (5.3 kB)
Collecting owlrl>=5.2.1
  Using cached owlrl-5.2.2-py3-none-any.whl (57 kB)
  Using cached owlrl-5.2.1-py3-none-any.whl (56 kB)
Collecting ruamel.yaml.clib>=0.1.2
  Using cached ruamel.yaml.clib-0.2.7-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (503 kB)
Collecting mistune<0.9,>=0.8.1
  Using cached mistune-0.8.4-py2.py3-none-any.whl (16 kB)
Collecting CacheControl<0.12,>=0.11.7
  Using cached CacheControl-0.11.7.tar.gz (13 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting schema-salad<6,>=5.0.20200126033820
  Using cached schema_salad-5.0.20200302192450-py3-none-any.whl (457 kB)
  Using cached schema_salad-5.0.20200220195218-py3-none-any.whl (457 kB)
  Using cached schema_salad-5.0.20200126033820-py3-none-any.whl (456 kB)
INFO: pip is looking at multiple versions of ruamel-yaml to determine which version is compatible with other requirements. This could take a while.
Collecting ruamel.yaml<=0.16.5,>=0.12.4
  Using cached ruamel.yaml-0.16.4-py2.py3-none-any.whl (123 kB)
INFO: pip is looking at multiple versions of pyparsing to determine which version is compatible with other requirements. This could take a while.
Collecting pyparsing
  Using cached pyparsing-3.0.8-py3-none-any.whl (98 kB)
INFO: pip is looking at multiple versions of pathlib2 to determine which version is compatible with other requirements. This could take a while.
Collecting pathlib2!=2.3.1
  Using cached pathlib2-2.3.6-py2.py3-none-any.whl (17 kB)
INFO: pip is looking at multiple versions of packaging to determine which version is compatible with other requirements. This could take a while.
Collecting packaging>=20.0
  Using cached packaging-21.2-py3-none-any.whl (40 kB)
INFO: pip is looking at multiple versions of owlrl to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of markupsafe to determine which version is compatible with other requirements. This could take a while.
Collecting MarkupSafe>=2.0
  Using cached MarkupSafe-2.0.0-cp36-cp36m-manylinux2010_x86_64.whl (30 kB)
INFO: pip is looking at multiple versions of itsdangerous to determine which version is compatible with other requirements. This could take a while.
Collecting itsdangerous>=0.24
  Using cached itsdangerous-2.0.0-py3-none-any.whl (18 kB)
  Using cached itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)
INFO: pip is looking at multiple versions of importlib-metadata to determine which version is compatible with other requirements. This could take a while.
Collecting importlib-metadata
  Using cached importlib_metadata-4.8.2-py3-none-any.whl (17 kB)
  Using cached importlib_metadata-4.8.1-py3-none-any.whl (17 kB)
INFO: pip is looking at multiple versions of croniter to determine which version is compatible with other requirements. This could take a while.
Collecting croniter>=0.3.9
  Using cached croniter-1.3.7-py2.py3-none-any.whl (17 kB)
  Using cached croniter-1.3.6-py2.py3-none-any.whl (17 kB)
INFO: pip is looking at multiple versions of charset-normalizer to determine which version is compatible with other requirements. This could take a while.
Collecting charset-normalizer~=2.0.0
  Using cached charset_normalizer-2.0.11-py3-none-any.whl (39 kB)
  Using cached charset_normalizer-2.0.10-py3-none-any.whl (39 kB)
INFO: pip is looking at multiple versions of cffi to determine which version is compatible with other requirements. This could take a while.
Collecting cffi>=1.12
  Using cached cffi-1.15.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (405 kB)
  Using cached cffi-1.14.6-cp36-cp36m-manylinux1_x86_64.whl (401 kB)
INFO: pip is looking at multiple versions of certifi to determine which version is compatible with other requirements. This could take a while.
Collecting certifi>=2017.4.17
  Using cached certifi-2022.9.24-py3-none-any.whl (161 kB)
INFO: pip is looking at multiple versions of ruamel-yaml to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyparsing to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pathlib2 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of packaging to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of markupsafe to determine which version is compatible with other requirements. This could take a while.
  Using cached certifi-2022.9.14-py3-none-any.whl (162 kB)
INFO: pip is looking at multiple versions of owlrl to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of bracex to determine which version is compatible with other requirements. This could take a while.
Collecting bracex>=2.1.1
  Using cached bracex-2.2-py3-none-any.whl (12 kB)
INFO: pip is looking at multiple versions of itsdangerous to determine which version is compatible with other requirements. This could take a while.
  Using cached bracex-2.1.1-py3-none-any.whl (10 kB)
INFO: pip is looking at multiple versions of bagit to determine which version is compatible with other requirements. This could take a while.
Collecting bagit>=1.6.4
  Using cached bagit-1.8.0-py2.py3-none-any.whl (35 kB)
INFO: pip is looking at multiple versions of importlib-metadata to determine which version is compatible with other requirements. This could take a while.
  Using cached bagit-1.7.0.tar.gz (28 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: pip is looking at multiple versions of werkzeug to determine which version is compatible with other requirements. This could take a while.
Collecting werkzeug>=0.15.5
  Using cached Werkzeug-2.0.2-py3-none-any.whl (288 kB)
INFO: pip is looking at multiple versions of croniter to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of wcmatch to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of charset-normalizer to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of walrus to determine which version is compatible with other requirements. This could take a while.
Collecting walrus>=0.8.0
  Using cached walrus-0.9.1.tar.gz (81 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of cffi to determine which version is compatible with other requirements. This could take a while.
  Using cached walrus-0.9.0.tar.gz (81 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of tqdm to determine which version is compatible with other requirements. This could take a while.
Collecting tqdm>=4.31.1
  Using cached tqdm-4.64.0-py2.py3-none-any.whl (78 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of certifi to determine which version is compatible with other requirements. This could take a while.
  Using cached tqdm-4.63.2-py2.py3-none-any.whl (76 kB)
INFO: pip is looking at multiple versions of tabulate to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of bracex to determine which version is compatible with other requirements. This could take a while.
Collecting tabulate>=0.7.7
  Using cached tabulate-0.8.8-py3-none-any.whl (25 kB)
INFO: pip is looking at multiple versions of setuptools-scm to determine which version is compatible with other requirements. This could take a while.
Collecting setuptools-scm>=3.1.0
  Using cached setuptools_scm-6.4.1-py3-none-any.whl (37 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of bagit to determine which version is compatible with other requirements. This could take a while.
  Using cached setuptools_scm-6.4.0-py3-none-any.whl (36 kB)
INFO: pip is looking at multiple versions of requests to determine which version is compatible with other requirements. This could take a while.
Collecting requests>=2.21.0
  Using cached requests-2.27.0-py2.py3-none-any.whl (63 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of werkzeug to determine which version is compatible with other requirements. This could take a while.
  Using cached requests-2.26.0-py2.py3-none-any.whl (62 kB)
INFO: pip is looking at multiple versions of rdflib-jsonld to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyyaml to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of wcmatch to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of walrus to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of tqdm to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of tabulate to determine which version is compatible with other requirements. This could take a while.
Collecting PyYAML>=3.12
  Using cached PyYAML-5.4-cp36-cp36m-manylinux1_x86_64.whl (640 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of python-editor to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of python-dateutil to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of setuptools-scm to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of requests to determine which version is compatible with other requirements. This could take a while.
Collecting python-dateutil>=2.6.1
  Using cached python_dateutil-2.8.0-py2.py3-none-any.whl (226 kB)
  Using cached python_dateutil-2.7.5-py2.py3-none-any.whl (225 kB)
INFO: pip is looking at multiple versions of pyshacl to determine which version is compatible with other requirements. This could take a while.
Collecting pyshacl>=0.11.3.post1
  Using cached pyshacl-0.11.6-py3-none-any.whl (84 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of pyyaml to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached pyshacl-0.11.5-py3-none-any.whl (83 kB)
  Using cached pyshacl-0.11.4-py3-none-any.whl (83 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of python-editor to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of python-dateutil to determine which version is compatible with other requirements. This could take a while.
  Using cached pyshacl-0.11.3.post1-py3-none-any.whl (81 kB)
INFO: pip is looking at multiple versions of pyopenssl to determine which version is compatible with other requirements. This could take a while.
Collecting pyOpenSSL>=19.0.0
  Using cached pyOpenSSL-23.1.0-py3-none-any.whl (57 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached pyOpenSSL-23.0.0-py3-none-any.whl (57 kB)
Collecting cryptography>=2.7
  Using cached cryptography-39.0.2-cp36-abi3-manylinux_2_24_x86_64.whl (4.1 MB)
INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while.
  Using cached cryptography-39.0.1-cp36-abi3-manylinux_2_24_x86_64.whl (4.1 MB)
Collecting pyOpenSSL>=19.0.0
  Using cached pyOpenSSL-22.1.0-py3-none-any.whl (57 kB)
INFO: pip is looking at multiple versions of rdflib-jsonld to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyshacl to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyopenssl to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyld to determine which version is compatible with other requirements. This could take a while.
Collecting pyld>=1.0.3
  Using cached PyLD-2.0.2.tar.gz (69 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached PyLD-2.0.1.tar.gz (69 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
  Using cached PyLD-2.0.0.tar.gz (69 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of pyld to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pyasn1 to determine which version is compatible with other requirements. This could take a while.
Collecting pyasn1>=0.4.5
  Using cached pyasn1-0.4.7-py2.py3-none-any.whl (76 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached pyasn1-0.4.6-py2.py3-none-any.whl (75 kB)
  Using cached pyasn1-0.4.5-py2.py3-none-any.whl (73 kB)
INFO: pip is looking at multiple versions of pyasn1 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of psutil to determine which version is compatible with other requirements. This could take a while.
Collecting psutil>=5.4.7
  Using cached psutil-5.9.3-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (290 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached psutil-5.9.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (280 kB)
  Using cached psutil-5.9.1-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (280 kB)
INFO: pip is looking at multiple versions of psutil to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of pluggy to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of patool to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of ndg-httpsclient to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of jinja2 to determine which version is compatible with other requirements. This could take a while.
Collecting jinja2>=2.10.3
  Using cached Jinja2-3.0.2-py3-none-any.whl (133 kB)
INFO: pip is looking at multiple versions of pluggy to determine which version is compatible with other requirements. This could take a while.
  Using cached Jinja2-3.0.0-py3-none-any.whl (133 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of patool to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of ndg-httpsclient to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of jinja2 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of filelock to determine which version is compatible with other requirements. This could take a while.
Collecting filelock>=3.0.0
  Using cached filelock-3.4.0-py3-none-any.whl (9.8 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached filelock-3.3.2-py3-none-any.whl (9.7 kB)
  Using cached filelock-3.3.1-py3-none-any.whl (9.7 kB)
INFO: pip is looking at multiple versions of filelock to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of environ-config to determine which version is compatible with other requirements. This could take a while.
Collecting environ-config>=18.2.0
  Using cached environ_config-21.1.0-py2.py3-none-any.whl (17 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached environ_config-19.1.0-py2.py3-none-any.whl (13 kB)
INFO: pip is looking at multiple versions of environ-config to determine which version is compatible with other requirements. This could take a while.
Collecting cryptography>=2.7
  Using cached cryptography-40.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.7 MB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of click-completion to determine which version is compatible with other requirements. This could take a while.
Collecting click-completion>=0.5.0
  Using cached click-completion-0.5.1.tar.gz (9.9 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
  Using cached click-completion-0.5.0.tar.gz (10.0 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
INFO: pip is looking at multiple versions of click-completion to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of click to determine which version is compatible with other requirements. This could take a while.
Collecting click>=7.0
  Using cached click-8.0.3-py3-none-any.whl (97 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached click-8.0.2-py3-none-any.whl (97 kB)
  Using cached click-8.0.1-py3-none-any.whl (97 kB)
INFO: pip is looking at multiple versions of click to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of attrs to determine which version is compatible with other requirements. This could take a while.
Collecting attrs>=19.3.0
  Using cached attrs-22.1.0-py2.py3-none-any.whl (58 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
  Using cached attrs-21.3.0-py2.py3-none-any.whl (61 kB)
INFO: pip is looking at multiple versions of attrs to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of appdirs to determine which version is compatible with other requirements. This could take a while.
Collecting appdirs>=1.4.3
  Using cached appdirs-1.4.3-py2.py3-none-any.whl (12 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: pip is looking at multiple versions of prov to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of rq-scheduler to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of rq to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of redis to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of rdflib to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of marshmallow to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of idna to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of gitpython to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of gitdb2 to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of flask-swagger-ui to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of flask-apispec to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of flask to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of cwltool 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 apispec to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of renku to determine which version is compatible with other requirements. This could take a while.
Collecting renku
  Using cached renku-0.10.1-py2.py3-none-any.whl (507 kB)
INFO: pip is looking at multiple versions of appdirs to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached renku-0.10.0-py2.py3-none-any.whl (505 kB)
  Using cached renku-0.9.1-py2.py3-none-any.whl (472 kB)
Collecting rq==1.2.2
  Using cached rq-1.2.2-py2.py3-none-any.whl (58 kB)
Collecting cwltool==2.0.20200224214940
  Using cached cwltool-2.0.20200224214940-py3-none-any.whl (795 kB)
Collecting flask-swagger-ui==3.20.9
  Using cached flask-swagger-ui-3.20.9.tar.gz (559 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting flask-apispec==0.8.5
  Using cached flask_apispec-0.8.5-py2.py3-none-any.whl (2.3 MB)
Collecting marshmallow==3.5.0
  Using cached marshmallow-3.5.0-py2.py3-none-any.whl (45 kB)
Collecting webargs>=0.18.0
  Using cached webargs-8.0.1-py3-none-any.whl (30 kB)
Collecting renku
  Using cached renku-0.9.0-py2.py3-none-any.whl (455 kB)
Collecting marshmallow==3.4.0
  Using cached marshmallow-3.4.0-py2.py3-none-any.whl (45 kB)
Collecting apispec==3.2.0
  Using cached apispec-3.2.0-py2.py3-none-any.whl (26 kB)
Collecting gitpython==3.0.5
  Using cached GitPython-3.0.5-py3-none-any.whl (455 kB)
Collecting redis==3.3.11
  Using cached redis-3.3.11-py2.py3-none-any.whl (66 kB)
Collecting cwltool==2.0.20200126090152
  Using cached cwltool-2.0.20200126090152-py3-none-any.whl (725 kB)
Collecting idna>=2.8
  Using cached idna-3.4-py3-none-any.whl (61 kB)
Collecting gitdb2>=2.0.0
  Using cached gitdb2-4.0.2-py3-none-any.whl (1.1 kB)
Collecting gitdb>=4.0.1
  Using cached gitdb-4.0.9-py3-none-any.whl (63 kB)
Collecting gitdb2>=2.0.0
  Using cached gitdb2-3.0.3.post1-py2.py3-none-any.whl (63 kB)
Collecting smmap2<3,>=2
  Using cached smmap2-2.0.5-py2.py3-none-any.whl (24 kB)
Collecting gitdb2>=2.0.0
  Using cached gitdb2-3.0.3-py2.py3-none-any.whl (63 kB)
INFO: pip is looking at multiple versions of gitdb2 to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
Collecting idna>=2.8
  Using cached idna-3.3-py3-none-any.whl (61 kB)
  Using cached idna-3.2-py3-none-any.whl (59 kB)
INFO: pip is looking at multiple versions of idna to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
Collecting renku
  Using cached renku-0.8.2-py2.py3-none-any.whl (360 kB)
Collecting gitpython==3.0.3
  Using cached GitPython-3.0.3-py3-none-any.whl (453 kB)
Collecting cwltool==1.0.20181012180214
  Using cached cwltool-1.0.20181012180214-py2.py3-none-any.whl (606 kB)
Collecting subprocess32>=3.5.0
  Using cached subprocess32-3.5.4.tar.gz (97 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting scandir
  Using cached scandir-1.10.0.tar.gz (33 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting schema-salad<3,>=2.7.20180905124720
  Using cached schema_salad-2.7.20181126142424-py2.py3-none-any.whl (404 kB)
Collecting ruamel.yaml<=0.15.51,>=0.12.4
  Using cached ruamel.yaml-0.15.51-cp36-cp36m-manylinux1_x86_64.whl (640 kB)
Collecting avro-cwl==1.8.4
  Using cached avro_cwl-1.8.4-py3-none-any.whl (37 kB)
Collecting typing>=3.6.4
  Using cached typing-3.7.4.3.tar.gz (78 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting future-nodefix
  Using cached future_nodefix-0.17.0-py2.py3-none-any.whl (488 kB)
Collecting schema-salad<3,>=2.7.20180905124720
  Using cached schema_salad-2.7.20181116024232-py2.py3-none-any.whl (404 kB)
  Using cached schema_salad-2.7.20181017120439-py2.py3-none-any.whl (389 kB)
  Using cached schema_salad-2.7.20181012180226-py2.py3-none-any.whl (389 kB)
  Using cached schema_salad-2.7.20180905124720-py2.py3-none-any.whl (385 kB)
Collecting ruamel.yaml<=0.15.51,>=0.12.4
  Using cached ruamel.yaml-0.15.50-cp36-cp36m-manylinux1_x86_64.whl (639 kB)
Collecting renku
  Using cached renku-0.8.1-py2.py3-none-any.whl (360 kB)
  Using cached renku-0.8.0-py2.py3-none-any.whl (360 kB)
INFO: pip is looking at multiple versions of rdflib to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of gitpython to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of prov 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 cwltool to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of renku to determine which version is compatible with other requirements. This could take a while.
  Using cached renku-0.7.2-py2.py3-none-any.whl (339 kB)
  Using cached renku-0.7.1-py2.py3-none-any.whl (339 kB)
  Using cached renku-0.7.0-py2.py3-none-any.whl (339 kB)
Collecting gitpython>=2.1.8
  Using cached GitPython-3.1.18-py3-none-any.whl (170 kB)
Collecting smmap<6,>=3.0.1
  Using cached smmap-5.0.0-py3-none-any.whl (24 kB)
INFO: pip is looking at multiple versions of gitdb to determine which version is compatible with other requirements. This could take a while.
Collecting gitdb<5,>=4.0.1
  Using cached gitdb-4.0.8-py3-none-any.whl (63 kB)
Collecting renku
  Using cached renku-0.6.1-py2.py3-none-any.whl (338 kB)
  Using cached renku-0.6.0-py2.py3-none-any.whl (187 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached renku-0.5.2-py2.py3-none-any.whl (178 kB)
  Using cached renku-0.5.1-py2.py3-none-any.whl (176 kB)
  Using cached renku-0.5.0-py2.py3-none-any.whl (161 kB)
  Using cached renku-0.4.0-py2.py3-none-any.whl (150 kB)
  Using cached renku-0.3.3-py2.py3-none-any.whl (129 kB)
INFO: pip is looking at multiple versions of gitdb to determine which version is compatible with other requirements. This could take a while.
  Using cached renku-0.3.2.post1-py2.py3-none-any.whl (128 kB)
  Using cached renku-0.3.2-py2.py3-none-any.whl (128 kB)
  Using cached renku-0.3.1-py2.py3-none-any.whl (128 kB)
  Using cached renku-0.3.0.post2-py2.py3-none-any.whl (128 kB)
  Using cached renku-0.3.0.post1-py2.py3-none-any.whl (128 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached renku-0.3.0-py2.py3-none-any.whl (128 kB)
  Using cached renku-0.2.0-py2.py3-none-any.whl (100 kB)
Collecting cwltool==1.0.20180820141117
  Using cached cwltool-1.0.20180820141117-py2.py3-none-any.whl (3.2 MB)
Collecting pydot>=1.2.4
  Using cached pydot-1.4.2-py2.py3-none-any.whl (21 kB)
Collecting decorator<5,>=4.3
  Using cached decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
Collecting rdflib-jsonld<0.5.0,>=0.3.0
  Using cached rdflib-jsonld-0.3.tar.gz (57 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
Collecting schema-salad<3,>=2.7.20180719125426
  Using cached schema_salad-2.7.20180809223002-py2.py3-none-any.whl (382 kB)
  Using cached schema_salad-2.7.20180731120629-py2.py3-none-any.whl (382 kB)
  Using cached schema_salad-2.7.20180724081820-py2.py3-none-any.whl (382 kB)
  Using cached schema_salad-2.7.20180719125426-py2.py3-none-any.whl (382 kB)
INFO: pip is looking at multiple versions of decorator to determine which version is compatible with other requirements. This could take a while.
Collecting decorator<5,>=4.3
  Using cached decorator-4.4.1-py2.py3-none-any.whl (9.2 kB)
INFO: pip is looking at multiple versions of pydot to determine which version is compatible with other requirements. This could take a while.
Collecting pydot>=1.2.4
  Using cached pydot-1.4.1-py2.py3-none-any.whl (19 kB)
INFO: pip is looking at multiple versions of networkx to determine which version is compatible with other requirements. This could take a while.
Collecting networkx>=2.1
  Using cached networkx-2.5-py3-none-any.whl (1.6 MB)

The conflict is caused by:
    renku 0.16.7 depends on rdflib<7.0 and >=6.0.0
    renku 0.16.6 depends on rdflib<7.0 and >=6.0.0
    renku 0.16.5 depends on rdflib<7.0 and >=6.0.0
    renku 0.16.4 depends on rdflib<7.0 and >=6.0.0
    renku 0.16.3 depends on rdflib<7.0 and >=6.0.0
    renku 0.16.2 depends on pyshacl==0.17.0.post1
    renku 0.16.1.post1 depends on pyshacl==0.17
    renku 0.16.1 depends on pyshacl==0.17
    renku 0.16.0 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.15.1 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.15.0 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.14.2 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.14.1 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.14.0 depends on rdflib-jsonld<0.6.0 and >=0.5.0
    renku 0.13.0 depends on rdflib-jsonld<0.6.0 and >=0.4.0
    renku 0.12.3 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.12.2 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.12.1 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.12.0 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.6 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.5 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.4 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.3 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.2 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.1 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.11.0 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.10.5 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.10.4 depends on rdflib-jsonld<0.5.0 and >=0.4.0
    renku 0.10.3 depends on rdflib-jsonld<0.5.0 and >=0.4.0

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

PIP STDERR
----------
  ERROR: Command errored out with exit status 1:
   command: /home/pulver/.local/pipx/venvs/renku/bin/python -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_d60764f2895e4e6095e7a649386590cc/setup.py'"'"'; __file__='"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_d60764f2895e4e6095e7a649386590cc/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-l5c1wq3f
       cwd: /tmp/pip-install-db4xxcuo/rdflib-jsonld_d60764f2895e4e6095e7a649386590cc/
  Complete output (1 lines):
  error in rdflib-jsonld setup command: use_2to3 is invalid.
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/f5/17/45e137be0d93b70827fe5529c0400731344a978bc792193d7d9152e6dbe4/rdflib-jsonld-0.5.0.tar.gz#sha256=4f7d55326405071c7bce9acf5484643bcb984eadb84a6503053367da207105ed (from https://pypi.org/simple/rdflib-jsonld/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  ERROR: Command errored out with exit status 1:
   command: /home/pulver/.local/pipx/venvs/renku/bin/python -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_d305fbe2d9c94294834be20ea33d73e1/setup.py'"'"'; __file__='"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_d305fbe2d9c94294834be20ea33d73e1/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-s5_agk1r
       cwd: /tmp/pip-install-db4xxcuo/rdflib-jsonld_d305fbe2d9c94294834be20ea33d73e1/
  Complete output (1 lines):
  error in rdflib-jsonld setup command: use_2to3 is invalid.
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/ba/48/edaad22fc9de34500699f0c7fc9124385dd425fd18857244f126a6f7df66/rdflib-jsonld-0.4.0.tar.gz#sha256=144774786a2fc7de09b24a9309cbcccc78bc48b152536d2ea1c1df2ad715bc2d (from https://pypi.org/simple/rdflib-jsonld/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
  ERROR: Command errored out with exit status 1:
   command: /home/pulver/.local/pipx/venvs/renku/bin/python -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_4172dabf94204a3282606fa2eab4381a/setup.py'"'"'; __file__='"'"'/tmp/pip-install-db4xxcuo/rdflib-jsonld_4172dabf94204a3282606fa2eab4381a/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-ubkzz7x_
       cwd: /tmp/pip-install-db4xxcuo/rdflib-jsonld_4172dabf94204a3282606fa2eab4381a/
  Complete output (313 lines):
  creating build
  creating build/src
  creating build/src/docs
  creating build/src/rdflib_jsonld
  creating build/src/test
  creating build/src/test/test-suite
  creating build/src/test/test-suite/tests
  copying README.md -> build/src
  copying rdflib_jsonld/__init__.py -> build/src/rdflib_jsonld
  copying rdflib_jsonld/util.py -> build/src/rdflib_jsonld
  copying rdflib_jsonld/serializer.py -> build/src/rdflib_jsonld
  copying rdflib_jsonld/context.py -> build/src/rdflib_jsonld
  copying rdflib_jsonld/parser.py -> build/src/rdflib_jsonld
  copying rdflib_jsonld/keys.py -> build/src/rdflib_jsonld
  copying setup.py -> build/src
  copying setup.cfg -> build/src
  copying docs/make.bat -> build/src/docs
  copying docs/Makefile -> build/src/docs
  copying docs/jsonld-parser.rst -> build/src/docs
  copying docs/conf.py -> build/src/docs
  copying docs/index.rst -> build/src/docs
  copying docs/jsonld-serializer.rst -> build/src/docs
  copying test/__init__.py -> build/src/test
  copying test/test_compaction.pyc -> build/src/test
  copying test/test_compaction.py -> build/src/test
  copying test/README.md -> build/src/test
  copying test/test_context.rst -> build/src/test
  copying test/earl-context.jsonld -> build/src/test
  copying test/test_testsuite.py -> build/src/test
  copying test/test_api.py -> build/src/test
  copying test/.DS_Store -> build/src/test
  copying test/test_api.pyc -> build/src/test
  copying test/test_testsuite.pyc -> build/src/test
  copying test/__init__.pyc -> build/src/test
  copying test/test-suite/vocab_context.jsonld -> build/src/test/test-suite
  copying test/test-suite/context.jsonld -> build/src/test/test-suite
  copying test/test-suite/README -> build/src/test/test-suite
  copying test/test-suite/.DS_Store -> build/src/test/test-suite
  copying test/test-suite/vocab.jsonld -> build/src/test/test-suite
  copying test/test-suite/manifest.jsonld -> build/src/test/test-suite
  copying test/test-suite/tests/toRdf-0027-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0092-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0050-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0079-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0069-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0017-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0015-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0069-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0028-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0107-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0003-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0066-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0026-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-manifest.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0018-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0002-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0005-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0090-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0012-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0001-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0033-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0074-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0103-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0059-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0098-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0058-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0002-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0012-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0011-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0062-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0054-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0077-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0089-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0004-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0020-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0113-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0014-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0064-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0015-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0017-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0118-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0026-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0016-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-manifest.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0074-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0029-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0101-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0003-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0073-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0088-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0015-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0011-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0050-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0028-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0044-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0051-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0064-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0117-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0036-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0017-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0085-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0042-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0110-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0063-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0096-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0046-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0065-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0095-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0101-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0094-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0016-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0052-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0119-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0070-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0001-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0061-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0006-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0094-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0093-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0023-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0047-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0032-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0002-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0067-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0012-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0080-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0008-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0112-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0011-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0030-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0047-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0057-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0022-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0071-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0013-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0108-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0035-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0010-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0011-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0066-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0093-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0078-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0033-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0062-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0087-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0081-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0077-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0024-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0104-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0001-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0086-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0048-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0054-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0102-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0035-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0073-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0100-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0017-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0022-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0072-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0107-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0084-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0075-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0058-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0117-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0119-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0010-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0003-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0044-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0104-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0068-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0018-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0090-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0076-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0005-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0060-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0072-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0114-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0016-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0115-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0053-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0111-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0018-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0097-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0003-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0045-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0116-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0046-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0102-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0005-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0086-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0055-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0041-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0002-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0052-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0060-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0057-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0019-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0106-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0080-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0118-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0111-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0109-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0008-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0042-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0083-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0006-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0083-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0018-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0055-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0109-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0025-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0085-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0105-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0010-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0088-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0016-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0110-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0013-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0043-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0004-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0049-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0041-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0004-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0024-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0091-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0009-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0106-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0070-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0029-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0100-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0103-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0014-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0023-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0010-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0087-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0053-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0068-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0006-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0001-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0013-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0004-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0071-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0095-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0045-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0020-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0030-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0084-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0114-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0025-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0116-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0061-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0112-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0008-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0065-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0105-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0019-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0078-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0059-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0036-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0034-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0092-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0019-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0009-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0063-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0007-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0098-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0081-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0013-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0075-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0099-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0031-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0056-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0108-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0019-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0043-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0012-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0014-in.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0034-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0048-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0007-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0014-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0113-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0006-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0007-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0096-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0051-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0082-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0099-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0056-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0089-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0079-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0049-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0091-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0009-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0097-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0032-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0076-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0015-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0007-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0067-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0031-in.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0008-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0005-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/fromRdf-0009-out.jsonld -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0115-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0082-out.nq -> build/src/test/test-suite/tests
  copying test/test-suite/tests/toRdf-0027-out.nq -> build/src/test/test-suite/tests
  Skipping optional fixer: buffer
  Skipping optional fixer: idioms
  Skipping optional fixer: set_literal
  Skipping optional fixer: ws_comma
  error in rdflib-jsonld setup command: use_2to3 is invalid.
  ----------------------------------------
WARNING: Discarding https://files.pythonhosted.org/packages/c0/eb/f2113006f73f6270fdb29eca74ce3e6c7a172c9166aa2a482f039cda2c3e/rdflib-jsonld-0.3.tar.gz#sha256=944a1cf22a217bd78acacc183ea329848cba3f24d0cfb86541b42732cd412a88 (from https://pypi.org/simple/rdflib-jsonld/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Cannot install renku==0.10.3, renku==0.10.4, renku==0.10.5, renku==0.11.0, renku==0.11.1, renku==0.11.2, renku==0.11.3, renku==0.11.4, renku==0.11.5, renku==0.11.6, renku==0.12.0, renku==0.12.1, renku==0.12.2, renku==0.12.3, renku==0.13.0, renku==0.14.0, renku==0.14.1, renku==0.14.2, renku==0.15.0, renku==0.15.1, renku==0.16.0, renku==0.16.1, renku==0.16.1.post1, renku==0.16.2, renku==0.16.3, renku==0.16.4, renku==0.16.5, renku==0.16.6 and renku==0.16.7 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies

I just saw in your log that you use python 3.6, which reached its end of life in December 2021. We do not support that version of python, and also recently dropped support for python 3.7 (reaching it’s end of life in 2 months).
So that might well be the reason.
Other than that it looks like an issue with pipx dependency resolver.
we do offer a renku-lock package, which is the same as the regular package but with dependencies strictly locked. But I don’t think there is one available for such an old version of python.

Great I updated to python3.9 and everything wors fine

I just found this because I ran into a similar problem when trying to re-install renku in a new conda environment. At Install the Renku Command-line Interface — Renku documentation, the instructions explicitly say to choose python=3.6, so this should be updated. Thanks!

Thanks @schymans for reporting this! We’ll update the instructions.

Maybe we should also investigate if pipx should still be the recommended method for a local installation?

1 Like

While you are at it, I still have trouble installing renku in a new conda environment. In the past, I have simply run pip install renku inside a conda environment, but now with Python 3.11, I get an error:

ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects

What version of python should I use? Do I have to specify python=3.9?

I haven’t understood the rest of the Bleeding edge instructions, either. Why not simply:

conda activate renku
pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku

Is the long command with grep and awk, and putting the link into ~/.renku/bin and setting the PATH really needed?

What version of python should I use? Do I have to specify python=3.9?

I could reproduce your error. It seems that NumPy 1.21.1 doesn’t have pre-compiled wheels for Python 3.11. One solution is to try something like NumPy 1.21.2 may not yet support Python 3.10 - Stack Overflow.

The best solution is to install renku 2.4.0rc2. We upgraded numpy version in this release. This is a stable Renku release that we have to mark as an RC (for now) to be compatible with renkulab.io. To install it, just run pip install --pre renku.

Using Python 3.9 is another solution.

Is the long command with grep and awk, and putting the link into ~/.renku/bin and setting the PATH really needed?

I’m not sure what’s the reason for that long command but your suggestion seems to work too since it’s using the correct pip file. The reason for sym-linking and updating the PATH is to be able to run renku without activating the conda env.

1 Like

I think the grep/awk is to install renku in the correct environment, it’s installed in a separate env so our dependencies don’t conflict with users’ dependencies.

Thanks, Ralf. But would this not be achieved by just executing conda activate renku beforehand?

it’s installed in a regular venv, not a conda env, from what I remember

Sorry, I should have pasted the instructions I was referring to. It’s in the bleeding-edge section:

conda create -y -n renku python=3.9

(conda env list | grep '^renku\s' | awk '{print $2}')/bin/pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku
mkdir -p ~/.renku/bin
ln -s "$(conda env list | grep '^renku\s' | awk '{print $2}')/bin/renku" ~/.renku/bin/renku

My suggestion was to replace the above by:

conda create -y -n renku python=3.9
conda activate renku
pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku

Wouldn’t this do?

Sorry I was thinking of the Dockerfile because of the other issue you opened, Yes of course you are correct that what you wrote makes more sense in a local install.

1 Like