-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Cannot use docker with eventlet since #2865 #3131
Comments
tito
added a commit
to tito/docker-py
that referenced
this issue
May 16, 2023
…form check The implementation done in docker#2865 is breaking usage of docker-py library within eventlet. As per the Python `select.poll` documentation (https://docs.python.org/3/library/select.html#select.poll) and eventlet select removal advice (eventlet/eventlet#608 (comment)), it is preferable to use an implementation based on the availability of the `poll()` method that trying to check if the platform is `win32`. Fixes docker#3131 Signed-off-by: Mathieu Virbel <mat@meltingrocks.com>
milas
pushed a commit
that referenced
this issue
Jun 1, 2023
Check if poll attribute exists on select module instead of win32 platform check The implementation done in #2865 is breaking usage of docker-py library within eventlet. As per the Python `select.poll` documentation (https://docs.python.org/3/library/select.html#select.poll) and eventlet select removal advice (eventlet/eventlet#608 (comment)), it is preferable to use an implementation based on the availability of the `poll()` method that trying to check if the platform is `win32`. Fixes #3131 Signed-off-by: Mathieu Virbel <mat@meltingrocks.com>
felixfontein
added a commit
to felixfontein/community.docker
that referenced
this issue
Oct 7, 2023
Check if poll attribute exists on select module instead of win32 platform check The implementation done in #2865 is breaking usage of docker-py library within eventlet. As per the Python `select.poll` documentation (https://docs.python.org/3/library/select.html#select.poll) and eventlet select removal advice (eventlet/eventlet#608 (comment)), it is preferable to use an implementation based on the availability of the `poll()` method that trying to check if the platform is `win32`. Fixes docker/docker-py#3131 Cherry-picked from docker/docker-py@78439eb Co-authored-by: Mathieu Virbel <mat@meltingrocks.com>
felixfontein
added a commit
to ansible-collections/community.docker
that referenced
this issue
Oct 8, 2023
* vendored Docker SDK for Python code: volume: added support for bind propagation https://docs.docker.com/storage/bind-mounts/#configure-bind-propagation Cherry-picked from docker/docker-py@bea6322 Co-authored-by: Janne Jakob Fleischer <janne.fleischer@ils-forschung.de> Co-authored-by: Milas Bowman <milas.bowman@docker.com> * vendored Docker SDK for Python code: fix: eventlet compatibility Check if poll attribute exists on select module instead of win32 platform check The implementation done in #2865 is breaking usage of docker-py library within eventlet. As per the Python `select.poll` documentation (https://docs.python.org/3/library/select.html#select.poll) and eventlet select removal advice (eventlet/eventlet#608 (comment)), it is preferable to use an implementation based on the availability of the `poll()` method that trying to check if the platform is `win32`. Fixes docker/docker-py#3131 Cherry-picked from docker/docker-py@78439eb Co-authored-by: Mathieu Virbel <mat@meltingrocks.com> * vendored Docker SDK for Python code: fix: use response.text to get string rather than bytes Adjusted from docker/docker-py@0618951 Co-authored-by: Mehmet Nuri Deveci <5735811+mndeveci@users.noreply.github.com> Co-authored-by: Milas Bowman <milas.bowman@docker.com> * vendored Docker SDK for Python code: Fix missing asserts or assignments Cherry-picked from docker/docker-py@0566f12 Co-authored-by: Aarni Koskela <akx@iki.fi> --------- Co-authored-by: Janne Jakob Fleischer <janne.fleischer@ils-forschung.de> Co-authored-by: Milas Bowman <milas.bowman@docker.com> Co-authored-by: Mathieu Virbel <mat@meltingrocks.com> Co-authored-by: Mehmet Nuri Deveci <5735811+mndeveci@users.noreply.github.com> Co-authored-by: Aarni Koskela <akx@iki.fi>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Before #2865, it was possible to use docker-py with a eventlet-based project.
However, after the inclusion of a tests for using poll(), i now have errors, see below.
This is expected: eventlet removes poll function on the select module on purpose. See eventlet/eventlet#608 (comment)
So instead of checking if the platform is win32, we should check if the select module have a poll method. Which also make it more cross-platform compatible as per select.poll documentation (https://docs.python.org/3/library/select.html#select.poll - Not supported by all operating systems, but not mentionning win32 exactly.)
The text was updated successfully, but these errors were encountered: