summaryrefslogtreecommitdiff
path: root/docs/differences.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/differences.rst')
-rw-r--r--docs/differences.rst51
1 files changed, 51 insertions, 0 deletions
diff --git a/docs/differences.rst b/docs/differences.rst
new file mode 100644
index 0000000..913e8e7
--- /dev/null
+++ b/docs/differences.rst
@@ -0,0 +1,51 @@
+Differences from ``zope.server``
+--------------------------------
+
+- Has no non-stdlib dependencies.
+
+- No support for non-WSGI servers (no FTP, plain-HTTP, etc); refactorings and
+ slight interface changes as a result. Non-WSGI-supporting code removed.
+
+- Slight cleanup in the way application response headers are handled (no more
+ "accumulated headers").
+
+- Supports the HTTP 1.1 "expect/continue" mechanism (required by WSGI spec).
+
+- Calls "close()" on the app_iter object returned by the WSGI application.
+
+- Supports an explicit ``wsgi.url_scheme`` parameter for ease of deployment
+ behind SSL proxies.
+
+- Different adjustment defaults (less conservative).
+
+- Python 3 compatible.
+
+- More test coverage (unit tests added, functional tests refactored and more
+ added).
+
+- Supports convenience ``waitress.serve`` function (e.g. ``from waitress
+ import serve; serve(app)`` and convenience ``server.serve()`` function.
+
+- Returns a "real" write method from start_response.
+
+- Provides a getsockname method of the server FBO figuring out which port the
+ server is listening on when it's bound to port 0.
+
+- Warns when app_iter bytestream numbytes less than or greater than specified
+ Content-Length.
+
+- Set content-length header if len(app_iter) == 1 and none provided.
+
+- Raise an exception if start_response isnt called before any body write.
+
+- channel.write does not accept non-byte-sequences.
+
+- Put maintenance check on server rather than channel to avoid a class of
+ DOS.
+
+- wsgi.multiprocess set (correctly) to False.
+
+- Ensures header total can not exceed a maximum size.
+
+- Ensures body total can not exceed a maximum size.
+