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

[Console] Block interactive-mode on Windows even with curses #457

Closed
wants to merge 1 commit into from

Conversation

mhertz
Copy link
Contributor

@mhertz mhertz commented Aug 16, 2024

Hangs after initial opening, so still needs looking into.

@mhertz mhertz force-pushed the console-winmsg branch 2 times, most recently from 75cab75 to c703ef6 Compare August 16, 2024 13:24
@mhertz
Copy link
Contributor Author

mhertz commented Aug 18, 2024

Nothing new btw, never worked on windows in interactive mode with windows-curses.

Edit: Python select.select() win32 issue(error 10038), triggered from twisted's selectreactor.py, line 38/100 wrapping said usage(twisted 22.8.0).

@mhertz mhertz changed the title [Console] Block interactive-mode on Windows even with curses, as stil… [Console] Block interactive-mode on Windows even with curses Aug 27, 2024
Hangs after initial opening, so still needs looking into.
@cas-- cas-- closed this in c88f750 Sep 8, 2024
@mhertz mhertz deleted the console-winmsg branch September 10, 2024 17:34
doadin pushed a commit to doadin/deluge that referenced this pull request Sep 21, 2024
Testing with window-curses results in hangs on initial loading with background error:

    File "C:\Users\Docker\Deluge\.venv\lib\site-packages\twisted\internet\selectreactor.py", line 39, in win32select
        r, w, e = select.select(r, w, w, timeout)
    builtins.OSError: [WinError 10038] An operation was attempted on something that is not a socket

This is due to passing a Console class to addReader but this fails since
select on Windows cannot handle non-socket file object unlike Unix which accepts
sockets and file objects.

There is likely a further issue where windows-curses has not implemented
resizeterm so would need to use resize_term instead.

Refs: https://docs.python.org/3/library/select.html#select.select
Refs: https://stackoverflow.com/questions/11731175/python-twisted-addreader-works-in-linux-but-not-windows
Refs: zephyrproject-rtos/windows-curses#40
Refs: https://docs.python.org/3/library/curses.html#curses.resize_term

Closes: deluge-torrent#457
Co-authored-by: Calum Lind <[email protected]>
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

Successfully merging this pull request may close these issues.

1 participant