summaryrefslogtreecommitdiffhomepage
path: root/src/python/nxt_python_asgi_http.c (follow)
AgeCommit message (Collapse)AuthorFilesLines
2021-10-28Moving request limit control to libunit.Max Romanov1-2/+4
Introducting application graceful stop. For now only used when application process reach request limit value. This closes #585 issue on GitHub.
2021-07-20Python: fixing exceptions in Future.set_result for ASGI implementation.Max Romanov1-23/+32
An ASGI application can cancel the Future object returned by the receive() call. In this case, Unit's ASGI implementation should not call set_result() because the Future is already handled. In particular, the Starlette framework was noted to cancel the received Future. This patch adds a done() check for the Future before attempting a set_result(). This is related to #564 issue on GitHub.
2021-07-20Python: fixing ASGI receive() issues.Max Romanov1-33/+54
The receive() call never blocks for a GET request and always returns the same empty body message. The Starlette framework creates a separate task when receive() is called in a loop until an 'http.disconnect' message is received. The 'http.disconnect' message was previously issued after the response header had been sent. However, the correct behavior is to respond with 'http.disconnect' after sending the response is complete. This closes #564 issue on GitHub.
2020-11-18Python: improving ASGI http send message processing.Max Romanov1-12/+13
2020-11-18Libunit: closing active requests on quit.Max Romanov1-1/+51
2020-11-05Python: request processing in multiple threads.Max Romanov1-14/+22
This closes #459 issue on GitHub.
2020-10-01Python: ASGI server introduced.Max Romanov1-0/+591
This closes #461 issue on GitHub.