Yury Selivanov

Results 403 comments of Yury Selivanov

You should be using `transport.write_eof()`.

Well, there's no API for `SHUT_RD` in libuv, so uvloop can't support it in any way :( Why do you need `SHUT_RD`? It's not a coincidence it's not supported directly...

OK, fair enough. The reason why `transport.get_extra_info('socket')` does not return a real socket object is because manipulating the socket FD without the loop knowing about it can disrupt the operation...

Meanwhile you can try this (untested): ```python tr_sock = transport.get_extra_info('socket') sock = socket.socket(tr_sock.family, tr_sock.type, tr_sock.proto, tr_sock.fileno()) try: sock.shutdown(socket.SHUT_RD) finally: sock.detach() ```

@asvetlov Any ideas what might be going on here? I'm wondering why the behaviour of `aiohttp.Timeout` might be different on vanilla vs uvloop

@dark0ghost would really help if you could give us a single Python file that reproduces the bug along with clear instructions how to run it.

@fantix I see you self-assigned this. Should the fix be prioritized?

Not right now, but doable in principle. We just need to allow users to provide a handler for SIGCHLD while making sure that libuv receives it too.

> vanilla asyncio: the underlying socket is available in transport._sock for consenting coders aware of the risks using "private" members This won't be the case soon, as asyncio adopts the...

> @1st1, have you planned to fix this? Yes. Will take a look in a week or two. If you have time to make a PR I'll review it.