Changelog
=========

2.2 - (2015-05-01)
------------------

- Add a new ``repoze.filesafe.rename_file`` function to move files.

- Add additional ``recursive`` parameter to allow ``repoze.filesafe.rename_file``
  to use ``os.renames``, i.e. recursively create/remove intermediate directories.


2.1 - (2014-05-06)
------------------

- Fix OSError exceptions raised when deleting a non-existing file to have the
  right errno value.


2.0 - (2013-12-20)
------------------

- Update dummy datamanger to create BytesIO mock files if the file is
  opened in binary mode.

- Update internal function naming to PEP8.


2.0b2 (2013-03-20)
------------------

- Add support for Python 3.2 / 3.3.

- Note explicit support for Python 2.6 / 2.7.

- Drop support for Python < 2.6.

2.0b1 (2011-08-31)
------------------

- Remove the need for a middleware. Instead the current transaction is
  automatically joined if needed.
  [wichert]

- PEP8.
  [wichert]

- Restructure package to faciliate automated testing.
  [wichert]

1.1 (2011-01-13)
----------------

- Added deleteFile function/method.
  [fschulze]

1.0 (2010-06-29)
----------------

- Made DummyDataManager transaction aware.
  [fschulze]

1.0a6 (2009-12-09)
------------------

- Fix packaging error.
  [wichert]

1.0a5 (2009-12-09)
------------------

- Add a MockFile class to help with handling of files when using the
  DummyDataManager.
  [fschulze]


1.0a4 (2009-11-12)
------------------

- Add a new openFile method to facilitate opening of files that have not been
  commited yet.
  [wichert]


1.0a3 (2009-11-10)
------------------

- Add method to facilitate unit testing of code using repoze.filesafe.
  [wichert]

1.0a2 (2009-09-25)
------------------

- Add support for Python 2.4 and 2.5. [wichert]


1.0a1 (2009-09-25)
------------------

- Initial Release
