Closed cacosandon closed 2 months ago
Hey @cacosandon, this looks reasonable to me. Can you add a regression test?
Sorry for the super late reaction @bigfootjon, I've added a regression test! Had to use send_input
and send_output
because WebsocketCommunicator
has some safe checks that hypercorn
is skipping.
(Sorry, @cacosandon : can you fix the lint error? Thanks.)
When using
uvicorn
ordaphne
, only one oftext
orbytes
is sent.But on
hypercorn
, both of them are sent, but withNone
value: https://github.com/pgjones/hypercorn/blob/31639ec2f4d03aa920b95c84686163901224c6cf/src/hypercorn/protocol/ws_stream.py#L159So if you just send
bytes
,text
will beNone
and you won't be able to handle the message.I just add an extra check.