-
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
Version 0.2.2 or later does not work on Windows #306
Comments
@erw7 what version of python? Does the issue occur with python 3.6? |
This issue occurs in python 3.6.4.
|
I thought using proactor was enough, but apparently not. The hack fallback is to read from stdin in a separate thread like this https://github.com/vxgmichel/aioconsole/blob/master/aioconsole/stream.py#L66 |
Just hit this one today as well. Downgrading to v0.2.1 fixed it for me. Would appreciate continued windows support. Thanks! |
It is being worked on: #307 |
@bfredl Thanks. But, on Windows, add_reader only supports socket handle, so #307 doesn't work.
|
Yes, the latest approach uses a thread, working on it right now... |
I just read my reply from last night and realized I sounded like an ass. I appreciate all the work you've done on NeoVim. Especially the integration of And not that this will likely help at this point, but here's the versions I hit this issue with:
|
@shea-parkes No worries, it is me doing crazy changes without regression testing : P I will look into setup appveyor after fixing this. |
python 3.5 also doesn't work.
|
I reverted the change for now (partially, An alternative might be to have the host connect through |
Although the fundamental problem is not solved, it closes because it came to work with 0.2.4. I tried duplicate the file handle with |
libuv does one more thing: it checks if the pipe was opened in overlapped mode or not. If the pipe is overlapping, it uses IOCP, but otherwise it spawns a reader thread. But the pipe is opened by libuv on the nvim side, maybe it could be kindly asked to open the client pipe end in overlapped mode? |
Found it: the server pipe should be started in "ipc" mode, enables some other capatibilities also but hopefully not dangerous. |
Are you talking about I tried "ipc" mode, but got a lot of errors with functionaltest. If I think about it, it is quite clear. The child process does not use the OVERLAPPED structure to read standard input. After all, it seems that we can only use the reader thread. |
If mean neovim/neovim#8113 yes failures are expected because I enabled it unconditionally to get a binary I can test. If we take this path it should of course only be activated for rpc jobs. |
Updated the version to 0.2.3
:py3 print("hello")
now causes an error similar to neovim/neovim#7326.On Windows it seems that
connect_read_pipe
andconnect_write_pipe
doesn't support stdin/stdout.The text was updated successfully, but these errors were encountered: