[Zope3-checkins] CVS: Zope3/src/ZODB - Connection.py:1.143
Tim Peters
tim.one at comcast.net
Tue Apr 6 16:21:56 EDT 2004
Update of /cvs-repository/Zope3/src/ZODB
In directory cvs.zope.org:/tmp/cvs-serv30747/src/ZODB
Modified Files:
Connection.py
Log Message:
As part of int/long unification, Python 2.4 will start printing
negative ints *as* negative ints when fed into %x formats. Python 2.3
still renders them as positive ints, but spews
FutureWarning: %u/%o/%x/%X of negative int will return a signed string
in Python 2.4 and up
to warn about the impending change. Jim reported two instances of that
warning when running the tests on a box where addresses happen to "be
negative". So make the addresses look positive instead (2.3 and 2.4
treat those the same, so 2.3 doesn't warn about those).
Problem: it occurs to me now that I'm assuming addresses fit in 32
bits here.
=== Zope3/src/ZODB/Connection.py 1.142 => 1.143 ===
--- Zope3/src/ZODB/Connection.py:1.142 Fri Apr 2 12:47:57 2004
+++ Zope3/src/ZODB/Connection.py Tue Apr 6 16:21:55 2004
@@ -223,7 +223,9 @@
ver = ' (in version %s)' % `self._version`
else:
ver = ''
- return '<Connection at %08x%s>' % (id(self), ver)
+ # Force the address to look positive. A negative address will
+ # show up as signed in Python 2.4, and in 2.3 raises FutureWarning.
+ return '<Connection at %08x%s>' % (id(self) & 0xffffffffL, ver)
def get(self, oid):
"""Return the persistent object with oid 'oid'.
More information about the Zope3-Checkins
mailing list