<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/waitress.git/src, branch master</title>
<subtitle>github.com: Pylons/waitress.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/'/>
<entry>
<title>Flush data from the application thread</title>
<updated>2022-01-18T00:53:50+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2022-01-18T00:53:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=1bbdf6cd985028db64b0287c4b6748e94e54cc40'/>
<id>1bbdf6cd985028db64b0287c4b6748e94e54cc40</id>
<content type='text'>
To speed up how soon the connected client sees data we now attempt to
flush data from the application thread when we get new data to write to
the socket.

This saves us the need to wake up the main thread, which would then
return from select(), process all sockets, look for the ones that are
writable, and then call select() again. When that select() would return
it would finally start writing data to the remote socket.

There was also no gaurantee that the main thread would get the lock for
the output buffers, and it would not be able to write any data at all
thereby looping on select() until the application thread had written
enough data to the buffers for it to hit the high water mark, or the
response was fully buffered, potentially overflowing from memory buffers
to disk.

If the socket is  not ready for data, due it being non-blocking, we will
not flush any data at all, and will go notify/wake up the main thread to
start sending the data when the socket is ready.

Delivery of first byte from the WSGI application to the remote client is
now faster, and it may alleviate buffer pressure. Especially if the
remote client is connected over localhost, as is the case with a load
balancer in front of waitress.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To speed up how soon the connected client sees data we now attempt to
flush data from the application thread when we get new data to write to
the socket.

This saves us the need to wake up the main thread, which would then
return from select(), process all sockets, look for the ones that are
writable, and then call select() again. When that select() would return
it would finally start writing data to the remote socket.

There was also no gaurantee that the main thread would get the lock for
the output buffers, and it would not be able to write any data at all
thereby looping on select() until the application thread had written
enough data to the buffers for it to hit the high water mark, or the
response was fully buffered, potentially overflowing from memory buffers
to disk.

If the socket is  not ready for data, due it being non-blocking, we will
not flush any data at all, and will go notify/wake up the main thread to
start sending the data when the socket is ready.

Delivery of first byte from the WSGI application to the remote client is
now faster, and it may alleviate buffer pressure. Especially if the
remote client is connected over localhost, as is the case with a load
balancer in front of waitress.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for seekable wsgi.file_wrapper</title>
<updated>2022-01-17T23:25:24+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2022-01-17T23:19:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=8423ffac8f2f32ed501d225f9f4f6893511212a7'/>
<id>8423ffac8f2f32ed501d225f9f4f6893511212a7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Bugfix on Windows: OSError is not subscriptable</title>
<updated>2022-01-17T21:25:51+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2022-01-17T07:01:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=451b7e980ef00a10e8adfcd43273ceb7db971543'/>
<id>451b7e980ef00a10e8adfcd43273ceb7db971543</id>
<content type='text'>
When Waitress fails to launch on Windows due to an issue with the
trigger socket not being ready for connections, we attempt to loop. In
the past this was done by subscripting the OSError and checking to see
if it matched errno.WSAEADDRINUSE, this is no longer possible in newer
verisons of Python.

This is a quick bugfix for a rare case which should no longer happen on
Windows.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When Waitress fails to launch on Windows due to an issue with the
trigger socket not being ready for connections, we attempt to loop. In
the past this was done by subscripting the OSError and checking to see
if it matched errno.WSAEADDRINUSE, this is no longer possible in newer
verisons of Python.

This is a quick bugfix for a rare case which should no longer happen on
Windows.
</pre>
</div>
</content>
</entry>
<entry>
<title>black: Fix whitespace</title>
<updated>2022-01-17T04:59:45+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2022-01-17T04:57:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=b59facd51eef152646ddc3f6a25acea924c14f3c'/>
<id>b59facd51eef152646ddc3f6a25acea924c14f3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Close old buffer when overflowing in OverflowableBuffer</title>
<updated>2022-01-17T04:58:14+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2021-12-27T08:48:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=17ae760ad7359725b572439747c0efcc5cb0abc0'/>
<id>17ae760ad7359725b572439747c0efcc5cb0abc0</id>
<content type='text'>
When switching from a BytesIO to a file backed buffer, we were not
closing the old buffer after we had copied its contents. With this
change when we switch from a small buffer to a larger buffer or
vice-versa we will now attempt to close the old buffer.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When switching from a BytesIO to a file backed buffer, we were not
closing the old buffer after we had copied its contents. With this
change when we switch from a small buffer to a larger buffer or
vice-versa we will now attempt to close the old buffer.
</pre>
</div>
</content>
</entry>
<entry>
<title>runner: Fix alignment of --url-prefix</title>
<updated>2021-09-08T21:12:13+00:00</updated>
<author>
<name>Felipe Franciosi</name>
<email>felipe@nutanix.com</email>
</author>
<published>2021-09-08T21:12:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=439ec78ad7f15d3bf9531e210c0e06f827629bae'/>
<id>439ec78ad7f15d3bf9531e210c0e06f827629bae</id>
<content type='text'>
The help message contained a misaligned option. This fixes it.

Signed-off-by: Felipe Franciosi &lt;felipe@nutanix.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The help message contained a misaligned option. This fixes it.

Signed-off-by: Felipe Franciosi &lt;felipe@nutanix.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>black</title>
<updated>2021-05-11T15:23:04+00:00</updated>
<author>
<name>Shane Hathaway</name>
<email>shane@willowrise.com</email>
</author>
<published>2021-05-11T15:23:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=c68c9041eb1c443441c3afd645bdf0db7794ab0f'/>
<id>c68c9041eb1c443441c3afd645bdf0db7794ab0f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add REMOTE_URI to the WSGI environ.</title>
<updated>2021-05-11T14:42:05+00:00</updated>
<author>
<name>Shane Hathaway</name>
<email>shane@willowrise.com</email>
</author>
<published>2021-05-11T14:42:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=22120803fed3bffc61c85c1b1acef8c2d68e620e'/>
<id>22120803fed3bffc61c85c1b1acef8c2d68e620e</id>
<content type='text'>
CHANGES.txt entry included.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CHANGES.txt entry included.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix a crash in the MultiSocketServer startup and re-enable startup messages</title>
<updated>2020-11-29T21:06:33+00:00</updated>
<author>
<name>Michael Merickel</name>
<email>michael@merickel.org</email>
</author>
<published>2020-11-29T21:06:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=e5d443750e30b7ea61bd183d5270820bc4e9a81a'/>
<id>e5d443750e30b7ea61bd183d5270820bc4e9a81a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove attempt to resolve IP address to server_name</title>
<updated>2020-11-27T05:42:44+00:00</updated>
<author>
<name>Bert JW Regeer</name>
<email>bertjw@regeer.org</email>
</author>
<published>2020-11-27T05:42:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/waitress.git/commit/?id=2f2972e8349d19cc36472e54fc9969b431ef1413'/>
<id>2f2972e8349d19cc36472e54fc9969b431ef1413</id>
<content type='text'>
Instead we just rely on the server_name passed in to the adjustment.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead we just rely on the server_name passed in to the adjustment.
</pre>
</div>
</content>
</entry>
</feed>
