Commit 580019f1 authored by Ned Deily's avatar Ned Deily

Issue #7425: Prevent pydoc -k failures due to module import errors.

(Backport to 2.7 of existing 3.x fix)
parent 6aeac69f
...@@ -52,7 +52,7 @@ Richard Chamberlain, for the first implementation of textdoc. ...@@ -52,7 +52,7 @@ Richard Chamberlain, for the first implementation of textdoc.
# the current directory is changed with os.chdir(), an incorrect # the current directory is changed with os.chdir(), an incorrect
# path will be displayed. # path will be displayed.
import sys, imp, os, re, types, inspect, __builtin__, pkgutil import sys, imp, os, re, types, inspect, __builtin__, pkgutil, warnings
from repr import Repr from repr import Repr
from string import expandtabs, find, join, lower, split, strip, rfind, rstrip from string import expandtabs, find, join, lower, split, strip, rfind, rstrip
from traceback import extract_tb from traceback import extract_tb
...@@ -1968,10 +1968,11 @@ def apropos(key): ...@@ -1968,10 +1968,11 @@ def apropos(key):
if modname[-9:] == '.__init__': if modname[-9:] == '.__init__':
modname = modname[:-9] + ' (package)' modname = modname[:-9] + ' (package)'
print modname, desc and '- ' + desc print modname, desc and '- ' + desc
try: import warnings def onerror(modname):
except ImportError: pass pass
else: warnings.filterwarnings('ignore') # ignore problems during import with warnings.catch_warnings():
ModuleScanner().run(callback, key) warnings.filterwarnings('ignore') # ignore problems during import
ModuleScanner().run(callback, key, onerror=onerror)
# --------------------------------------------------- web browser interface # --------------------------------------------------- web browser interface
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment