Apptools CHANGELOG
==================

Version 5.1.0
~~~~~~~~~~~~~

Released : 2021-01-13

This is a minor release in which the modules in the apptools.undo subpackage are
modified to import from pyface.undo rather than redefining the classes.  This
should help ease the transition to using pyface.undo in place of the now
deprecated apptool.undo.

Deprecations
------------
* Import from pyface.undo.* instead of redefining classes in apptools.undo.* (#272)

Documentation changes
---------------------
* Add module docstrings to the various api modules in apptools subpackages (#274)

Version 5.0.0
~~~~~~~~~~~~~

Released : 2020-12-17

This is a major release mainly relating to code modernization. In this release,
support for Python versions < 3.6 have been dropped. Numerous dated
sub-packages and code fragments have been removed. Additionally, there were
various fixes and documentation updates.

Fixes
-----
* Fix SyntaxWarning in persistence.file_path (#116)
* Fix container items change event being saved in preferences (#196)
* Fix synchronizing preference trait with name *_items (#226)

Deprecations
------------
* Deprecate apptools.undo subpackage (undo was moved to pyface) (#250)

Removals
--------
* Remove ``appscripting`` subpackage (#172)
* Remove ``template`` subpackage (#173)
* Remove ``permission`` subpackage (#175)
* Remove ``lru_cache`` subpackage (#184)
* Remove support for Python 2.7 and 3.5 (#190)
* Remove the ``apptools.sweet_pickle`` subpackage.  Note that users of
  sweet_pickle can in some cases transition to using ``apptools.persistence``
  and pickle from the python standard library (see changes made in this PR to
  ``apptools.naming`` for more info) (#199)
* Remove ``help`` subpackage (#215)
* Remove NullHandler from ``apptools.logger`` (#216)
* Remove ``apptools.logger.filtering_handler`` and ``apptools.logger.util`` submodules (#217)
* Remove deprecated create_log_file_handler function (#218)
* Remove use of ``apptools.type_manager`` from ``apptools.naming``. Then,
  remove ``apptools.type_manager`` entirely.  Finally, remove
  ``apptools.naming.adapter``. (#219)
* Remove ``apptools.persistence.spickle`` submodule (#220)
* Remove ``apptools.naming.ui`` sub package (#233)

Documentation changes
---------------------
* Update documentation for Preferences (#198)
* Add a brief section to documentation for ``apptools.naming`` (#221)
* Document the ``apptools.io`` and ``apptools.io.h5`` sub packages (#237)
* Fix a few broken links in the documentation (#248)

Test suite
----------
* Fix AttributeError on Python 3.9 due to usage of ``base64.decodestring`` in tests (#210)
* Make optional dependencies optional for tests (#260)

Build System
------------
* Add extras_require to setup.py for optional dependencies (#257)

Version 4.5.0
~~~~~~~~~~~~~

Released : 10 October 2019

* Add missing `long_description_content_type` field in setup. (#108)
* Remove use of `2to3`. (#90)
* Use etstool for CI tasks. Setup travis macos and appveyor CI. (#92)
* Temporarily change cwd when running tests. (#104)
* Update broken imports. (#95)
* Add `six` to requirements. (#101)
* Remove one more use of the deprecated `set` method. (#103)
* Use `trait_set` instead of the now deprecated `set` method. (#82)
* Address one more numpy deprecation warning. (#100)
* Address numpy deprecation warnings. (#83)
* Test the package on Python 3.5, 3.6 on CI. (#78)
* Fix mismatched pyface and traitsui requirements. (#73)
* Drop support for Python 2.6. (#63)
* Fix `state_pickler.dump` on Python 2. (#61)
* Fix a few spelling mistakes in documentation. (#87)

Version 4.4.0
~~~~~~~~~~~~~

* Apptools now works with Python-3.x. (#54)
* Travis-ci support with testing on Python 2.6, 2.7 and 3.4. (#55)


Change summary since 4.2.1
~~~~~~~~~~~~~~~~~~~~~~~~~~

Enhancements

* Apptools now have a changelog!
* Preferences system defaults to utf-8 encoded string with ConfigObj providing
  better support for unicode in the PreferenceHelper (#41, #45).
* Added a traitsified backport of Python 3's lru_cache (#39).
* Added PyTables support to the io submodule (#19, #20, and #24 through #34).
* Added a SelectionService for managing selections within an application (#15, #16, #17,
  #23).
