| 2.1.0 |
| ----- |
| |
| Python Version Support |
| ~~~~~~~~~~~~~~~~~~~~~~ |
| |
| - Python 3.6 is no longer supported by Waitress |
| |
| - Python 3.10 is fully supported by Waitress |
| |
| Bugfix |
| ~~~~~~ |
| |
| - ``wsgi.file_wrapper`` now sets the ``seekable``, ``seek``, and ``tell`` |
| attributes from the underlying file if the underlying file is seekable. This |
| allows WSGI middleware to implement things like range requests for example |
| |
| See https://github.com/Pylons/waitress/issues/359 and |
| https://github.com/Pylons/waitress/pull/363 |
| |
| - In Python 3 ``OSError`` is no longer subscriptable, this caused failures on |
| Windows attempting to loop to find an socket that would work for use in the |
| trigger. |
| |
| See https://github.com/Pylons/waitress/pull/361 |
| |
| - Fixed an issue whereby ``BytesIO`` objects were not properly closed, and |
| thereby would not get cleaned up until garbage collection would get around to |
| it. |
| |
| This led to potential for random memory spikes/memory issues, see |
| https://github.com/Pylons/waitress/pull/358 and |
| https://github.com/Pylons/waitress/issues/357 . |
| |
| With thanks to Florian Schulze for testing/vaidating this fix! |
| |
| Features |
| ~~~~~~~~ |
| |
| - When the WSGI app starts sending data to the output buffer, we now attempt to |
| send data directly to the socket. This avoids needing to wake up the main |
| thread to start sending data. Allowing faster transmission of the first byte. |
| See https://github.com/Pylons/waitress/pull/364 |
| |
| With thanks to Michael Merickel for being a great rubber ducky! |
| |
| - Add REQUEST_URI to the WSGI environment. |
| |
| REQUEST_URI is similar to ``request_uri`` in nginx. It is a string that |
| contains the request path before separating the query string and |
| decoding ``%``-escaped characters. |