Subject: CVS commit: pkgsrc/www/py-waitress
From: Adam Ciarcinski
Date: 2019-07-03 22:36:51
Message id: 20190703203651.47F63FBF4@cvs.NetBSD.org

Log Message:
py-waitress: updated to 1.3.0

1.3.0:

Deprecations

- The send_bytes adjustment now defaults to 1 and is deprecated
  pending removal in a future release.

Features

- Add a new outbuf_high_watermark adjustment which is used to apply
  backpressure on the app_iter to avoid letting it spin faster than data
  can be written to the socket. This stabilizes responses that iterate quickly
  with a lot of data.

- Stop early and close the app_iter when attempting to write to a closed
  socket due to a client disconnect. This should notify a long-lived streaming
  response when a client hangs up.

- Adjust the flush to output SO_SNDBUF bytes instead of whatever was
  set in the send_bytes adjustment. send_bytes now only controls how
  much waitress will buffer internally before flushing to the kernel, whereas
  previously it used to also throttle how much data was sent to the kernel.
  This change enables a streaming app_iter containing small chunks to
  still be flushed efficiently.

Bugfixes

- Upon receiving a request that does not include HTTP/1.0 or HTTP/1.1 we will
  no longer set the version to the string value "None". See

- When a client closes a socket unexpectedly there was potential for memory
  leaks in which data was written to the buffers after they were closed,
  causing them to reopen.

- Fix the queue depth warnings to only show when all threads are busy.

- Trigger the app_iter to close as part of shutdown. This will only be
  noticeable for users of the internal server api. In more typical operations
  the server will die before benefiting from these changes.

- Fix a bug in which a streaming app_iter may never cleanup data that has
  already been sent. This would cause buffers in waitress to grow without
  bounds. These buffers now properly rotate and release their data.

- Fix a bug in which non-seekable subclasses of io.IOBase would trigger
  an exception when passed to the wsgi.file_wrapper callback.

Files:
RevisionActionfile
1.7modifypkgsrc/www/py-waitress/Makefile
1.7modifypkgsrc/www/py-waitress/distinfo