From cecccbdaeeb1a5b3428351a38011f6bc6bca36b5 Mon Sep 17 00:00:00 2001 From: Graham Dumpleton Date: Tue, 24 Sep 2013 20:48:06 +1000 Subject: [PATCH] Increment documentation version to 1.1.3 and add changes file notes for relase. --- docs/changes.rst | 36 ++++++++++++++++++++++++++++++++++-- docs/conf.py | 2 +- 2 files changed, 35 insertions(+), 3 deletions(-) diff --git a/docs/changes.rst b/docs/changes.rst index 4b5fdb4..22408df 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -1,6 +1,38 @@ Changes ======= +Version 1.1.3 +------------- + +**New Features** + +* Added a _self_parent attribute to FunctionWrapper and bound variants. + For the FunctionWrapper the value will always be None. In the case of the + bound variants of the function wrapper, the attribute will refer back + to the unbound FunctionWrapper instance. This can be used to get a back + reference to the parent to access or cache data against the persistent + function wrapper, the bound wrappers often being transient and only + existing for the single call. + +**Improvements** + +* Use interned strings to optimise name comparisons in the setattro() + method of the C implementation of the object proxy. + +**Bugs Fixed** + +* The pypy interpreter is missing operator.__index__() so proxying of that + method in the object proxy would fail. This is a bug in pypy which is + being addressed. Use operator.index() instead which pypy does provide + and which also exists for CPython. + +* The pure Python implementation allowed the __wrapped__ attribute to be + deleted which could cause problems. Now raise a TypeError exception. + +* The C implementation of the object proxy would crash if an attempt was + made to delete the __wrapped__ attribute from the object proxy. Now raise a + TypeError exception. + Version 1.1.2 ------------- @@ -45,13 +77,13 @@ Version 1.1.0 **Bugs Fixed** -* When deriving from ObjectProxy, and the C extension variant of **wrapt** +* When deriving from ObjectProxy, and the C extension variant was being used, if a derived class overrode __new__() and tried to access attributes of the ObjectProxy created using the base class __new__() before __init__() was called, then an exception would be raised indicating that the 'wrapper has not been initialised'. -* When deriving from ObjectProxy, and the C extension variant of **wrapt** +* When deriving from ObjectProxy, and the C extension variant was being used, if a derived class __init__() attempted to update attributes, even the special '_self_' attributed before calling the base class __init__() methid, then an exception would be raised indicating diff --git a/docs/conf.py b/docs/conf.py index ea0ba5e..9cf5fa4 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -50,7 +50,7 @@ copyright = u'2013, Graham Dumpleton' # The short X.Y version. version = '1.1' # The full version, including alpha/beta/rc tags. -release = '1.1.2' +release = '1.1.3' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages.