Zope Server (Web and FTP)
Project description
This package contains generic base classes for channel-based servers, the servers themselves and helper objects, such as tasks and requests.
WSGI Support
zope.server’s HTTP server comes with WSGI support. zope.server.http.wsgihttpserver.WSGIHTTPServer can act as a WSGI gateway. There’s also an entry point for PasteDeploy that lets you use zope.server’s WSGI gateway from a configuration file, e.g.:
[server:main] use = egg:zope.server host = 127.0.0.1 port = 8080
CHANGES
5.0 (2024-09-05)
Add support for Python 3.10, 3.11.
Drop support for Python 2.7, 3.5, 3.6.
Add Python 3.8 and 3.9 support.
Drop Python 3.4 support.
Add python_requires to setup.py.
Update PasteDeploy link in README.
Avoid traceback reference cycle in _triggerbase.handle_read.
Close output buffer when closing a DualModeChannel to fix a ResourceWarning. See issue 25.
4.0.2 (2019-07-11)
Fix pipetrigger.close() to close the right file descriptor. (This could’ve been causing EBADF errors in unrelated places!)
Add Python 3.7 support.
4.0.1 (2017-10-31)
Fix Windows compatibility regression introduced in 4.0.0. See issue 9.
4.0.0 (2017-10-30)
Drop Python 2.6 support.
Add Python 3.4, 3.5, and 3.6 support.
Add PyPy support.
Made the HTTPTask not have command or uri values of "None" when the first request line cannot be parsed. Now they are empty strings.
Reimplement buffers.OverflowableBuffer in terms of the standard library’s tempfile.SpooledTemporaryFile. This is much simpler. See issue 5.
Achieve and maintain 100% test coverage.
Remove all the custom logging implementations in zope.server.logging and change the CommonAccessLogger and CommonFTPActivityLogger to only work with Python standard library loggers. The standard library supports all the logging functions this package previously provided. It can be easily configured with ZConfig. See issue 4.
3.9.0 (2013-03-13)
Better adherence to WSGI:
Call close method if present on iterables returned by start_response.
Don’t include non-string values in the CGI environment (CHANNEL_CREATION_TIME).
Always include QUERY_STRING to avoid the cgi module falling back to sys.argv.
Add tests based on paste.lint middleware.
Replaced deprecated zope.interface.implements usage with equivalent zope.interface.implementer decorator.
Dropped support for Python 2.4 and 2.5.
Exceptions that happen in the handler thread main loop are logged so that the unexpected death of a handler thread does not happen in silence.
3.8.6 (2012-01-07)
On startup, HTTPServer prints a clickable URL after the hostname/port.
3.8.5 (2011-09-13)
fixed bug: requests lasting over 15 minutes were sometimes closed prematurely.
3.8.4 (2011-06-07)
Fix syntax error in tests on Python < 2.6.
3.8.3 (2011-05-18)
Made start_response method of WSGI server implementation more compliant with spec:
http://www.python.org/dev/peps/pep-0333/#the-start-response-callable
3.8.2 (2010-12-04)
Corrected license version in zope/server/http/tests/test_wsgiserver.py.
3.8.1 (2010-08-24)
When the result of a WSGI application was received, task.write() was only called once to transmit the data. This prohibited the transmission of partial results. Now the WSGI server iterates through the result itself making multiple task.write() calls, which will cause partial data to be transmitted.
Created a second test case instance for the post-mortem WSGI server, so it is tested as well.
Using python’s doctest module instead of deprecated zope.testing.doctest.
3.8.0 (2010-08-05)
Implemented correct server proxy behavior. The HTTP server would always add a “Server” and “Date” response header to the list of response headers regardless whether one had been set already. The HTTP 1.1 spec specifies that a proxy server must not modify the “Server” and “Date” header but add a “Via” header instead.
3.7.0 (2010-08-01)
Implemented proxy support. Proxy requests contain a full URIs and the request parser used to throw that information away. Using urlparse.urlsplit(), all pieces of the URL are recorded.
The proxy scheme and netloc/hostname are exposed in the WSGI environment as zserver.proxy.scheme and zserver.proxy.host.
Made tests runnable via buildout again.
3.6.2 (2010-06-11)
The log message “Exception during task” is no longer logged to the root logger but to zope.server.taskthreads.
3.6.1 (2009-10-07)
Made tests pass with current zope.publisher which restricts redirects to the current host by default.
3.6.0 (2009-05-27)
Moved some imports from test modules to their setUp to prevent failures when ZEO tests are run by the same testrunner
Removed unused dependency on zope.deprecation.
Remove old zpkg-related DEPENDENCIES.cfg file.
3.5.0 (2008-03-01)
Improve package meta-data.
Fix of 599 error on conflict error in request see: http://mail.zope.org/pipermail/zope-dev/2008-January/030844.html
Removed dependency on ZODB.
3.5.0a2 (2007-06-02)
Made WSGI server really WSGI-compliant by adding variables to the environment that are required by the spec.
3.5.0a1 (2007-06-02)
Added a factory and entry point for PasteDeploy.
3.4.3 (2008-08-18)
Moved some imports from test modules to their setUp to prevent failures when ZEO tests are run by the same testrunner
3.4.2 (2008-02-02)
Fix of 599 error on conflict error in request see: http://mail.zope.org/pipermail/zope-dev/2008-January/030844.html
3.4.1 (2007-06-02)
Made WSGI server really WSGI-compliant by adding variables to the environment that are required by the spec.
3.4.0 (2007-06-02)
Removed an unused import. Unchanged otherwise.
3.4.0a1 (2007-04-22)
Initial release as a separate project, corresponds to zope.server from Zope 3.4.0a1
Made WSGI server really WSGI-compliant by adding variables to the environment that are required by the spec.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file zope.server-5.0.tar.gz
.
File metadata
- Download URL: zope.server-5.0.tar.gz
- Upload date:
- Size: 80.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37fa4a4937a1ca3948a949b123e6006c6942019aa68c6567e32957449611e48f |
|
MD5 | 8b92e5302e8f816d785fef77c448cd4e |
|
BLAKE2b-256 | b069d4e0925c435a267030b2c281f215b2f9fb4f8f191b2d5f025913d396a16e |
File details
Details for the file zope.server-5.0-py3-none-any.whl
.
File metadata
- Download URL: zope.server-5.0-py3-none-any.whl
- Upload date:
- Size: 112.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24895724a011da6582afcac722641c7e644153a616112d1bcc4a9107af164ba7 |
|
MD5 | 1b1393c515b63ff4dcf3d34ac4e1e3c9 |
|
BLAKE2b-256 | e5864569fb8b3a8d328ea8707ed646d8c6d6ee4f8aea4afdb4bf45ed33bd193d |