You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "alexey (Jira)" <ji...@apache.org> on 2020/11/06 00:37:00 UTC

[jira] [Comment Edited] (PROTON-2286) Container.selectable(EventInjector) in python on Windows causes "OSError: [WinError 10038] An operation was attempted on something that is not a socket", eliminating use of custom events

    [ https://issues.apache.org/jira/browse/PROTON-2286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17227090#comment-17227090 ] 

alexey edited comment on PROTON-2286 at 11/6/20, 12:36 AM:
-----------------------------------------------------------

[~astitcher] Oh. Is it in plans? Would be really helpful!

Asyncio's way demonstrates the solution exists.

Actually, it feels like the codebase is mature and reliable enough and is actively maintained, and with a couple touches here and there on documentation (eg broker features are not intuitive so you have to investigate), tutorials and examples, this Windows issue + integration with native python loop, lowering the entry level to newbies, the project could gain much more popularity, stars on Github etc even with RabbitMQ on the scene!


was (Author: alexorex):
[~astitcher] Oh. Is it in plans? Would be really helpful!

Asyncio's way demonstrates the solution exists.

> Container.selectable(EventInjector) in python on Windows causes "OSError: [WinError 10038] An operation was attempted on something that is not a socket", eliminating use of custom events
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PROTON-2286
>                 URL: https://issues.apache.org/jira/browse/PROTON-2286
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: python-binding
>    Affects Versions: proton-c-0.32.0
>         Environment: Windows 10, python 3.7-3.8
>            Reporter: alexey
>            Priority: Major
>
> First, this hinders examples (db_recv.py and others using EventInjector) from running.
> Second, most important, this doesn't let one have user-defined events in the built-in event loop, which limits its interactivity. Is there another straightforward asynchronous way to send messages on demand?
> Something similar occurred in python asyncio before 3.8, when they made theĀ [{{ProactorEventLoop}}|https://docs.python.org/3/library/asyncio-platforms.html#windows] default on Windows instead of SelectorEventLoop, as select() on windows works only with sockets.
> Also, could someone please integrate proton with python asyncio which is standard convenient way of asynchronous execution in python? Or at least provide an example of using asyncio event loop like with tornado (proton_tornado.py).
> Thank you.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org