From c6c1f478d9236ed92312f55b0421497b4f86a302 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Sat, 19 Jun 2004 01:02:51 +0000 Subject: [PATCH] pydoc.stripid() is now case-insensitive for its regex to support platforms that have pointer addresses in uppercase. Closes bug #934282. Thanks Robin Becker. --- Lib/pydoc.py | 12 ++++++------ Misc/ACKS | 1 + Misc/NEWS | 4 +++- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Lib/pydoc.py b/Lib/pydoc.py index 90bb94cd3e2..ea2d97c9afb 100755 --- a/Lib/pydoc.py +++ b/Lib/pydoc.py @@ -113,16 +113,16 @@ def cram(text, maxlen): return text[:pre] + '...' + text[len(text)-post:] return text +_re_stripid = re.compile(r' at 0x[0-9a-f]{6,}(>+)$', re.IGNORECASE) def stripid(text): """Remove the hexadecimal id from a Python object representation.""" - # The behaviour of %p is implementation-dependent; we check two cases. - for pattern in [' at 0x[0-9a-f]{6,}(>+)$', ' at [0-9A-F]{8,}(>+)$']: - if re.search(pattern, repr(Exception)): - return re.sub(pattern, '\\1', text) + # The behaviour of %p is implementation-dependent in terms of case. + if _re_stripid.search(repr(Exception)): + return _re_stripid.sub(r'\1', text) return text -def _is_some_method(object): - return inspect.ismethod(object) or inspect.ismethoddescriptor(object) +def _is_some_method(obj): + return inspect.ismethod(obj) or inspect.ismethoddescriptor(obj) def allmethods(cl): methods = {} diff --git a/Misc/ACKS b/Misc/ACKS index 480a1ec1eb0..61f857b46ca 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -43,6 +43,7 @@ Samuel L. Bayer Donald Beaudry David Beazley Neal Becker +Robin Becker Bill Bedford Reimer Behrends Thomas Bellman diff --git a/Misc/NEWS b/Misc/NEWS index 3619c47d795..566cb0a35e7 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -336,8 +336,10 @@ Extension modules Library ------- +- Bug #934282: pydoc.stripid() is now case-insensitive. Thanks Robin Becker. + - Bug #823209: cmath.log() now takes an optional base argument so that its - API matches math.log(). + API matches math.log(). - Bug #957381: distutils bdist_rpm no longer fails on recent RPM versions that generate a *-debuginfo.rpm.