Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

pip backtrack #30

Open
eight04 opened this issue Jun 18, 2021 · 1 comment
Open

pip backtrack #30

eight04 opened this issue Jun 18, 2021 · 1 comment

Comments

@eight04
Copy link
Owner

eight04 commented Jun 18, 2021

I was trying to update prod dependencies of ptt-mail-backup

vpip update uao wcwidth --latest

It is fast while installing packages:

Requirement already satisfied: uao in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (0.1.1)
Collecting uao
  Downloading uao-0.2.0-py3-none-any.whl (229 kB)
     |████████████████████████████████| 229 kB 1.1 MB/s
Installing collected packages: uao
  Attempting uninstall: uao
    Found existing installation: uao 0.1.1
    Uninstalling uao-0.1.1:
      Successfully uninstalled uao-0.1.1
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
ptt-article-parser 0.5.0 requires uao<0.2,>=0.1, but you have uao 0.2.0 which is incompatible.
ptt-mail-backup 0.3.0 requires uao~=0.1.1, but you have uao 0.2.0 which is incompatible.
Successfully installed uao-0.2.0
Requirement already satisfied: wcwidth in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (0.1.9)
Collecting wcwidth
  Downloading wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Installing collected packages: wcwidth
  Attempting uninstall: wcwidth
    Found existing installation: wcwidth 0.1.9
    Uninstalling wcwidth-0.1.9:
      Successfully uninstalled wcwidth-0.1.9
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
ptt-mail-backup 0.3.0 requires uao~=0.1.1, but you have uao 0.2.0 which is incompatible.
ptt-mail-backup 0.3.0 requires wcwidth~=0.1.7, but you have wcwidth 0.2.5 which is incompatible.
Successfully installed wcwidth-0.2.5

However, it did a 40 mins backtrack while running pip install -e .

Obtaining file:///C:/Users/eight04/dev/ptt-mail-backup
Requirement already satisfied: paramiko~=2.6 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-mail-backup==0.3.0) (2.7.2)
Requirement already satisfied: ptt-article-parser~=0.5.0 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-mail-backup==0.3.0) (0.5.0)
Requirement already satisfied: uao~=0.2.0 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-mail-backup==0.3.0) (0.2.0)
Requirement already satisfied: wcwidth~=0.2.5 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-mail-backup==0.3.0) (0.2.5)
Requirement already satisfied: cryptography>=2.5 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from paramiko~=2.6->ptt-mail-backup==0.3.0) (3.4.7)
Requirement already satisfied: pynacl>=1.0.1 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from paramiko~=2.6->ptt-mail-backup==0.3.0) (1.4.0)
Requirement already satisfied: bcrypt>=3.1.3 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from paramiko~=2.6->ptt-mail-backup==0.3.0) (3.2.0)
Requirement already satisfied: cffi>=1.1 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from bcrypt>=3.1.3->paramiko~=2.6->ptt-mail-backup==0.3.0) (1.14.5)
Requirement already satisfied: six>=1.4.1 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from bcrypt>=3.1.3->paramiko~=2.6->ptt-mail-backup==0.3.0) (1.16.0)
Requirement already satisfied: pycparser in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from cffi>=1.1->bcrypt>=3.1.3->paramiko~=2.6->ptt-mail-backup==0.3.0) (2.20)
Requirement already satisfied: safeprint~=0.2.0 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-article-parser~=0.5.0->ptt-mail-backup==0.3.0) (0.2.0)
Requirement already satisfied: docopt~=0.6.2 in c:\users\eight04\dev\ptt-mail-backup\.venv\lib\site-packages (from ptt-article-parser~=0.5.0->ptt-mail-backup==0.3.0) (0.6.2)
INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while.
Collecting cryptography>=2.5
  Using cached cryptography-3.4.7-cp36-abi3-win32.whl (1.4 MB)
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.
  Downloading cryptography-3.4.6-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 1.1 MB/s
  Downloading cryptography-3.4.5-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 3.3 MB/s
  Downloading cryptography-3.4.4-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 6.4 MB/s
  Downloading cryptography-3.4.3-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 3.3 MB/s
  Downloading cryptography-3.4.2-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 6.4 MB/s
  Downloading cryptography-3.4.1-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 6.4 MB/s
Collecting setuptools-rust>=0.11.4
  Downloading setuptools_rust-0.12.1-py3-none-any.whl (22 kB)
INFO: pip is looking at multiple versions of cryptography to determine which version is compatible with other requirements. This could take a while.
Collecting cryptography>=2.5
  Downloading cryptography-3.4-cp36-abi3-win32.whl (1.4 MB)
     |████████████████████████████████| 1.4 MB 6.4 MB/s
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.
  Downloading cryptography-3.3.2-cp36-abi3-win32.whl (1.3 MB)
...

Ended with the following error:

ERROR: Cannot install cryptography==3.4.7 and paramiko because these package versions have conflicting dependencies.

The conflict is caused by:
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.7 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.6 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.5 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.4 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.3 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.2 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4.1 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.4 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.3.2 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.3.1 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.3 depends on cffi>=1.12
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.2.1 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.2 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.1.1 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.1 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 3.0 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.9.2 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.9.1 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.9 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.8 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.7 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.6.1 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.6 depends on cffi!=1.11.3 and >=1.8
    bcrypt 3.1.3 depends on cffi>=1.1
    cryptography 2.5 depends on cffi!=1.11.3 and >=1.8

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
@eight04
Copy link
Owner Author

eight04 commented Jun 18, 2021

if result.incompat_update:
# rebuild egg file to avoid incompatible errors
# https://github.com/eight04/vpip/issues/19
pip_api.install_editable()

Would it help if we don't call pip but setuptools directly?

python setup.py egg_info

It is also interesting that pip didn't backtrack at the first vpip install.

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

No branches or pull requests

1 participant