-------------------
**Protocol**
- ``_since`` and ``_before`` now accepts an integer value between quotes ``"``,
as it would be returned in the ``ETag`` response header.
- A batch request now fails if one of the subrequests fails (510)
(*see new feature about transactions*)
**Breaking changes**
- For PostgreSQL backends, it is recommended to specify ``postgresql://``.
**New features**
- A transaction now covers the whole request/response cycle (510, Kinto/kinto194).
If an error occurs during the request processing, every operation performed
is rolled back. **Note:** This is only enabled with *PostgreSQL* backends. In
other words, the rollback has no effect on backends like *Redis* or *Memory*.
- Add the ``protocol_version`` to tell which protocol version is
implemented by the service in the hello page. (324)
- New settings for backends when using PostgreSQL: ``*_pool_maxoverflow``,
``*_pool_recycle``, ``*_pool_timeout`` to control connections pool
behaviour.
- Add custom pool supporting a ``max_backlog`` parameter that limits the
number of threads waiting for a connection (509)
- Add ``impacted_records`` attribute on ``ResourceChanged`` event (501)
This also allows listeners to react on particular field change, since old and
new version of records is provided.
**Bug fixes**
- Fix Service CORS not being set when plugins are included
- Fix crash with Redis backend if record parent/id is unicode (fixes 556)
- Fix principals of permission backend not being plugged by default (573)
- Fix Redis error traces not being logged (560)
- Fix principals of permission backend not being plugged by default. (573)
- Maintain pagination offset to prevent pagination loop in some cases. (366)
**Internal changes**
- Switch to SQLAlchemy for smarter connections pools.
- Added a simple end-to-end test on a *Cliquet* sample application, using
`Loads <http://github.com/loads/>`_. (fixes 512)
- Switched to SQLAlchemy sessions instead of raw connections and cursors. (510)
- Refactor Redis clients instantiation to avoid repeated defaults. (567, 568)
- Initialize Service class attributes before including plugins. (578)
- Add a statsd_count helper function to ease the usage of statsd. (574)
- Mention SQLAlchemy on missing PostgreSQL dependencies. (545)