Closed sxwebster closed 1 year ago
Try:
pip install wrapt==1.15.0rc1
and see if it solves your problems.
@GrahamDumpleton It does not. This is explained in the issue above.
No it isn't explained in the above. Unless pip-system-certs
has specified a range which precludes it being installed, you should be able to pin wrapt
to 1.15.0rc1
in a requirements.txt
file or on pip
command line. So if you are using requirements.txt
file did you try:
wrapt==1.15.0rc1
If you did, what was the error from pip
when trying to install it?
In other words, 1.15.0rc1
which is on PyPi includes Python 3.11 wheels. I have been waiting for a few people to test the release candidate before make official release.
Log below. It will not matter if pip is reading a requirements.txt, because pip refuses to connect due to custom certificates being in place. To resolve that, I'll need to grab a wheel file and install that manually, in order to install pip-system-certs, in order get pip to read the local certificate store.
When I'm looking at pypi under the downloads heading, there is no wheel file for 3.11, just 3.10 and prior from May 2, 2022. I can see there is a 1.15 rc in releases. Awesome. I literally cannot use pip to get it. If I could get a wheel file for it, then I could almost certainly get pip to work as I have with previous versions.
Is there any chance you could build a wheel file for it? I can then test it.
C:\Users\sxwebster\Downloads>pip install wrapt=1.15.0rc1 ERROR: Invalid requirement: 'wrapt=1.15.0rc1' Hint: = is not a valid operator. Did you mean == ?
C:\Users\sxwebster\Downloads>pip install wrapt==1.15.0rc1 WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:992)'))': /simple/wrapt/ WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:992)'))': /simple/wrapt/
C:\Users\sxwebster\Downloads>python -m pip install "wrapt>=1.15.0rc1" WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:992)'))': /simple/wrapt/ WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:992)'))': /simple/wrapt/
All the wheel files for that release are on PyPi.
https://pypi.org/project/wrapt/1.15.0rc1/#files
Are you saying the specific platform wheel you need is not there.
I rely on the pypa/cibuildwheel
GitHub action to build wheels so if they are not building the wheel you need am not sure what I can do.
This is clearly a me issue with navigating pypi. I was clicking download files
from the main wrapt homepage. I had to enter the releases page, open the release, then click the same download files link to get to the wheels for 1.15.0rc1.
I'll try it and get back to you.
For a standard windows python install with python 3.11 is there a particular build you'd recommend? the 'any' build?
The any
build is a fallback to a pure Python source code implementation. For 64bit Windows on Intel you would probably want wrapt-1.15.0rc1-cp311-cp311-win_amd64.whl
. This has compiled C extensions so bit less overhead.
Thank you very much.
Whilst I can't attest to comprehensive testing, the following might help:
I downloaded https://files.pythonhosted.org/packages/f8/ec/ada95455e5d5e171057d6fa2966652e0ae79e04e54d4753b792d4ba1c097/wrapt-1.15.0rc1-cp311-cp311-win_amd64.whl
and installed with pip install wrapt-1.15.0rc1-cp311-cp311-win_amd64.whl
Result:
C:\Users\sxwebster\Downloads>pip install wrapt-1.15.0rc1-cp311-cp311-win_amd64.whl
Processing c:\users\sxwebster\downloads\wrapt-1.15.0rc1-cp311-cp311-win_amd64.whl
Installing collected packages: wrapt
Successfully installed wrapt-1.15.0rc1
I subsequently grabbed the wheel file for pip-system-certs
from here https://files.pythonhosted.org/packages/70/82/78c30a18858d484acd13a3aea22ead89c66f200e118d1aa4b4bae392efee/pip_system_certs-4.0-py2.py3-none-any.whl
.
Using pip install pip_system_certs-4.0-py2.py3-none-any
resulted in a successful install.
Follow up testing installing a never before installed package with a complex dependencies list, Ansible
, was successful.
Thanks for your time, help, and advice. It's contributions like yours with wrapt that make the Python ecosystem tick!
There is no wheel file available via PyPi for Python 3.11.
Importantly it's not possible to use
pip install wrapt
in an enterprise setting where SSL inspection is being used.Wrapt
is a dependency ofpip-system-certs
, where the latter overcomes SSL breakages caused by custom root certificates / self signed certificates being present. Thus, it's necessary to download the first set of dependencies (wrapt and pip-system-certs) as wheel files and install in order to get pip working.Without a build of
wrapt
available for Python 3.11 this setup is currently broken, leaving these sorts of users stuck. Those users are likely to come from government, academia, and the like. Basically places that can afford to provide devices to staff,students, volunteers, and who have any moderate sort of cybersecurity.