[Checkins] SVN: zope.location/trunk/ Add support for PyPy.
Tres Seaver
cvs-admin at zope.org
Thu Jun 7 01:32:35 UTC 2012
Log message for revision 126653:
Add support for PyPy.
Changed:
_U zope.location/trunk/
U zope.location/trunk/CHANGES.txt
U zope.location/trunk/setup.py
U zope.location/trunk/src/zope/location/location.py
-=-
Modified: zope.location/trunk/CHANGES.txt
===================================================================
--- zope.location/trunk/CHANGES.txt 2012-06-07 01:32:28 UTC (rev 126652)
+++ zope.location/trunk/CHANGES.txt 2012-06-07 01:32:32 UTC (rev 126653)
@@ -5,6 +5,8 @@
4.0.0 (unreleased)
------------------
+- Added support for PyPy.
+
- Added support for continuous integration using ``tox`` and ``jenkins``.
- 100% unit test coverage.
Modified: zope.location/trunk/setup.py
===================================================================
--- zope.location/trunk/setup.py 2012-06-07 01:32:28 UTC (rev 126652)
+++ zope.location/trunk/setup.py 2012-06-07 01:32:32 UTC (rev 126653)
@@ -46,6 +46,8 @@
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
+ 'Programming Language :: Python :: Implementation :: CPython',
+ 'Programming Language :: Python :: Implementation :: PyPy',
'Natural Language :: English',
'Operating System :: OS Independent',
'Topic :: Internet :: WWW/HTTP',
Modified: zope.location/trunk/src/zope/location/location.py
===================================================================
--- zope.location/trunk/src/zope/location/location.py 2012-06-07 01:32:28 UTC (rev 126652)
+++ zope.location/trunk/src/zope/location/location.py 2012-06-07 01:32:32 UTC (rev 126653)
@@ -91,7 +91,7 @@
This is a non-picklable proxy that can be put around objects that
don't implement `ILocation`.
"""
- __slots__ = '__parent__', '__name__'
+ __slots__ = ('__parent__', '__name__')
__safe_for_unpickling__ = True
__doc__ = ClassAndInstanceDescr(
@@ -107,6 +107,19 @@
self.__parent__ = container
self.__name__ = name
+ def __getattribute__(self, name):
+ if name in LocationProxy.__dict__:
+ return object.__getattribute__(self, name)
+ return super(ProxyBase, self).__getattribute__(name)
+
+ def __setattr__(self, name, value):
+ if name in ('_wrapped', '__parent__', '__name__'):
+ try:
+ return ProxyBase.__setattr__(self, name, value)
+ except AttributeError:
+ return object.__setattr__(self, name, value)
+ setattr(self._wrapped, name, value)
+
@non_overridable
def __reduce__(self, proto=None):
raise TypeError("Not picklable")
More information about the checkins
mailing list