=======
CHANGES
=======

3.8.0 (2010-04-14)
------------------

- zope.app.wsgi.testlayer is now a lot more compatible with 
  the HTTPCaller() functionality in zope.app.testing, which it can
  replace:

  - same transaction behavior - pending transactions are committed
    before request and synchronized afterwards.

  - support for browser.handleErrors (for zope.testbrowser).

  - support for clear-text (non-base64) Basic authentication headers,
    which are easier to read in the tests (though not correct in
    actual HTTP traffic).

3.7.0 (2010-04-13)
------------------

- Rewrite tests in order not to dependent on zope.app.testing and
  zope.app.zcmlfiles.

- zope.app.wsgi.testlayer introduces new testing functionality that
  can replace the old functionality in zope.app.testing. In addition,
  it supports using zope.testbrowser with WSGI directly (instead of
  relying on zope.app.testing, which pulls in a lot of dependencies).

  The interesting parts are:

  * zope.app.wsgi.testlayer.BrowserLayer: this sets up a minimal layer that
    allows you to use the new WSGI-enabled Browser.

  * zope.app.wsgi.testlayer.Browser: this is a subclass of Browser from 
    zope.testbrowser.browser. Use it instead of zope.testbrowser.browser
    directly to use the test browser with WSGI. You need to use BrowserLayer
    with your tests for this to work.

  * zope.app.wsgi.testlayer.http: this is the equivalent to the http()
    function in zope.app.testing. It allows low-level HTTP access
    through WSGI. You need to use BrowserLayer with your tests for
    this to work.

3.6.1 (2010-01-29)
------------------

- Support product configuration sections in Zope configuration files.


3.6.0 (2009-06-20)
------------------

- Import database events directly from ``zope.processlifetime``
  instead of using BBB imports in ``zope.app.appsetup``.

3.5.2 (2009-04-03)
------------------

- The ``WSGIPublisherApplication`` uses now the ``ILoggingInfo`` concept given
  from zope.publisher.interfaces.logginginfo for log user infos usable for
  access logs. This allows you to implement your own access log user info
  message. See zope.publisher.interfaces.logginginfo.ILoggingInfo for more
  information.

3.5.1 (2009-03-31)
------------------

- The ``WSGIPublisherApplication`` call now provides a user name
  in the environment meant for use in logs.

3.5.0 (2009-02-10)
------------------

- Make devmode warning message more generic. We don't nesessary have the
  `etc/zope.conf` file nowadays when using buildout-based setups.

- Add an application factory for Paste. So Zope application can now be
  easily deployed with Paste .ini configuration like this::

    [app:main]
    use = egg:zope.app.wsgi
    config_file = %(here)s/zope.conf
    handle_errors = false

  The config_file is a required argument, however the handle_errors
  defaults to True if not specified. Setting it to False allows you to
  make WSGIPublisherApplication not handle exceptions itself but
  propagate them to an upper middleware, like WebError or something.

- The ``WSGIPublisherApplication`` constructor and ``getWSGIApplication``
  function now accept optional ``handle_errors`` argument, described
  above.

- Change mailing list address to zope-dev at zope.org instead of retired
  one.

3.4.1 (2008-07-30)
------------------

- Added Trove classifiers.

- Notify WSGIPublisherApplicationCreated event when WSGI application is
  created.

- Fixed deprecation warning in ftesting.zcml: ZopeSecurityPolicy moved to
  zope.securitypolicy.

3.4.0 (2007-09-14)
------------------

- Fixed the tests to run on Python 2.5 as well as Python 2.4.

- Split ``getApplication`` into ``config`` and ``getApplication`` so
  that ``config`` could be reused, for example for debugging.

3.4.0a1 (2007-04-22)
--------------------

Initial release as a separate project, corresponds to zope.app.wsgi
from Zope 3.4.0a1
