Issue #15230: Update runpy docs to clarify a couple of points that came up in this issue

This commit is contained in:
Nick Coghlan 2012-07-15 00:36:39 +10:00
parent 761bb11374
commit a3d1cac4b2
2 changed files with 14 additions and 0 deletions

View File

@ -14,6 +14,15 @@ importing them first. Its main use is to implement the :option:`-m` command
line switch that allows scripts to be located using the Python module
namespace rather than the filesystem.
Note that this is *not* a sandbox module - all code is executed in the
current process, and any side effects (such as cached imports of other
modules) will remain in place after the functions have returned.
Furthermore, any functions and classes defined by the executed code are not
guaranteed to work correctly after a :mod:`runpy` function has returned.
If that limitation is not acceptable for a given use case, :mod:`importlib`
is likely to be a more suitable choice than this module.
The :mod:`runpy` module provides two functions:
@ -141,3 +150,5 @@ The :mod:`runpy` module provides two functions:
PEP written and implemented by Nick Coghlan.
:ref:`using-on-general` - CPython command line details
The :func:`importlib.import_module` function

View File

@ -384,6 +384,9 @@ Build
Documentation
-------------
- Issue #15230: Clearly document some of the limitations of the runpy
module and nudge readers towards importlib when appropriate.
- Issue #13557: Clarify effect of giving two different namespaces to exec or
execfile().