Changes
=======

0.4 (2010-07-14)
----------------

- Add an option to debug broken records.

- Add an option to skip records.

- Add an option to use Python unPickler instead of C one. This let you
  debug records. As well Python unPickler let you update old ExtensionClass
  records who had a special hack in the past.

- Broken interfaces are well supported now (if you did alsoProvides with them).


0.3 (2010-02-02)
----------------

- Unplickle and re-pickle the code to rename references to moved classes.
  This make the script works on database created with older versions of
  ZODB.

- If you are working directly with a FileStorage, POSKeyError are reported
  but non-fatal.

- Remove superfluous code that tried to prevent commits when no changes
  happened: ZODB does this all by itself already.

0.2 (2009-06-23)
----------------

- Add option to store the rename rules into a file.

- Don't commit transactions that have no changes.

- Load rename rules from entry points ``zodbupdate``.

- Compatibility with Python 2.4

- Rename from ``zodbupgrade`` to ``zodbupdate``.

- Add 'verbose' option.

- Improve logging.

- Suppress duplicate log messages (e.g. if the same class is missing in
  multiple objects).

- Improve the updating process: rewrite pickle opcodes instead of blindly
  touching a class. This also allows updating pickles that can't be unpickled
  due to missing classes.

0.1 (2009-06-08)
----------------

- First release.
