HISTORY
--------

4.0.1 Added docs directory and upload_docs command (2015/07/24)
4.0.0 Removed the need for 2to3 by dropping the support for Python 2.5.
     Added a MANIFEST.in file and produced a proper wheel. Improved
     the integration with setuptools so that `python setup.py test` works.
     Reworked the documentation and introduced `decorator.decorated`.
     Removed any dependence from `inspect.getargspec`, which is deprecated
     in Python 3.5, as signaled by Ralf Gommers.
     Fixed `contextmanager` to work with Python 3.5.
     Copied the `__qualname__` attribute, as requested by Frazer McLean.
     Added a `dispatch_on` facility to implement generic functions.
     (2015/07/24)
3.4.2 Same as 3.4.1, re-uploaded to PyPI (2015-03-22)
3.4.1 Ported the repository from GoogleCode to GitHub and added Travis CI
     support. Tests are executed with the new command `python test.py -v`.
     setuptools is now mandatory in Python 3. The suggested
     installation tool is now `pip`, not `easy_install`. Supported IronPython
     and other Python implementations without sys._getframe, as requested by
     Doug Blank (2015/03/16)
3.4.0 Added the ability to use classes and generic callables as callers and
     implemented a signature-preserving contexmanager decorator. Fixed a bug
     with the signature f(**kw) in Python 3 and fixed a couple of doctests
     broken by Python 3.3, both issues pointed out by Dominic Sacré (18/10/2012)
3.3.3 Fixed a bug with kwonlyargs for Python 3, submitted by Chris
     Ellison (23/04/2012)
3.3.2 Fixed a bug with __kwdefaults__ for Python 3, submitted by Chris
     Ellison (01/09/2011)
3.3.1 Fixed a doctest broken for Python 3.2, as noted by
     Arfrever Frehtes Taifersar Arahesis; changed the name of
     the attribute ``undecorated`` to ``__wrapped__``, by following the
     Python 3.2 convention, as requested by Ram Rachum; added
     the Python 3 classifier to setup.py (22/04/2011)
3.3. Added support for function annotations (1/1/2011)
3.2.1. Now the .func_globals of the decorated function are the same of
     the undecorated function, as requested by Paul Ollis (28/12/2010)
3.2. Added __version__ (thanks to Gregg Lind), removed functionality which 
     has been deprecated for years, removed the confusing decorator_factory
     example and added official support for Python 3 (requested by Claus Klein).
     Moved the documentation from PyPI to googlecode (22/05/2010)
3.1.2. Added attributes args, varargs, keywords and arg0, ..., argN
     to FunctionMaker objects generated from a function; fixed another
     Pylons-breaking bug signaled by Lawrence Oluyede (25/08/2009)
3.1.1. Fixed a bug which was breaking Pylons, signaled by
     Gabriel de Perthuis, and added a test for it. (18/08/2009)
3.1. Added decorator.factory, an easy way to define families of decorators
     (requested by various users, including David Laban). Refactored the
     FunctionMaker class and added an easier to use .create classmethod.
     Internally, functools.partial is used for Python >= 2.5 (16/08/2009)
3.0.1. Improved the error message in case a bound/unbound method is passed
     instead of a function and documented this case; that should make life
     easier for users like Gustavo Nerea (16/02/2009)
3.0. New major version introducing ``FunctionMaker`` and the two-argument
     syntax for ``decorator``. Moreover, added support for getting the
     source code. This version is Python 3.0 ready.
     Major overhaul of the documentation, now hosted on 
     http://packages.python.org/decorator (14/12/2008)
2.3.2. Small optimization in the code for decorator factories. First version
       with the code uploaded to PyPI (01/12/2008)
2.3.1. Set the zipsafe flag to False, since I want my users to have the source,
       not a zipped egg (25/07/2008)
2.3.0. Added support for writing decorator factories with minimal effort
     (feature requested by Matthew Wilson); implemented it by enhancing
     'decorator' to a Python 2.6 class decorator (10/07/2008)
2.2.0. Added a note on 'inspect.getsource' not working for decorated
     functions; referenced PEP 326; highlighted the snippets in the 
     documentation with pygments; slightly simplified the code (31/07/2007)
2.1.0. Replaced the utility 'update_wrapper' with 'new_wrapper' and
     updated the documentation accordingly; fixed and improved the 
     doctester argument parsing, signaled by Sam Wyse (3/07/2007)
2.0.1. Included the licence in the source code too; fixed a versioning
     issue by adding the version number to the zip file and fixing
     the link to it on the web page, thanks to Philip Jenvey (17/02/2007)
2.0. Rewritten and simplified the implementation; broken compatibility
     with previous versions (in minor ways); added the utility function
     'update_wrapper' instead of 'newfunc' (13/01/2007)
1.1. 'decorator' instances now have attributes __name__, __doc__,
     __module__ and __dict__ coming from the associated caller function; 
     included the licence into the documentation (02/12/2006)
1.0. Added LICENSE.txt; added a setuptools-friendly setup.py script 
     contributed by Luke Arno (10/08/2006)
0.8.1. Minor fixes to the documentation (21/06/2006)
0.8. Improved the documentation, added the 'caveats' section (16/06/2006)
0.7.1. Improved the tail_recursive example (15/05/2006)
0.7. Renamed 'copyfunc' into 'newfunc' and added the ability to copy
     the signature from a model function;   improved '_decorator' to
     set the '__module__' attribute too, with the intent of improving 
     error messages; updated the documentation (10/05/2006)
0.6. Changed decorator.__call__ so that the module somewhat works
     even for Python 2.3 (but the signature-preserving feature is
     lost) (20/12/2005)
0.5.2. Minor changes to the documentation; improved 'getattr_' and
       shortened 'locked' (28/06/2005)
0.5.1. Minor corrections to the documentation (20/05/2005)
0.5. Fixed a bug with out-of-the-mind signatures, added a check for reserved
     names in the argument list and simplified the code (thanks to Duncan 
     Booth) (19/05/2005)
0.4.1. Fixed a typo in the documentation (thanks to Anthon van der Neut)
     (17/05/2005)
0.4. Added getinfo, some tests and improved the documentation (12/05/2005)
0.3. Simplified copyfunc, renamed deferred to delayed and added the 
     nonblocking example (10/05/2005)
0.2. Added copyfunc, improved the multithreading examples, improved
     the doctester program (09/05/2005)
0.1.1. Added the license specification and two docstrings (06/05/2005)
0.1. Initial release  (04/05/2005)
