Skip to content

Commit

Permalink
bpo-38434: Fixes some audit event documentation (pythonGH-16932)
Browse files Browse the repository at this point in the history
  • Loading branch information
zooba authored Oct 26, 2019
1 parent d898d20 commit 894e30c
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 11 deletions.
2 changes: 0 additions & 2 deletions Doc/c-api/code.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,6 @@ bound into a function.
can bind you to a precise Python version since the definition of the bytecode
changes often.
.. audit-event:: code.__new__ code,filename,name,argcount,posonlyargcount,kwonlyargcount,nlocals,stacksize,flags c.PyCode_New
.. c:function:: PyCodeObject* PyCode_NewWithPosOnlyArgs(int argcount, int posonlyargcount, int kwonlyargcount, int nlocals, int stacksize, int flags, PyObject *code, PyObject *consts, PyObject *names, PyObject *varnames, PyObject *freevars, PyObject *cellvars, PyObject *filename, PyObject *name, int firstlineno, PyObject *lnotab)
Similar to :c:func:`PyCode_New`, but with an extra "posonlyargcount" for positonal-only arguments.
Expand Down
11 changes: 10 additions & 1 deletion Doc/c-api/sys.rst
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,16 @@ accessible to C code. They all work with the current interpreter thread's
See :pep:`578` for a detailed description of auditing. Functions in the
runtime and standard library that raise events include the details in each
function's documentation.
function's documentation and listed in the :ref:`audit events table
<audit-events>`.
.. audit-event:: sys.addaudithook "" c.PySys_AddAuditHook
If the interpreter is initialized, this function raises a auditing event
``sys.addaudithook`` with no arguments. If any existing hooks raise an
exception derived from :class:`Exception`, the new hook will not be
added and the exception is cleared. As a result, callers cannot assume
that their hook has been added unless they control all existing hooks.
.. versionadded:: 3.8
Expand Down
19 changes: 11 additions & 8 deletions Doc/library/sys.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,21 @@ always available.
tuple of arguments. Native hooks added by :c:func:`PySys_AddAuditHook` are
called first, followed by hooks added in the current interpreter.

Calling this function will trigger an event for all existing hooks, and if
any raise an exception derived from :class:`Exception`, the add will be
silently ignored. As a result, callers cannot assume that their hook has been
added unless they control all existing hooks.
.. audit-event:: sys.addaudithook "" sys.addaudithook

Raises a auditing event ``sys.addaudithook`` with no arguments. If any
existing hooks raise an exception derived from :class:`Exception`, the
new hook will not be added and the exception suppressed. As a result,
callers cannot assume that their hook has been added unless they control
all existing hooks.

.. versionadded:: 3.8

.. impl-detail::

When tracing is enabled, Python hooks are only traced if the callable has
a ``__cantrace__`` member that is set to a true value. Otherwise, trace
functions will not see the hook.
When tracing is enabled (see :func:`settrace`), Python hooks are only
traced if the callable has a ``__cantrace__`` member that is set to a
true value. Otherwise, trace functions will skip the hook.


.. data:: argv
Expand Down Expand Up @@ -87,7 +90,7 @@ always available.
native function is preferred when possible.

See the :ref:`audit events table <audit-events>` for all events raised by
``CPython``.
CPython.

.. versionadded:: 3.8

Expand Down
4 changes: 4 additions & 0 deletions Doc/library/types.rst
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,10 @@ Standard names are defined for the following types:

The type for code objects such as returned by :func:`compile`.

.. audit-event:: code.__new__ code,filename,name,argcount,posonlyargcount,kwonlyargcount,nlocals,stacksize,flags CodeType

Note that the audited arguments may not match the names or positions
required by the initializer.

.. data:: CellType

Expand Down
1 change: 1 addition & 0 deletions Doc/reference/simple_stmts.rst
Original file line number Diff line number Diff line change
Expand Up @@ -839,6 +839,7 @@ the :ref:`relativeimports` section.
:func:`importlib.import_module` is provided to support applications that
determine dynamically the modules to be loaded.

.. audit-event:: import module,filename,sys.path,sys.meta_path,sys.path_hooks import

.. _future:

Expand Down

0 comments on commit 894e30c

Please sign in to comment.