0.9.2 (2008-07-30) Close the app_iter at appropriate points to silence lint errors. Return a Bad Request error if we get a socket error while reading input. Fix traceback output to wsgi.errors (it was going to console). Assert that downstream app must call start_response before successfully returning. 0.9.1 (2008-06-18) Seek wsgi.input back to zero before retrying a request due to a conflict error. 0.9 (2008-06-15) Fixed concurrency bug whereby a response from one request might be returned as result of a different request. Initial PyPI release. 0.8 Added WSGI conformance testing for the middleware. 0.7 Made the retryable exception(s) configurable, removing the hardwired dependency on ZODB3. 0.6 Relaxed requirement for ZODB 3.7.2, since we might need to use the package with other verions. 0.5 Depend on PyPI release of ZODB 3.7.2. Upgrade to this by doing bin/easy_install -U 'ZODB3 >= 3.7.2, < 3.8.0a' if necessary. 0.4 Write retry attempts to 'wsgi.errors' stream if availabile. Depend on rerolled ZODB 3.7.1 instead of zopelib. Add license and copyright, change trove classifiers. 0.3 We now buffer the result of a downstream application's 'start_response' call so we can retry requests which have already called start_response without breaking the WSGI spec (the server's start_response may only be called once unless there is an exception, and then it needs to be called with an exc_info three-tuple, although we're uninterested in that case here). 0.2 The entry point name was wrong (it referred to "tm"). Change it so that egg:repoze.retry#retry should work in paste configs. Depend on zopelib rather than ZODB 3.8.0b3 distribution, because the ZODB distribution pulls in various packages (zope.interface and ZEO most notably) that are incompatible with stock Zope 2.10.4 apps and older sandboxes. We'll need to revisit this. 0.1 Initial release