mirror of
https://github.com/python/cpython.git
synced 2025-09-26 18:29:57 +00:00
Updated the warnings, linecache, inspect, traceback, site, and doctest modules
to work correctly with modules imported from zipfiles or via other PEP 302 __loader__ objects. Tests and doc updates are included.
This commit is contained in:
parent
7731dfdaad
commit
4703211080
10 changed files with 159 additions and 30 deletions
|
@ -15,7 +15,7 @@ the formatted traceback.
|
|||
|
||||
The \module{linecache} module defines the following functions:
|
||||
|
||||
\begin{funcdesc}{getline}{filename, lineno}
|
||||
\begin{funcdesc}{getline}{filename, lineno\optional{, module_globals}}
|
||||
Get line \var{lineno} from file named \var{filename}. This function
|
||||
will never throw an exception --- it will return \code{''} on errors
|
||||
(the terminating newline character will be included for lines that are
|
||||
|
@ -23,7 +23,11 @@ found).
|
|||
|
||||
If a file named \var{filename} is not found, the function will look
|
||||
for it in the module\indexiii{module}{search}{path} search path,
|
||||
\code{sys.path}.
|
||||
\code{sys.path}, after first checking for a PEP 302 \code{__loader__}
|
||||
in \var{module_globals}, in case the module was imported from a zipfile
|
||||
or other non-filesystem import source.
|
||||
|
||||
\versionadded[The \var{module_globals} parameter was added]{2.5}
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{clearcache}{}
|
||||
|
|
|
@ -169,7 +169,8 @@ the latter would defeat the purpose of the warning message).
|
|||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{warn_explicit}{message, category, filename,
|
||||
lineno\optional{, module\optional{, registry}}}
|
||||
lineno\optional{, module\optional{, registry\optional{,
|
||||
module_globals}}}}
|
||||
This is a low-level interface to the functionality of
|
||||
\function{warn()}, passing in explicitly the message, category,
|
||||
filename and line number, and optionally the module name and the
|
||||
|
@ -179,6 +180,11 @@ stripped; if no registry is passed, the warning is never suppressed.
|
|||
\var{message} must be a string and \var{category} a subclass of
|
||||
\exception{Warning} or \var{message} may be a \exception{Warning} instance,
|
||||
in which case \var{category} will be ignored.
|
||||
|
||||
\var{module_globals}, if supplied, should be the global namespace in use
|
||||
by the code for which the warning is issued. (This argument is used to
|
||||
support displaying source for modules found in zipfiles or other
|
||||
non-filesystem import sources, and was added in Python 2.5.)
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{showwarning}{message, category, filename,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue