-
Notifications
You must be signed in to change notification settings - Fork 120
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
requests==2.32.0 breakage: Not supported URL scheme http+docker #860
Comments
There is no commit that could change that. I'm pretty sure this is not related to this collection, but to some third-party code. Also without any information on which task is actually failing, this is impossible to debug or even further investigate. |
I agree with you. Is likely coming from another location, but it does reproduce on CI: https://github.com/ansible/molecule/actions/runs/9162868658/job/25190776037?pr=4183#step:10:95 I am still working on finding the source. I will close it for now as it is clearly not caused by 3.10, tried 3.9 and 3.8.1 and got the same error. Still, is must be something that happened in the last 5 days, as I do have a success job that is this old. |
If I understand it correctly, the first CI failure showed up roughly one hour ago in ansible/molecule? There's a new release of requests (2.32.0) that's two hours old. Could be related to that. |
CI for this collection was still running through this morning (11 hours ago), but is no longer. My guess is that it's requests; also that error message fits pretty well to this hypothesis since the code registers a handler for http+docker with requests. |
According to |
Ok, this isn't very surprising, since that commit makes |
docker/docker-py#3256 is the corresponding issue in Docker SDK for Python. |
#861 has a hotfix for this. I'll try to get it out today so it will get included in tomorrow's Ansible releases. |
Apparently requests==2.32.0 is incompatible with vendored versions of docker-py from inside community.docker collection. We do not have a direct dependency on that but one of our integration tests fails, so we only update our test dependencies. Related: docker/docker-py#3256 Related: ansible-collections/community.docker#860 Related: ansible-collections/community.docker#861
community.docker 3.10.1 is out with that fix. Depending on which modules/plugins you use it should be fixed. If you're using Docker Swarm stuff, or the deprecated docker_compose v1 module, you will need to pin requests for now. |
I got hit by this and has been a nasty thing that broke some critical things :( |
This is breaking again for me even with the 3.10.1, it worked yesterday, strange that it is running into same issue now. I can confirm from the collections list command that I have 3.10.1. I ended up changing my tasks to install requests modules first, by pinning its version and then installing docker module. |
Did you try community.docker 3.10.2, which also works with requests 2.32.2+? requests 2.32.2 changed the way the part Docker SDK for Python has to patch again, this time making the necessary interface public and documented. community.docker 3.10.2 works with both requests 2.32.0/1 and 2.32.2+, assuming you're not using Docker Swarm modules or docker_compose v1. (requests 2.32.0 and 2.32.1 have been yanked from PyPI BTW.) |
I just tried with 3.10.2, it works. |
It is not. requests 2.32.0 fixes a security problem. community.docker 3.10.2 uses a workaround supported by a new public API of requests (introduced in its 2.32.2 release), so that should keep working for some time (at least it shouldn't break because of this problem). |
I was facing the same issue. |
SUMMARY
Apparently
requests==2.32.0
which was released few hours ago is not compatible with docker.https://github.com/psf/requests/releases/tag/v2.32.0
ISSUE TYPE
COMPONENT NAME
ANSIBLE VERSION
COLLECTION VERSION
CONFIGURATION
OS / ENVIRONMENT
macos aarch64
STEPS TO REPRODUCE
EXPECTED RESULTS
ACTUAL RESULTS
The text was updated successfully, but these errors were encountered: