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


1.2.1 (2017-12-12)
------------------

- `psycopg2.OperationalError` and `psycopg2.InterfaceError` will be caught
  on SQL command execution and reraised as `DatabaseDisconnected`


1.2.0 (2017-10-24)
------------------

- Added a new helper function to link subobject to main doc object. This is
  needed when a custom `__getstate__()` and `__setatate__()` is implemented. A
  detailed example is provided.

- Implemented `flush_hint` argument for `IDataManager.execute()` to allow
  flushing only some objects during query. `flush_hints` is a list table names
  that need to be flushed for the query to return a correct result.

- The Zope-specific containers use the `flush_hint` to only flush objects they
  manage when a query is run on the container.

- While flushing objects, every main document object is now only flushed
  once. Before that fix, any subobject would cause its doc object to be dumped
  again.

Note: These optimizations provide a 15% performance improvements in real-world
applications.


1.1.2 (2017-09-14)
------------------

- Make sure changed objects aren't `_p_changed` anymore after commit.


1.1.1 (2017-07-03)
------------------

- Nothing changed yet.


1.0.0 (2017-03-18)
------------------

- Initial Public Release

- Project forked from mongopersist to work with PostGreSQL and JSONB data
  type. The main motiviation is the ability to utilize PostGreSQL's great
  transactional support.

